nginx的正向代理

打印 上一主题 下一主题

主题 587|帖子 587|积分 1761

目录
1 正向代理

1.1 使用正向代理的作用

1.2 Nginx正向代理实战

1.2.1 下载对应版本的nginx(源码编译)

1.2.2 下载 https 代理模块

1.2.3 使用https代理模块对源代码修改


1.2.4 源码安装

1.2.5 编写systemd 服务单位

1.2.6 修改nginx的主设置文件

1.2.7 界说子设置文件

1.2.8 在客户端呆板上做测试

1.3 设置客户端指定代理服务器

1.3.1 Linux下

1.3.2 windows下




正向代理
正向代理,架设在客户机与目标主机之间,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。


反向代理
反向代理服务器架设在服务器端,通过缓冲常常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的效果返回给Internet上请求连接的客户端,此期间理服务器与目标主机一起对外体现为一个服务器。


1 正向代理

1.1 使用正向代理的作用

使用正向代理有多种目的和好处,主要包括但不限于以下几点:

  • 访问控制与过滤:组织或公司可以利用正向代理作为访问互联网的唯一出口点,这样可以集中实行访问控制计谋,过滤不得当的内容,大概限制对特定网站的访问,以进步网络安全和员工生产服从。
  • 匿名性:正向代理可以隐藏客户端的真实IP地址,使得请求看起来像是从代理服务器发起的。这对于掩护用户隐私,大概绕过基于IP的地理限制访问内容(如某些网站或服务仅对特定国家开放)非常有效。
  • 缓存与加快:代理服务器可以缓存常常访问的网页或其他网络资源,当后续请求相同内容时,可以直接从缓存中快速提供,无需再次向原始服务器请求,从而加快访问速率,镌汰带宽消耗。
  • 负载均衡与故障转移:固然通常这是反向代理的功能,但正向代理也可以用于在多个后端服务器之间分配请求,以均衡负载,大概在某个服务器不可用时重定向请求至其他可用服务器。
  • 合规性与审计:作为所有出站流量的单一出口点,正向代理可以用于记载和监控网络运动,帮助组织满足法规遵从性和审计需求。
  • 突破网络限制:在存在严格网络限制的环境中(如学校、公司或某些国家),正向代理可以帮助用户访问原本被屏蔽的服务或内容。
  • 节省带宽:通过压缩数据、去除重复内容等机制,正向代理有助于镌汰通过网络传输的数据量,特别是在带宽有限的网络环境中尤为重要。
正向代理通过提供额外的控制层、增强隐私掩护、提升性能和帮忙服从政策要求,为网络管理和用户访问提供了灵活性和便利性。

1.2 Nginx正向代理实战

代理服务器 192.168.239.137/24 
客户端  192.168.239.155/24
nginx正向代理的功能
由于nginx正向代理的功能指令较少,只需要进行简单的设置即可
  1. server {  
  2.     resolver 114.114.114.114;       #指定DNS服务器IP地址  
  3.     listen 8080;  
  4.     location / {  
  5.         proxy_pass http://$http_host$request_uri;     #设定代理服务器的协议和地址  
  6.     }  
  7. }  
复制代码
以上的设置只能访问80 端口的网站,而不能访问https443端口的网站,现在的网站基本上都是https的要解决技能访问http80端口也能访问https443端口的网站,需要置两个SERVER节点,一个处理HTTP转发,另一个处理HTTPS转发,而客户端都通过HTTP来访问代理,通过访问代理不同的端口,来区分HTTP和HTTPS请求。
由于原生 nginx 只支持 http 正向代理,为了 nginx 支持 https 正向代理,可以打 ngx_http_proxy_connect_module 补丁+ ssl 模块支持。

准备环境
确保系统中安装了编译所需的工具和依赖,比方GCC、make、pcre-devel( pere 库 )、zlib-devel、openssl-devel(https)等。可以通过以下命令安装:
  1. yum install gcc make pcre-devel zlib-devel openssl-devel
复制代码


1.2.1 下载对应版本的nginx(源码编译)

