本篇是本系列第二篇实战内容
小李是某网络公司的运维,由于近期新冠肺炎疫情的影响,该网络公司的程序员需要居家办公,由于生产环境各程序员需要在家里远程连接公司的生产环境机房里面的服务器,但是由于生产环境不能直接暴露在公网环境下,所以现需要连接生产环境服务器的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;
}
测试是否转发成功
测试SOCKS服务器是否能正常转发流量
因为软件显示的问题,实际的速度比这个要高
评论