nginx的正向代理(nginx正向代理不支持https)

nginx的正向代理(nginx正向代理不支持https)

nginx正向代理架构图:

pc的浏览器上配置代理服务器的ip和端口,就可访问web服务器了。

正向代理,搭建nginx正向代理,代理内网客户机访问外网http://m5.baidu.com/

外网web:             www.baidu.com

内网客户机(win7):      内网: 172.168.1.20   vmnet1

代理服务器(双网卡):  内网: 172.168.1.10   vmnet1     外网: 192.168.171.132  vmnet0(nat)

代理服务上:

[root@localhost network-scripts]# ifconfig

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.171.132  netmask 255.255.255.0  broadcast 192.168.171.255

        inet6 fe80::214f:4670:7654:995f  prefixlen 64  scopeid 0x20<link>

        ether 00:0c:29:0e:af:1a  txqueuelen 1000  (Ethernet)

        RX packets 615  bytes 61853 (60.4 KiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 442  bytes 71135 (69.4 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 172.168.1.10  netmask 255.255.0.0  broadcast 172.168.255.255

        inet6 fe80::50e3:bd37:c622:3ad6  prefixlen 64  scopeid 0x20<link>

        ether 00:0c:29:0e:af:24  txqueuelen 1000  (Ethernet)

        RX packets 133  bytes 16223 (15.8 KiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 24  bytes 2422 (2.3 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]# curl www.baidu.com

能访问外网

安装nginx(略)

主配置文件http模块下添加:/usr/local/nginx/conf/nginx.conf   mkdir /usr/local/nginx/conf/vhost

include vhost/*.conf;        #添加引用一个新的目录下的配置文件

[root@localhost ~]# echo index > /data/wwwroot/www.com/index.html

[root@localhost ~]# cat /usr/local/nginx/conf/vhost/www.1.conf

server {

    listen 80 default_server;

    resolver 119.29.29.29;    #代理服务器帮客户端找域名时候,需要配置外面的根域名dns,能解析域名才行

    location /

    {

        proxy_pass http://$host$request_uri;  #实现代理的关键参数,$host是域名,$request_uri是访问的链接

    }

}

address为DNS服务器的地址,国内通用的DNS 119.29.29.29为dnspod公司提供。 国际通用DNS 8.8.8.8或者8.8.4.4为google提供。

其他可以参考 http://dns.lisect.com/

[root@localhost ~]# /usr/local/nginx/sbin/nginx -s reload

本机作为客户端测试正向代理:

[root@localhost ~]# curl  http://m5.baidu.com/ 

正常访问能访问外网(本身的外网卡访问)

[root@localhost ~]# curl -x127.0.0.1:80 http://m5.baidu.com/ 

                             #或:curl --proxy 127.0.0.1:80  http://m5.baidu.com/

通过本机nginx代理也能访问百度,  将www.baidu.com解析到自己nginx的正向代理,再由代理服务器访问外网

Win7客户机测试正向代理:

win7客户机不配置正向代理时候,在内网不能访问外网:  http://m5.baidu.com/

win7客户端浏览器配置代理服务器(nginx的正向代理机器nginx的ip和端口80)后能访问外网:

点击确定,如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
nginx 可以作为正向代理来处理 HTTPS 请求。正向代理是客户端向代理服务器发送请求,由代理服务器代表客户端向目标服务器发起请求,并将响应返回给客户端。 要配置 nginx 作为正向代理处理 HTTPS 请求,需要进行以下步骤: 1. 在 nginx 配置文件中添加一个新的 server 块,用于处理代理请求。可以通过编辑 `/etc/nginx/nginx.conf` 文件来进行配置。 2. 在该 server 块中,使用 `listen` 指令指定代理服务器的监听端口。例如,可以使用 `listen 80;` 来监听 HTTP 请求,使用 `listen 443 ssl;` 来监听 HTTPS 请求。 3. 使用 `ssl_certificate` 和 `ssl_certificate_key` 指令指定 SSL 证书和私钥的路径。这些证书和私钥用于与客户端建立安全连接。 4. 使用 `proxy_pass` 指令指定目标服务器的地址和端口。例如,可以使用 `proxy_pass https://target-server.com;` 来将请求转发到目标服务器。 5. 可以根据需要配置其他的代理相关指令,如 `proxy_set_header` 设置请求头信息等。 6. 保存并关闭配置文件,然后重新加载 nginx 配置,使其生效。可以使用命令 `sudo service nginx reload` 或 `sudo systemctl reload nginx` 来重新加载配置。 配置完成后,nginx 将会作为正向代理处理来自客户端的 HTTPS 请求,并将其转发到目标服务器。请确保你已经获取了有效的 SSL 证书和私钥,并且配置正确,以确保安全连接的建立和数据的传输。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维实战帮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值