(因为需要进行源代码编译)

  1. wget https://nginx.org/download/nginx-1.20.2.tar.gz
  2. tar -zxvf nginx-1.15.12.tar.gz -C /usr/local/src
  3. cd /usr/local/src
  4. [root@web01 src] ls
  5. nginx-1.20.2  
  6. [root@web01 src] cd nginx-1.20.2/
  7. [root@web01 nginx-1.20.2] ll
  8. 总用量 796
  9. drwxr-xr-x. 6 1001 1001   4096 6月  17 11:06 auto
  10. -rw-r--r--. 1 1001 1001 312251 11月 16 2021 CHANGES
  11. -rw-r--r--. 1 1001 1001 476577 11月 16 2021 CHANGES.ru
  12. drwxr-xr-x. 2 1001 1001    168 6月  17 11:06 conf
  13. -rwxr-xr-x. 1 1001 1001   2590 11月 16 2021 configure
  14. drwxr-xr-x. 4 1001 1001     72 6月  17 11:06 contrib
  15. drwxr-xr-x. 2 1001 1001     40 6月  17 11:06 html
  16. -rw-r--r--. 1 1001 1001   1397 11月 16 2021 LICENSE
  17. -rw-r--r--. 1 root root    438 6月  17 11:38 Makefile
  18. drwxr-xr-x. 2 1001 1001     21 6月  17 11:06 man
  19. drwxr-xr-x. 4 root root    187 6月  17 11:39 objs
  20. -rw-r--r--. 1 1001 1001     49 11月 16 2021 README
  21. drwxr-xr-x. 9 1001 1001     91 6月  17 11:06 src
复制代码
扩展
Nginx 的源码目录下通过 make 命令完成编译过程后,会得到一个二进制可实行文件,通常命名为 nginx。这个文件是在 objs 目录下天生的,它是 Nginx 的核心。



1.2.2 下载 https 代理模块

  1. [root@web01 src] yum install git
  2. [root@web01 src] git clone https://github.com/chobits/ngx_http_proxy_connect_module
  3. [root@web01 src] cd nginx-1.20.2
  4. [root@web01 nginx-1.20.2] ls
  5. auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  Makefile  man  ngx_http_proxy_connect_module  objs  README  src
复制代码


  1. [root@web01 src] ll ngx_http_proxy_connect_module/
  2. 总用量 108
  3. -rw-r--r--. 1 root root   441 6月  17 11:05 config
  4. -rw-r--r--. 1 root root  1499 6月  17 11:05 LICENSE
  5. -rw-r--r--. 1 root root 64998 6月  17 11:05 ngx_http_proxy_connect_module.c
  6. drwxr-xr-x. 2 root root  4096 6月  17 11:05 patch
  7. -rw-r--r--. 1 root root 30373 6月  17 11:05 README.md
  8. drwxr-xr-x. 2 root root   184 6月  17 11:05 t
复制代码
当前目录ngx_http_proxy_connect_module下包含了一些文件和子目录,这些内容是与Nginx的ngx_http_proxy_connect_module第三方模块相关的。这个模块用于增强Nginx,使其支持HTTP CONNECT方法,从而能够作为正向代理处理SSL/TLS连接,尤其是对HTTPS流量的代理。
下面是列出的各文件和目录的扼要阐明:


  • config:这是设置文件,用来界说编译该模块时的一些特定设置或宏界说。
  • LICENSE:包含该模块的允许协议信息。
  • ngx_http_proxy_connect_module.c:核心源代码文件,实现了模块的功能。
  • patch:这个子目录内包含了用于将该模块集成到Nginx源代码的补丁文件,
  • README.md:自述文件,通常会包含模块的简介、安装指南、设置示例等重要信息。
  • t:这个子目录大概包含一些测试脚本或示例,用于验证模块功能是否正常工作。
