ngxin 正向代理配置 访问互联网

如果本地无法访问互联网,则通过nginx的正向代理,可以将本地的所有流量进行代理,从而达到访问互联网的目的,话不多说,上代码:

1、下载nginx并安装相关依赖

复制代码
yum -y install gcc
yum install -y gcc-c++ 
yum install -y pcre pcre-devel 
yum install -y zlib zlib-devel 
yum install -y openssl openssl-devel
mkdir -p /mnt/soft/installPackage
cd /mnt/soft/installPackage
wget http://nginx.org/download/nginx-1.18.0.tar.gz

2、解压nginx压缩包

复制代码
tar -zxvf nginx-1.18.0.tar.gz

3、下载正向代理插件,此插件为必须

复制代码
yum install git
yum -y install patch
git clone https://gitee.com/web_design_of_web_frontend/ngx_http_proxy_connect_module.git

4、编译正向代理插件

复制代码
cd /mnt/soft/installPackage/nginx-1.18.0
patch -p1 < /mnt/soft/installPackage/ngx_http_proxy_connect_module/patch/proxy_connect_rewrite_1018.patch

5、编译安装nginx

复制代码
./configure --prefix=/usr/local/nginx --with-http_ssl_module --add-module=/mnt/soft/installPackage/ngx_http_proxy_connect_module
make && make install

安装目录:/usr/local/nginx

配置文件目录:/usr/local/nginx/conf/nginx.conf

6、配置正向代理

复制代码
server {
     listen 9090;
     resolver 114.114.114.114 valid=60s ipv6=off;
     resolver_timeout 30s;
     proxy_connect;
     proxy_connect_allow            443 80;
     proxy_connect_connect_timeout  10s;
     proxy_connect_read_timeout     10s;
     proxy_connect_send_timeout     10s;
     location / {
         proxy_pass $scheme://$http_host$request_uri;
         proxy_set_header Host $host;
         proxy_http_version  1.1;
         #proxy_ssl_server_name on;
     }
}

7、启动nginx

复制代码
cd /usr/local/nginx/sbin
./nginx
或
/usr/local/nginx/sbin/ngxin

8、开机自启动

复制代码
cd /usr/lib/systemd/system/
vi nginx.service
#复制以下内容到nginx.service文件中[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target

9、重启nginx,加入开机自启动

复制代码
pkill -9 nginx
systemctl start nginx
systemctl enable nginx

10、配置系统代理

11、打开浏览器,访问外网地址,可以正常打开了

相关推荐
bush44 小时前
嵌入式linux学习记录七,中断
linux·嵌入式
RisunJan5 小时前
Linux命令-nologin(用于系统账户或需要禁止交互式登录的场景)
linux·运维
是阿建吖!5 小时前
【Linux】信号
android·linux·c语言·c++
城北徐宫5 小时前
Linux信号深度解剖:5种产生、3张表、4次切换
linux·c++·学习
倔强的石头1065 小时前
【Linux指南】Linux快捷键与系统实用技巧
linux·运维·服务器
番茄地瓜5 小时前
Linux 配置静态 IP 步骤
linux·运维·服务器
liulilittle5 小时前
论 Linux 内核态全局稳态带宽的卡尔曼估计与工程实现
linux·服务器·网络·c++·计算机网络·tcp·通信
Irissgwe6 小时前
五、应用层协议HTTP
linux·网络·网络协议·http·状态码·url
.千余6 小时前
【Linux】 传输层协议UDP:从端口号到传输机制
linux·运维·udp
囚~徒~7 小时前
轻量化的虚拟机
linux·运维·服务器