CentOS下配置ss5(SOCKS5)代理服务器

系统Centos版本:CentOS 7.4

通过yum安装ss5 依赖包:

yum -y install gcc automake make pam-devel openldap-devel cyrus-sasl-devel openssl-devel

下载ss5

wget https://jaist.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz --no-check-certificate

解压、编译、安装

  1.  
    # tar xvf ss5-3.8.9-8.tar.gz
  2.  
    # cd ss5-3.8.9
  3.  
    # ./configure && make && make install

安装完毕,默认无用户认证;很容易被利用,故需改为用户密码认证。

 

修改SS5配置文件

修改认证方式 vi   /etc/opt/ss5/ss5.conf,查找取消下面两行注释(第87行和203行)

#auth 0.0.0.0/0  -    -

#permit - 0.0.0.0/0 - 0.0.0.0/0 - - - - -

修改为以下(将某处-改为u)

auth    0.0.0.0/0   -    u

permit   u 0.0.0.0/0  -  0.0.0.0/0  - - - - -

添加用户名及密码 1,每行一个用户+密码。

vi /etc/opt/ss5/ss5.passwd

  1.  
    admin1 12345
  2.  
    admin2 56789

修改代理端口vi /etc/sysconfig/ss5(如不设置,默认是1080)

默认#SS5_OPTS=” -u root”

取消注释,并修改成下面这样

SS5_OPTS=" -u root -b 0.0.0.0:10808"

给bash文件增加可执行权限 /etc/rc.d/init.d/ss5

# chmod a+x /etc/rc.d/init.d/ss5

启动ss5

# /etc/rc.d/init.d/ss5 restart

也可以用

# service ss5 start

启动完成后,可以使用以下命令查看连接情况

# netstat -an | grep 10808

查看日志

# more /var/log/ss5/ss5.log

关闭ss5

# /etc/rc.d/init.d/ss5 stop

也可以用

# service ss5 stop

将ss5加入开机自动启动(可选)

  1.  
    # chkconfig --add ss5
  2.  
    # chkconfig --level 345 ss5 on
     
    可以用chkconfig  --list 查看开机启动项

还没完。。。。。。。。。。。。。

每次重启系统后,/var/run/ss5/ 都会自动被删调(具有原因百度),造成/var/run/ss5/ss5.pid 创建失败,自动/手动启动失败,需先创建目录

修改启动文件 /etc/rc.d/rc.local

在文件末尾添加以下内容(就是在开机的时候就创建目录)

mkdir /var/run/ss5/

授权

# chmod a+x /etc/rc.d/rc.local

如需限制走代理访问的目标,

其他

  1.  
    # Auth SHost SPort DHost DPort Fixup Group Band ExpDate
  2.  
    permit u 0.0.0.0/0 - 192.168.1.0/24 - - - - -

 已经仅允许访问192.168.1.0 这个网段,permit可以多条。