假如打算编译并安装这个模块到Nginx,一样平常流程包括:

  • 阅读README.md:了解详细的安装步骤、依赖关系以及任何特别的设置要求。
  • 应用补丁:根据README.md的引导,选择合适的补丁文件,并应用到Nginx源代码中。
  • 设置Nginx:在Nginx的./configure命令中确保指定了该模块,比方,假如模块的设置文件或阐明中有特定的--add-module参数,需要在设置时参加。
  • 编译并安装Nginx:实行make和make install命令完成编译和安装。
  • 设置Nginx设置文件:在Nginx的设置文件(如nginx.conf)中,根据模块的文档添加相应的设置指令以启用和设置HTTP CONNECT代理功能。
  1. [root@web01 patch] ll /usr/local/src/ngx_http_proxy_connect_module/patch/
  2. 总用量 96
  3. -rw-r--r--. 1 root root 9849 6月  17 11:05 proxy_connect_1014.patch
  4. -rw-r--r--. 1 root root 9697 6月  17 11:05 proxy_connect.patch
  5. -rw-r--r--. 1 root root 9408 6月  17 11:05 proxy_connect_rewrite_1014.patch
  6. -rw-r--r--. 1 root root 9505 6月  17 11:05 proxy_connect_rewrite_101504.patch
  7. -rw-r--r--. 1 root root 9496 6月  17 11:05 proxy_connect_rewrite_1015.patch
  8. -rw-r--r--. 1 root root 9553 6月  17 11:05 proxy_connect_rewrite_1018.patch
  9. -rw-r--r--. 1 root root 9306 6月  17 11:05 proxy_connect_rewrite_102101.patch
  10. -rw-r--r--. 1 root root 9337 6月  17 11:05 proxy_connect_rewrite.patch
复制代码
1.2.3 使用https代理模块对源代码修改

选择增加模块需要打补丁的版本



对 nginx 源码修改,这一步很重要,不然背面的 make 过不去
  1. [root@web01 patch] patch -d /usr/local/src/nginx-1.20.2 -p 1 < /usr/local/src/ngx_http_proxy_connect_module/patch/proxy_connect_rewrite_1018.patch
  2. patching file src/http/ngx_http_core_module.c
  3. patching file src/http/ngx_http_parse.c
  4. patching file src/http/ngx_http_request.c
  5. patching file src/http/ngx_http_request.h
  6. patching file src/http/ngx_http_variables.c
复制代码

1.2.4 源码安装

指定安装的路径和关联的模块而且增加所需的模块
  1. [root@web01 nginx-1.20.2] ./configure --prefix=/usr/local/nginx \
  2. --with-http_stub_status_module \
  3. --with-http_ssl_module \
  4. --with-file-aio --with-http_realip_module \
  5. --add-module=/usr/local/src/ngx_http_proxy_connect_module/
  6. [root@web01 nginx-1.20.2] make
  7. [root@web01 nginx-1.20.2] make install
复制代码
查看安装情况
  1. [root@web01 ~] tree /usr/local/nginx/
  2. /usr/local/nginx/
  3. ├── conf
  4. │   ├── fastcgi.conf
  5. │   ├── fastcgi.conf.default
  6. │   ├── fastcgi_params
  7. │   ├── fastcgi_params.default
  8. │   ├── koi-utf
  9. │   ├── koi-win
  10. │   ├── mime.types
  11. │   ├── mime.types.default
  12. │   ├── nginx.conf       # nginx主配置文件
  13. │   ├── nginx.conf.default
  14. │   ├── scgi_params
  15. │   ├── scgi_params.default
  16. │   ├── uwsgi_params
  17. │   ├── uwsgi_params.default
  18. │   └── win-utf
  19. ├── html
  20. │   ├── 50x.html
  21. │   └── index.html
  22. ├── logs
  23. └── sbin
  24.     └── nginx    #  Nginx 的二进制可执行文件,这是通过源码编译得到的 nginx 可执行程序,可以直接在这个目录下通过 ./nginx 命令启动 Nginx 服务器
复制代码
安装版本信息查看
  1. [root@web01 ~] /usr/local/nginx/sbin/nginx -V
  2. nginx version: nginx/1.20.2
  3. built by gcc 11.4.1 20231218 (Red Hat 11.4.1-3) (GCC)
  4. built with OpenSSL 3.0.7 1 Nov 2022
  5. TLS SNI support enabled
  6. configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module
  7. --with-http_ssl_module --with-file-aio
  8. --with-http_realip_module --add-module=/usr/local/src/ngx_http_proxy_connect_module/
复制代码

