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

关于Socks Server 5(SS5)

    SS5是一个实现SOCKS v4和v5协议的SOCKS服务器。作为一个代理服务器,SS5对客户端进行身份验证、配置文件和处理网络请求。它为客户端应用程序建立了与应用程序主机的连接。当客户端试图访问网络时,客户端连接到SS5守护进程,而不是应用程序主机。
    SS5协议独立于应用程序协议,可以帮助不同的网络服务,包括telnet、 ftp、finger、whois、gopher和WWW访问。

1、从官网下载源码

官网:http://ss5.sourceforge.net/
Linux系统:直接从官网下载压缩包到当前目录。

# wget https://nchc.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz

Windows系统:进入官网后,点击左侧的Software在右侧的Server处进入下载地址(https://sourceforge.net/projects/ss5/files/),然后上传至Linux服务器。

2、配置编译环境及安装编译SS5依赖组件

# yum -y install pam-devel openldap-devel openssl-devel

如果不确定依赖是否安装可以执行:

 rpm -qa | egrep 'pam-devel|openldap-devel|openssl-devel'

依赖查询结果

3、解压、编译、安装

# tar -zxvf ss5-3.8.9-8.tar.gz
# cd ss5-3.8.9-8
# ./configure 
# make && make install


备注:configure是一个shell脚本,主要的作用是对即将安装的程序进行配置,检查当前的环境是否满足要安装程序的依赖关系。如果系统环境合适,就会生成makefile,否则会报错。

4、修改SS5配置文件

①修改认证方式 /etc/opt/ss5/ss5.conf,查找取消下面两行注释

auth    0.0.0.0/0       -        -
permit  -   0.0.0.0/0   -   0.0.0.0/0   -   -   -   -   -

安装后这两行是注释的,默认的是:无用户认证。如果想要使用 username/password,用户认证方法,需要将上面两行修改成下面这样:

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

②添加用户名及密码 /etc/opt/ss5/ss5.passwd,每行一个用户+密码(之间用空格)

test1 12345
test2 56789

③修改ss5启动的参数,自定义代理端口(如果不设置,默认是1080)

方法一
编辑/etc/sysconfig/ss5,将

#SS5_OPTS=” -u root”

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

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

方法二
在vim /etc/init.d/ss5中添加如下行

export SS5_SOCKS_PORT=10080
export SS5_SOCKS_USER=root

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

# chmod 755 /etc/rc.d/init.d/ss5

5、启动与关闭ss5

一定要在root用户目录下,执行

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

也可以用

# service ss5 start
# service ss5 stop

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

# netstat -an | grep 10808

查看日志

more /var/log/ss5/ss5.log

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

# chkconfig --add ss5
# chkconfig --level 345 ss5 on

7、使用QQ客户端进行测试

CentOS下配置SS5(SOCKS5)代理服务器_第1张图片

备注:如果不成功,可以采取下面的方式进行处理
1、关闭防火墙进行测试,待测试成功后,再配置端口开发规则。
2、如果是阿里云服务器,还需要配置安全策略。方法是:云服务器ECS-管理-本实例安全组-安全组规则-公网入方向-添加安全组规则,将开放的端口加入。根据实际需要决定是否同时配置TCP、UDP端口规则。

8、火狐浏览器代理配置

打开火狐浏览器,选择:选项-网络代理-设置,进入配置界面,根据下图进行配置:
CentOS下配置SS5(SOCKS5)代理服务器_第2张图片
需要注意:
1、选择手动代理配置,协议选择使用SOCKS v5。
2、HTTP代理、SSL代理、FTP代理这3种方式不要进行配置
3、如果要的话,需要选中“使用SOCKS v5时代理DNS查询”,让代理服务器进行DNS解析。这是因为国内的DNS服务器不会返回或者返回错误的IP地址,如下图:
CentOS下配置SS5(SOCKS5)代理服务器_第3张图片
如果能保证DNS服务器可以返回正确的结果,也可以不选中这个选项。

配置完成后,通过百度搜索IP测试是否成功:
CentOS下配置SS5(SOCKS5)代理服务器_第4张图片

9、启用SS5 manager

step 1:修改ss5.conf文件,添加下面一行

set SS5_CONSOLE

step 2:从ss5的原始安装文件的modules目录中分别copy相应的文件到本机的web服务中(如httpd)


cp ss5-3.8.9/modules/mod_statistics/SS5Logo.jpg /var/www/html/SS5Logo.jpg

cp ss5-3.8.9/modules/mod_statistics/statmgr.cgi /var/www/cgi-bin/statmgr.cgi

cp ss5-3.8.9/modules/mod_balance/balamgr.cgi /var/www/cgi-bin/balamgr.cgi

step 3:重启ss5

step 4:使用浏览器打开如下URL

http://ss5hostip/cgi-bin/statmgr.cgi
http://ss5hostip/cgi-bin/balamgr.cgi
CentOS下配置SS5(SOCKS5)代理服务器_第5张图片

参考链接:
https://blog.csdn.net/Vincent95/article/details/71172986
https://www.gznotes.com/centos-build-socksserver5/
https://blog.csdn.net/zjiang1994/article/details/74925039
https://blog.csdn.net/neuryan/article/details/77884272

你可能感兴趣的:(代理配置,ss5,代理服务器,socks5)