kali 服务篇-nginx 反向代理 学习笔记
正向代理与反向代理
正向代理是一个位于客户端和目标服务器之间的代理服务器(中间服务器)。为了从原始服务器取得内容,客户端向代理服务器发送一个请求,并且指定目标服务器,之后代理向目标服务器转交并且将获得的内容返回给客户端。
反向代理实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
反向代理工作在服务期的前端,作为前端服务器,正向代理工作在客户端的前端,为客户端做代理。
简单理解的话,在日常上网过程中,如果在正向代理场景中,你需要知道欲访问资源的地址,在浏览器输入欲访问资源的地址,然后流量经由代理去访问它。通常情况下,客户端与代理在同一内网环境下,典型的场景是burp suite(后文会讲);如在反向代理场景中,你需要知道的是代理地址,在浏览器输入代理地址,代理会替你请求到欲访问资源。通常情况下,代理与服务端在同一内网环境下,典型的场景是nigix作为代理使用的情况。
反向代理的作用于保证内网的安全,大型网站,通常将反向代理作为公网访问地址,Web服务器是内网。 可以通过反向代理来实现负载均衡,通过反向代理服务器来优化网站的负载。
捕获客户端真实IP
在反向代理服务器上开启X-Forwarded-For
vi /etc/nginx/nginx.conf # 在配置文件中修改如下内容: proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
高可用及负载均衡
高可用:它通常是指,通过设计减少系统不能提供服务的时间。冗余+自动故障转移。系统一直能够提供服务,我们说系统的可用性是100%。 一般而言,商业上的网站其可靠性需要达到至少4个9,也就是99.99&以上。这就意味着,系统的年停机时间为8.76个小时
负载均衡:实现资源使用最大化,最大吞吐量,最小响应时间和避免过载。 将我们的应用服务器部署多台,然后通过负载均衡将用户的请求分发到不同的服务器用来提高网站、应用、数据库或其他服务的性能以及可靠性
安装keepalived
yum -y install keepalived
两台nginx反向代理服务器均安装keepalived服务,keepalived服务可以的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。
学习内容均参考Farmsec:http://book.fsec.io/101-%E5%9F%BA%E7%A1%80%E7%AF%87/101-B-linux%E6%9C%8D%E5%8A%A1/101-B6-nginx%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
2020-05-11 English trip EM3-LP-3B Dating Teacher:GABRIELE