linux终端使用shadowsocks客户端科学上网

最近,由于项目需要使用google搜索的API,但是爬虫服务器使用的是Centos,而且没有安装图形化界面,所以只有使用终端翻墙。我采用的方案是shadowsocks,下面是客户端安装和配置的过程。


1.安装和配置shadowsocks

Ubuntu/CentOS中安装shadowsocks很简单,使用pip即可进行安装:

pip install shadowsocks

然后把shadowsocks的服务器和本地信息写在配置文件中:

vim /etc/shadowsocks.json

配置文件以json格式保存,详细信息如下:

{
    "server":"216.189.158.147",
    "server_port":39579,
    "local_address": "127.0.0.1",
    "local_port":1080,
    "password":"dou-bi.co39579",
    "timeout":300,
    "method":"chacha20",
    "fast_open": false
}

server代表shadowsocks服务器IP,server_port是服务器端口,local_address是本地IP, local_port为本地端口(默认为1080),password是shadowsocks账号的密码, timeout是超时时间,method为加密方式,fast_open默认设置为false

至此,关于ss的安装和配置就讲完了。可以通过后台启动运行和停止ss:

启动:sslocal -c /etc/shadowsocks.json -d start

停止:sslocal -c /etc/shadowsocks.json -d stop

如果服务器用的CentOS,可能会报错:libsodium not found,所以我们需要安装和配置libsodium,它的安装和配置方法如下:

wget https://download.libsodium.org/libsodium/releases/LATEST.tar.gz

tar zxf LATEST.tar.gz

cd libsodium*

./configure

make && make install

# 修复关联

echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf

ldconfig

如果第一步通过wget下载libsodium失败的话,那么请在其官网手动下载.tar.gz文件,再安装上述步骤执行。顺利的话,就可以直接在后台启动ss客户端了

光安装并运行了ss的客户端,还是不能使用终端访问google。SS使用socks5协议,而终端很多工具目前只支持http和https等协议,所以我们为终端设置Shadowsocks的思路就是将socks5协议转换成http协议。而Proxychains4就是linux平台上很好用的这么一个工具。


2.安装配置Proxychains4

该项目开源在github上,项目地址为:proxychains-ng。下面是安装和配置方法:

git clone https://github.com/rofl0r/proxychains-ng.git
cd proxychains-ng
./configure
make && make install
cp ./src/proxychains.conf /etc/proxychains.conf
cd .. && rm -rf proxychains-ng

再修改proxychains4的配置:

vim /etc/proxychains.conf

socks4 127.0.0.1 9095改为socks5 127.0.0.1 1080

至此,便可以使用终端配合proxychains4+SS访问墙外的网站了,使用方式为:

proxychains4 + 命令

比如获取google搜索页面:

proxychains4 wget https://www.google.com

又比如现在查看我们使用的IP:

proxychains4 curl ip.gs

当前 IP:216.189.158.147 来自:美国加利福尼亚州洛杉矶 hostus.us

如果不使用proxychains4的话:

curl ip.gs

当前 IP:202.115.. 来自:中国四川成都四川联合大学 教育网


刚刚那个是局部代理,如果需要全局代理,可以考虑Polipo,听说很好用,具体用法请参考官网和它的github项目地址。我没有试过,所以就不多写了。

最后,推荐一个比较好的网站,用于免费获取ss账号,很良心的一个站:逗比根据地