1.2.5 编写systemd 服务单位

  1. # 创建Nginx服务单元文件
  2. # 注意:确保你具有足够的权限来编辑系统配置文件
  3. # 使用Vim编辑器打开或创建nginx.service文件
  4. # 该文件位于systemd系统服务文件的目录下
  5. # 通常,这个目录是/usr/lib/systemd/system
  6. [root@web01 ~] vim /usr/lib/systemd/system/nginx.service
  7. # 开始写入Nginx服务单元文件的配置
  8. # [Unit] 部分
  9. [Unit]
  10. # 描述Nginx服务
  11. Description=nginx - high performance web server
  12. # 提供Nginx官方文档的链接
  13. Documentation=http://nginx.org/en/docs/
  14. # 指定Nginx应该在network.target和remote-fs.target之后启动
  15. After=network.target remote-fs.target nss-lookup.target
  16. # [Service] 部分
  17. [Service]
  18. # 服务类型为forking,这意味着主进程会在后台运行,并可能产生子进程
  19. Type=forking
  20. # 指定PID文件的位置,这用于追踪Nginx主进程
  21. PIDFile=/run/nginx.pid
  22. # 启动前预检查Nginx配置文件的正确性
  23. ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
  24. # 启动Nginx,指定配置文件的位置
  25. ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
  26. # 重新加载Nginx配置时发送HUP信号给主进程
  27. ExecReload=/bin/kill -s HUP $MAINPID
  28. # 停止Nginx时发送QUIT信号给主进程
  29. ExecStop=/bin/kill -s QUIT $MAINPID
  30. # 设置私有临时文件系统
  31. PrivateTmp=true
  32. # [Install] 部分
  33. [Install]
  34. # 当multi-user.target目标激活时,Nginx服务应启动
  35. WantedBy=multi-user.target
复制代码
  [Unit] 部分:
  

  • Description 界说了服务的形貌,这里是 "nginx - high performance web server"。
  • Documentation 提供了关于 Nginx 文档的 URL。
  • After 列出了此服务依赖的其他目标,Nginx 应该在网络服务和长途文件系统挂载完成后才开始。
  [Service] 部分:
  

  • Type=forking 表明这是一个 forking 范例的服务,意味着主进程会在背景运行并大概产生子进程。
  • PIDFile 设置了用来跟踪主进程 PID 的文件位置。
  • ExecStartPre 在启动服务前实行预启动查抄,这里使用 nginx -t 来测试设置文件的正确性。
  • ExecStart 界说了启动 Nginx 的命令,指定了设置文件的位置。
  • ExecReload 界说了重新加载 Nginx 设置的命令,使用 HUP 信号。
  • ExecStop 界说了制止 Nginx 的命令,使用 QUIT 信号。
  • PrivateTmp 设置了是否为服务提供私有临时文件系统。
  [Install] 部分:
  

  • WantedBy 指定此服务应在 multi-user.target 这个目标实现时启动。
  
更新 systemd 的服务数据库
  1. [root@web01 ~] systemctl daemon-reload
复制代码

1.2.6 修改nginx的主设置文件

  1. [root@web01 ~] vim /usr/local/nginx/conf/nginx.conf
