Nginx使用TCP代理实战项目

Nginx使用TCP代理实战项目

dkm
dkm
2022-12-20 / 0 评论 / 14 阅读 / 正在检测是否收录...

本篇是本系列第二篇实战内容

小李是某网络公司的运维,由于近期新冠肺炎疫情的影响,该网络公司的程序员需要居家办公,由于生产环境各程序员需要在家里远程连接公司的生产环境机房里面的服务器,但是由于生产环境不能直接暴露在公网环境下,所以现需要连接生产环境服务器的SSH端口以及SOCKS服务端口

项目需求分析:
SOCKS默认端口:1080
SSH默认端口:22
目标服务器:10.0.1.1
Nginx转发的服务器地址:10.0.0.113

安装SOCKS5代理服务器

#安装依赖
  yum -y install gcc openldap-devel pam-devel openssl-devel

  wget http://jaist.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz
  tar -xvf ss5-3.8.9-8.tar.gz
  cd ss5-3.8.9/
  ./configure
  make && make install
#目前配置文件保留的位置
  nano /etc/opt/ss5.conf
  #添加以下内容(配置方便不使用密码登录)
  {
  
  permit - 0.0.0.0/0      -    0.0.0.0/0    -    -    -    -    -
  permit u 0.0.0.0/0    -    0.0.0.0/0    -    -    -    -    -
  auth    0.0.0.0/0    -    -
  auth  0.0.0.0/0    -    u
  }

  #给SOCKS5可执行能力
  chmod a+x /tc/init.d/ss5
  #启动SOCKS5
  service ss5 start
  

配置服务器防火墙

  systemctl start firewalld
  systemctl enable firewalld
  firewall-cmd --add-port=8022/tcp --zone=public --permanent
  firewall-cmd --add-port=10808/tcp --zone=public --permanent
  firewall-cmd --reload

配置Nginx的TCP转发文件

  nano /etc/nginx/stream.d/ftp-ssh.conf
  upstream ssh_local {
          server 10.0.1.1:22;
  }
  server {
          listen 8022;
          proxy_pass ssh_local;
  }
  upstream socks_local {
          server 10.0.1.1:1080;
  }
  server {
          listen 10808;
          proxy_pass socks_local;
  }

测试是否转发成功
Test
测试SOCKS服务器是否能正常转发流量
Test
因为软件显示的问题,实际的速度比这个要高

0

评论

博主关闭了所有页面的评论