背景
阿里云服务器的Linux版本有多个选择,个人比较习惯使用Debian和Ubuntu。目前用的是Ubuntu14.04和Ubuntu16.04。
为什么需要在服务器安装shadowsocks客户端?
1. 博客后台需要用到一些google的产品,国内访问不了。
2. 有时候需要下载一些源代码编译或者下载某些内容,国内访问不了。
一、下载安装
Shadowsocks-libev是一个用于嵌入式的轻量级的 SOCKS5 代理软件。很多人可能习惯于安装桌面版的。实际上 shadowsocks-libev 的应用非常的广泛。(路由器里面用的很多,因为一个配置好的路由器可以给整个部门或者公司使用,不用每个人都去安装配置)
安装命令
sudo apt-get install software-properties-common -y
sudo add-apt-repository ppa:max-c-lv/shadowsocks-libev -y
sudo apt-get update
sudo apt install shadowsocks-libev
二、配置运行
# 编辑配置文件,服务器ip和端口密码那些,这个必须改
sudo vim /etc/shadowsocks-libev/config.json
# 编辑配置文件,开机启动、用户组权限那些,可以不用管
sudo vim /etc/default/shadowsocks-libev
# 启动服务
sudo ss-local -c /etc/shadowsocks-libev/config.json
给个参考的/etc/shadowsocks-libev/config.json吧(要根据自己远程的服务器进行配置)
{
"server":"144.124.455.209",
"server_port":65402,
"local_address":"127.0.0.1",
"local_port":12480,
"password":"steuffyu",
"timeout":60,
"method":"chacha20-ietf-poly1305"
}
三、测试一下
- 启动服务
ss-local
#如果没错误的话,就会显示这样子的信息
2018-06-14 16:57:49 INFO: initializing ciphers... chacha20-ietf-poly1305
2018-06-14 16:57:49 INFO: listening at 127.0.0.1:23420
或者用netstat命令,看看相应的端口有没有启动
sudo netstat -nlp
- 在terminal里面声明一下代理
export ALL_PROXY=socks5://127.0.0.1:23420
- 测试一下
curl ip.gs
#如果没错的话,就会显示如下的信息(留意一下IP地址和服务器地址是否一致)
Current IP / 当前 IP: 123.145.55.23
ISP / 运营商: it7.net
City / 城市: Los Angeles California
Country / 国家: United States
IP.GS is now IP.SB, please visit https://ip.sb/ for more information. / IP.GS 已更改为 IP.SB ,请访问 https://ip.sb/ 获取更详细 IP 信息!
Please join Telegram group https://t.me/sbfans if you have any issues. / 如有问题,请加入 Telegram 群 https://t.me/sbfans
/\_/\
=( °w° )=
) ( //
(__ __)//
- 开机启动
把下面这行加到/etc/rc.local,重启服务器,看肯能不能正常启动
ss-local -c /etc/shadowsocks-libev/config.json
四、注意事项
- 区分客户端和服务端
一般的文章都是说用以下命令启动服务
sudo /etc/init.d/shadowsocks-libev start
然后启动失败,会报错
2018-06-14 16:36:54 INFO: initializing ciphers... chacha20-ietf-poly1305
2018-06-14 16:36:54 INFO: tcp server listening at 104.194.75.209:55002
2018-06-14 16:36:54 ERROR: bind: Cannot assign requested address
2018-06-14 16:36:54 ERROR: bind() error
需要在/etc/shadowsocks/config,json把服务器ip改为 0.0.0.0
{
"server":"0.0.0.0",
"server_port":11018,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"*******",
"timeout":300,
"method":"RC4-MD5"
}
然后启动,就正常了。
实际上,作为服务端才需要这样子改。如果只作为客户端使用的话,server那里就填远程shadowsocks服务器的地址。
- 注意一下防火墙的设置,开放内网的相应端口。
http://xzh.i3geek.com
0 条评论