
Linux服务器安装SS5代理服务过程
SS5是一款流行的Socks5代理服务器软件,能够在Linux系统上快速搭建Socks5代理服务。本文将详细介绍在CentOS/RedHat等Linux服务器上编译安装及配置SS5的完整过程,帮助您快速部署安全稳定的代理服务。
一、环境准备与依赖安装
在编译安装SS5之前,需要确保系统安装了必要的编译工具和依赖库。请使用root权限执行以下命令:
yum install -y gcc openldap-devel pam-devel openssl-devel
二、下载与编译安装SS5
目前SS5的官方源已经较少维护,我们可以从可靠的开源镜像站下载稳定版本(如3.8.9-8),然后进行编译安装。
cd /usr/local/src wget http://jaist.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz tar -xzvf ss5-3.8.9-8.tar.gz cd ss5-3.8.9 ./configure make make install
编译完成后,SS5的默认安装路径为/etc/opt/ss5,主配置文件为ss5.conf。
三、配置SS5服务
SS5的配置相对简单,主要涉及访问权限和认证方式的设置。以下分为“无密码认证”和“用户密码认证”两种常见场景。
1. 修改主配置文件 (ss5.conf)
打开/etc/opt/ss5/ss5.conf文件,找到对应的行进行修改。
场景A:无需密码,允许所有IP连接
将auth和permit行修改为如下内容:
auth 0.0.0.0/0 - - permit - 0.0.0.0/0 - 0.0.0.0/0 - - - - -
场景B:需要用户名密码认证(推荐)
将auth和permit行修改为如下内容,注意auth列的u代表使用用户名密码认证,permit中的u需与之对应:
auth 0.0.0.0/0 - u permit u 0.0.0.0/0 - 0.0.0.0/0 - - - - -
2. 添加认证用户 (仅场景B需要)
如果配置了用户密码认证,需要在/etc/opt/ss5/ss5.passwd文件中添加用户和密码,每行一个,用户名与密码用空格隔开:
echo "myuser mypassword" >> /etc/opt/ss5/ss5.passwd chmod 700 /etc/opt/ss5/ss5.passwd
3. 修改服务启动参数
为了指定SS5监听的IP和端口,以及运行用户,需要修改/etc/sysconfig/ss5文件。找到SS5_OPTS行,去掉注释并修改为:
SS5_OPTS=" -u root -b 0.0.0.0:1080"
上述配置表示以root身份运行,监听所有IP的1080端口。您可以根据需要将1080更改为其他端口。
四、启动与测试服务
1. 启动SS5服务
chmod +x /etc/rc.d/init.d/ss5 chkconfig --add ss5 chkconfig ss5 on service ss5 start
2. 防火墙放行端口
如果服务器开启了防火墙,需要放行刚才配置的SS5监听端口(如1080):
firewall-cmd --permanent --add-port=1080/tcp firewall-cmd --reload
如果是阿里云或腾讯云等云服务器,还需要在控制台的安全组中放行对应的TCP端口。
3. 测试代理是否可用
您可以在本地电脑或使用curl命令通过配置的Socks5代理来访问测试网站,例如:
curl --socks5 你的服务器IP:1080 http://www.ipipp.com
如果返回了网页内容且显示的IP为代理服务器的IP,则说明SS5代理服务安装并配置成功。
五、常见问题排查
1. 启动报错 "Can't create pid file":通常是因为/var/run/ss5目录不存在或权限不足,手动创建目录并赋权即可:mkdir -p /var/run/ss5 && chmod 755 /var/run/ss5。
2. 编译报错 "SS5OpenLdap.c" 相关错误:这是因为未安装LDAP开发库,执行yum install openldap-devel -y后重新编译即可。
3. 连接超时:请重点检查服务器防火墙、云平台安全组是否放行了相应端口,以及SS5配置文件中监听IP是否为0.0.0.0而非127.0.0.1。