CentOS搭建Socks5代理

安装SS5

1.安装ss5所需依赖包

    yum install gcc openldap-devel pam-devel openssl-devel

2.下载安装包并解压

    wget http://jaist.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz
    tar -zxvf ss5-3.8.9-8.tar.gz

本地备份:http://920.ai/softs/Linux/ss5/ss5-3.8.9-8.tar.gz

3.配置并安装

    cd ss5-3.8.9/ && ./configure
    make && make  install

4.修改ss5.conf

    vim /etc/opt/ss5/ss5.conf

/etc/opt/ss5/ss5.conf中的 auth段permit段 改为:

auth段

#      SHost           SPort           Authentication
#
auth    0.0.0.0/0               -               u

permit段

#      Auth     SHost           SPort   DHost           DPort   Fixup   Group   Band    ExpDate
#
permit u       0.0.0.0/0       -       0.0.0.0/0       -       -       -       -       -

5.添加用户和密码

    vim /etc/opt/ss5/ss5.passwd

编辑 /etc/opt/ss5/ss5.passwd , 一行一个账号,用户名和密码之间用空格间隔

    user1 12345678
    user2 123456

6.更改端口

    vim /etc/sysconfig/ss5

编辑/etc/sysconfig/ss5,添加一行,-b后面的参数代表监听的ip地址和端口号,-u 后面的参数表示本地计算机以哪个账户连接

# Add startup option here   SS5_OPTS=" -u root -b 0.0.0.0:2333"

7.添加权限并开机自启

    chmod +x /etc/init.d/ss5
    systemctl enable ss5

可能出现的问题

1.使用命令ssystemctl status ss5 -l 出现以下错误,先创建 /var/run/ss5 目录后再启动 ss5

    Can’t create pid file /var/run/ss5/ss5.pid
    Can’t unlink pid file /var/run/ss5/ss5.pid

由于每次重启后/var/run/ss5/文件夹都会被删除,所以需要修改/etc/init.d/ss5,在start段加上一句 mkdir /var/run/ss5/,将stop段的rm -f /var/run/ss5/ss5.pid改为rm -rf /var/run/ss5/

2.如果仍然无法连接

检查防火墙设置

    systemctl status iptables

如果防火墙处于开启状态,放行端口,例如2333,编辑/etc/sysconfig/iptables,加上一句

    vim /etc/sysconfig/iptables
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 2333 -j ACCEPT

重启防火墙

    service iptables restart

注意:仅支持CentOS,Debian下编译会报错

参考资料: 安装 SS5 SOCKS5 代理服务器,多进程/多IP地址出口/多端口:http://www.huangzhong.ca/zh/ss5-multiple-instances-ips-centos/

2019-12-15 03:04:57