复制代码
nginx中界说pid的路径必须与编写服务的pid对应,不然会报错
使用include参数同时读取 /usr/local/nginx/conf.d/*.conf 文件  --子设置文件12

1.2.7 界说子设置文件

  1. [root@web01 ~] mkdir /usr/local/nginx/conf.d
  2. [root@web01 ~] cd /usr/local/nginx/conf.d/
  3. [root@web01 conf.d] vim aa.conf
  4. server {
  5.     listen       38080;
  6.     # 解析域名
  7.     resolver  8.8.8.8;
  8.     # ngx_http_proxy_connect_module
  9.     proxy_connect;
  10.     proxy_connect_allow            443 563;
  11.     proxy_connect_connect_timeout  10s;
  12.     proxy_connect_read_timeout     10s;
  13.     proxy_connect_send_timeout     10s;
  14.     location / {
  15.         proxy_pass $scheme://$http_host$request_uri;
  16.     }
  17. }
复制代码

   

  • listen 38080; 体现服务器监听38080端口吸收请求。
  • resolver 8.8.8.8; 设置DNS解析器,使用Google的公共DNS服务器进行域名解析。
  • proxy_connect; 开启代理连接模块,通常用于处理HTTPS代理。
  • proxy_connect_allow 443 563; 允许代理连接到443(HTTPS标准端口)和563(通常用于某些加密的实时通信协议)端口。
  • proxy_connect_connect_timeout 10s;, proxy_connect_read_timeout 10s;, proxy_connect_send_timeout 10s; 分别设置了HTTPS代理连接的创建、读取和发送超时时间,均为10秒。
  • location / { ... } 匹配所有请求,并使用proxy_pass指令将请求代理到相同方案(HTTP或HTTPS)、相同主机和相同URI的地址。
  请留意,proxy_pass语句中使用的变量$scheme, $http_host和$request_uri是从请求中捕获的,这样可以保持原始请求的完备性,当转发请求到后端时,这些变量将被更换为实际的请求值。
  将启动nginx二进制文件创建软链接
  1. [root@web01 sbin] ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
复制代码
查抄语法是否正确
  1. [root@web01 ~] nginx -t
  2. nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
  3. nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
复制代码
重启nginx
  1. [root@web01 ~] systemctl start nginx  或者  [root@web01 ~] nginx -s reload
复制代码
1.2.8 在客户端呆板上做测试

代理服务器 192.168.239.137/24 
客户端  192.168.239.155/24
   
  使用 curl 命令行工具加上 -I 选项时,请求获取的是目标网址的 HTTP 头信息,而不下载完备的页面内容。结合 -v 选项,curl 会显示详细的交互过程,包括发送的请求和吸收到的相应头信息。-x 选项用于指定一个 HTTP 代理服务器,格式为 IP:port。
  实行命令 curl -I https://www.baidu.com -v -x 192.168.239.137:38080 将做以下事情:
  

  • 发送一个 HEAD 请求到 https://www.baidu.com。
  • 使用位于 192.168.239.137 的代理服务器,端标语为 38080。
  • 显示详细的交互信息,包括 curl 如何与代理服务器及目标服务器进行通信的细节。
  HTTP
  1. [root@LVS ~] curl -I http://www.baidu.com  -v -x 192.168.239.137:38080
  2. *   Trying 192.168.239.137:38080...
  3. * Connected to (nil) (192.168.239.137) port 38080 (#0)
  4. > HEAD http://www.baidu.com/ HTTP/1.1
  5. > Host: www.baidu.com
  6. > User-Agent: curl/7.79.1
  7. > Accept: */*
  8. > Proxy-Connection: Keep-Alive
  9. >
  10. * Mark bundle as not supporting multiuse
  11. < HTTP/1.1 200 OK
  12. HTTP/1.1 200 OK
  13. < Server: nginx/1.20.2
  14. Server: nginx/1.20.2
  15. < Date: Mon, 17 Jun 2024 08:47:58 GMT
  16. Date: Mon, 17 Jun 2024 08:47:58 GMT
  17. < Content-Type: text/html
  18. Content-Type: text/html
  19. < Content-Length: 277
  20. Content-Length: 277
  21. < Connection: keep-alive
  22. Connection: keep-alive
  23. < Accept-Ranges: bytes
  24. Accept-Ranges: bytes
  25. < Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
  26. Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
  27. < Etag: "575e1f71-115"
  28. Etag: "575e1f71-115"
  29. < Last-Modified: Mon, 13 Jun 2016 02:50:25 GMT
  30. Last-Modified: Mon, 13 Jun 2016 02:50:25 GMT
  31. < Pragma: no-cache
  32. Pragma: no-cache
  33. <
  34. * Connection #0 to host (nil) left intact
