在Linux上使用ss客户端并设置代理
最近在国内阿里云上git clone
让我感受到了国内网络到github的糟糕程度,实在是慢的想砸电脑,于是就想着设置一个代理,shadowsocks
作为代理是最合适不过了
环境:Ubuntu 18.04 LTS
安装shadowsocks
ss客户端我选用的是shadowsocks-libev
,性能高,占用低。
采用编译安装
1.安装依赖
1 | apt update && apt install -y gettext build-essential autoconf libtool libpcre3-dev asciidoc xmlto libev-dev libc-ares-dev automake libmbedtls-dev libsodium-dev pkg-config |
2.下载源码
1 | wget https://github.com/shadowsocks/shadowsocks-libev/releases/download/v3.2.1/shadowsocks-libev-3.2.1.tar.gz |
3.解压并编译安装
1 | tar zxf shadowsocks-libev-3.2.1.tar.gz && rm -f shadowsocks-libev-3.2.1.tar.gz |
运行shadowsocks
执行
1 | ss-local -s ss服务器ip -p 服务器端口 -l 本地端口 -k "密码" -m 加密方式 |
更多参数请查阅:https://github.com/shadowsocks/shadowsocks-libev
让shadowsocks
在后台以守护进程的形式运行
1 | vi /lib/systemd/system/shadowsocks-libev.service |
加入以下内容
1 | [Unit] |
然后执行systemctl daemon-reload
用以下命令来控制
1 | systemctl start shadowsocks-libev //启动 |
设置代理
使用系统环境变量
在终端直接执行
1 | export ALL_PROXY=socks5://127.0.0.1:1080 |
但这样只会在当前窗口生效,可以设置一些别名来便捷地控制
1 | alias setproxy="export ALL_PROXY=socks5://127.0.0.1:1080" |
将以上内容添加到终端的配置文件中,bash
的话就是~/.bashrc
,zsh
就是~/.zshrc
,然后重启终端即可
setproxy
启用代理unsetproxy
关闭代理ip
查看当前ip地址,用于检查代理是否生效
使用proxychains
有时候有些软件并不能正确走系统的代理,这时候可以用proxychains
,这是一个非常方便的代理工具
执行apt install -y proxychains
来安装
配置:将/etc/proxychains.conf
中最后一行改成socks5 127.0.0.1 1080
,保存退出
用法:proxychains
后面接要执行的命令即可
在Linux上使用ss客户端并设置代理