Socks使用和安装配置

Socks简介:

详情可以百度,不过我猜你对那一大堆术语也会像我一样觉得无语,
所以我觉得你可以简单理解为它可以比较完美代理http/ftp/smtp等多种协议的代理工具就行了。
其中最具有典型例子的就是QQ的登录、foxmail的邮件、火狐的网页浏览都可以直接设置使用Socks代理,火狐的比较纠结,填不了对socks的用户验证。

例1:QQ代理


在qq登录框点击右上角的向下箭头,会瞬间反过来切换到网络设置界面,也就是选择使用代理。

如上图,选择类型为Socks5代理,然后正确填入Socks代理服务器的ip、端口、用户和密码后即可实现。
点击测试可测试出能不能成功连接到代理服务器。

例2:Foxmail邮件代理


foxmail可以很方便在系统设置-网络里对不同账号自定义设置,下方自定义代理设置中可看到邮件代理服务器的各项。

例3:firefox代理


火狐浏览器连接设置中可以配置走Socks5代理,纠结的是它没有提供填入用户和验证密码项。

例4:proxfier代理

所以使用proxifier去做连接Socks5代理的方式也是可以使火狐实际上是使用代理上网:

在profile菜单下可以对ProxyServer进行设置,添加Socks代理服务器,还可以设置通过认证

SOCKS5代理需要在本地安装客户端,Windows推荐使用Proxifier,非常好用,可以指定应用程序上网。

如上图,客户端默认规则是所有应用都走socks代理,这也是前面为什么火狐不用做任何代理设置就会透明使用Socks代理的缘故。

———-以下引用自百度百科——————
1、添加代理:
运行软件,打开软件主界面。选择option–>proxy setting,点击右侧的Add添加代理,在弹出的窗口中添加你的代理。
如果你的代理需要验证,在setting部分填入用户名和密码。添加完成后可以检查代理的可用性。
2、设置代理规则
运行软件,打开软件主界面。选择option–>proxification Rules,在打开的窗口中选择哪些软件使用该代理访问网络,
默认是全部软件都通过该代理访问网络,对于本机localhost的访问除外。

Proxifier是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。
有许多网络应用程序不支持通过代理服务器工作,因此不能用于局域网或防火墙后面。这些会损害公司的隐私和导致很多限制。Proxifier解决了这些问题和所有限制。
————引用结束———————

安装配置Socks5

系统环境:以CentOS7为例
提前准备:官网下载Socks5 tar包
版本:ss5-3.8.9-8.tar.gz
链接:
http://sourceforge.net/projects/ss5/files/
http://ss5.sourceforge.net/
官方实例
http://ss5.sourceforge.net/examples.htm
wget http://downloads.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz

1、安装依赖开发库

yum install pam-devel openldap-devel openssl-devel

2、解压tar包并进行编译安装

tar -zxvf ss5-3.8.9-8.tar.gz #注:解压后得到的目录是ss5-3.8.9

cd ss5-3.8.9
./configure
注:默认是1080端口,如果想改端口的话,./configure –with-defaultport=10086
make
make install
典型的默认编译三部曲,没有什么好说的

3、修改配置文件

ss5 默认使用1080端口,并允许任何人使用
在这里主要是修改对ss5开启用户验证

vim /etc/opt/ss5/ss5.conf

auth 0.0.0.0/0 – –
改为
auth 0.0.0.0/0 – u

permit – 0.0.0.0/0 – 0.0.0.0/0 – – – – –
改成为
permit u 0.0.0.0/0 – 0.0.0.0/0 – – – – –

开启用户验证

要有用户验证的才通过
其它还有许多细致和更严瑾的配置,这里就不多作研究了。
大致上看conf文件上的注释也能理解。

4、添加认证用户

 vim /etc/opt/ss5/ss5.passwd
##用户  密码
test  123456

5、启动Socks

默认情况ss5文件没有执行权限,所以有两种方法可以做到启动效果,一种是chmod加上x执行权限:

 chmod u+x /etc/rc.d/init.d/ss5

另外一种是
在/etc/sysconfig/ss5中将SS5_OPTS取消注释:

SS5_OPTS=” -u root”

不取消注释的话运行ss5用户的是nobody,后面出于安全考虑,可能这里指定自己新建的用户好些。

还有就是你想运行使用不是默认的1080端口的话还可以这样:

/usr/sbin/ss5 -t $SS5_OPTS -u root -b 0.0.0.0:10086

-u 指定运行的用户(当然后面不建议直接用root)、-b 指定监听网卡和端口

又或者修改环境变量
以 root 身份运行 SS5 并修改端口为 8899 (默认端口 1080)
修改 /etc/init.d/ss5 并在文件顶部的 #!/bin/sh 之后添加下面的代码:

export SS5_SOCKS_PORT=10086
export SS5_SOCKS_USER =root

开机启动ss5

chkconfig --add ss5 //可选加入开机启动
chkconfig --level 345 ss5 on //可选启用开机启动
systemctl restart ss5.services  #centos7是用systemctl来启动服务的

至此,SS5就可以使用了。


/usr/sbin/ss5: symbol lookup error: /usr/lib/ss5/mod_proxy.so: undefined symbol: S5UdpResolvHostName

此错误我在登录QQ之后报出来
解决方法:网上说更换低版本……这就没什么意义了,然而其实QQ还是有继续登录在线阿

文:铁乐与猫
2018-2-8

发表评论

电子邮件地址不会被公开。 必填项已用*标注

17 + 11 =