复制代码
HTTPS(需要增加https代理模块才华使用)
  1. [root@LVS ~] curl -I https://www.baidu.com  -v -x 192.168.239.137:38080
  2. *   Trying 192.168.239.137:38080...
  3. * Connected to (nil) (192.168.239.137) port 38080 (#0)
  4. * allocate connect buffer!
  5. * Establish HTTP proxy tunnel to www.baidu.com:443
  6. > CONNECT www.baidu.com:443 HTTP/1.1
  7. > Host: www.baidu.com:443
  8. > User-Agent: curl/7.79.1
  9. > Proxy-Connection: Keep-Alive
  10. >
  11. < HTTP/1.1 200 Connection Established
  12. HTTP/1.1 200 Connection Established
  13. < Proxy-agent: nginx
  14. Proxy-agent: nginx
  15. <
  16. * Proxy replied 200 to CONNECT request
  17. * CONNECT phase completed!
  18. * ALPN, offering h2
  19. * ALPN, offering http/1.1
  20. * successfully set certificate verify locations:
  21. *  CAfile: /etc/pki/tls/certs/ca-bundle.crt
  22. *  CApath: none
  23. * TLSv1.3 (OUT), TLS handshake, Client hello (1):
  24. * TLSv1.3 (IN), TLS handshake, Server hello (2):
  25. * TLSv1.2 (IN), TLS handshake, Certificate (11):
  26. * TLSv1.2 (IN), TLS handshake, Server key exchange (12):
  27. * TLSv1.2 (IN), TLS handshake, Server finished (14):
  28. * TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
  29. * TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
  30. * TLSv1.2 (OUT), TLS handshake, Finished (20):
  31. * TLSv1.2 (IN), TLS handshake, Finished (20):
  32. * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
  33. * ALPN, server accepted to use http/1.1
  34. * Server certificate:
  35. *  subject: C=CN; ST=beijing; L=beijing; O=Beijing Baidu Netcom Science Technology Co., Ltd; CN=baidu.com
  36. *  start date: Jul  6 01:51:06 2023 GMT
  37. *  expire date: Aug  6 01:51:05 2024 GMT
  38. *  subjectAltName: host "www.baidu.com" matched cert's "*.baidu.com"
  39. *  issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign RSA OV SSL CA 2018
  40. *  SSL certificate verify ok.
  41. > HEAD / HTTP/1.1
  42. > Host: www.baidu.com
  43. > User-Agent: curl/7.79.1
  44. > Accept: */*
  45. >
  46. * Mark bundle as not supporting multiuse
  47. < HTTP/1.1 200 OK
  48. HTTP/1.1 200 OK
  49. < Accept-Ranges: bytes
  50. Accept-Ranges: bytes
  51. < Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
  52. Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
  53. < Connection: keep-alive
  54. Connection: keep-alive
  55. < Content-Length: 277
  56. Content-Length: 277
  57. < Content-Type: text/html
  58. Content-Type: text/html
  59. < Date: Mon, 17 Jun 2024 08:34:49 GMT
  60. Date: Mon, 17 Jun 2024 08:34:49 GMT
  61. < Etag: "575e1f71-115"
  62. Etag: "575e1f71-115"
  63. < Last-Modified: Mon, 13 Jun 2016 02:50:25 GMT
  64. Last-Modified: Mon, 13 Jun 2016 02:50:25 GMT
  65. < Pragma: no-cache
  66. Pragma: no-cache
  67. < Server: bfe/1.0.8.18
  68. Server: bfe/1.0.8.18
  69. <
  70. * Connection #0 to host (nil) left intact
复制代码


为了让的系统能够通过正向代理服务器访问外网,可以按照以下步骤分别针对 yum、wget 和全局环境变量进行设置:
1.3 设置客户端指定代理服务器

1.3.1 Linux下

1. 设置 yum 使用正向代理
编辑 /etc/yum.conf 文件并添加代理信息:
  1. vim /etc/yum.conf
复制代码
在文件中添加以下行:
  1. proxy=http://192.168.239.137:38080
复制代码
大概,假如想同时设置 FTP 代理,可以添加:
  1. proxy=http://192.168.239.137:38080
  2. proxy=ftp://192.168.239.137:38080
复制代码
2. 设置 wget 使用正向代理
编辑 /etc/wgetrc 文件并添加代理信息:
  1. vim /etc/wgetrc
复制代码
在文件中添加以下行:
  1. http_proxy=192.168.239.137:38080
复制代码
假如代理服务器同时支持 HTTPS,可以添加:
  1. http_proxy=192.168.239.137:38080
  2. https_proxy=192.168.239.137:38080
复制代码
3. 设置全局环境变量以使用正向代理
编辑 /etc/profile 文件并添加代理环境变量:
  1. vim /etc/profile
复制代码
在文件中添加以下行:
  1. http_proxy=192.168.239.137:38080
  2. https_proxy=192.168.239.137:38080ftp_proxy=192.168.239.137:38080
复制代码
接下来,导出这些环境变量:
  1. export http_proxy
  2. export https_proxy
  3. export ftp_proxy
复制代码
为了使这些更改立即生效,需要重新加载 /etc/profile 文件:
  1. source /etc/profile
复制代码
1.3.2 windows下



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

玛卡巴卡的卡巴卡玛

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表