Linux配置代理

摘要

Linux 科网指北~

安装ss

这里我们选择shadowsocks-Qt5。注意,很多人的博客是使用命令行安装的,但是这样的shadowsocks会缺少一些加密方式(比如aes-256-gcm)。

笔者建议从github上下载最新版本的applmage文件。这个文件可以直接双击运行,相当于打包的ss,比较方便。笔者当时的最新的版本是v3.0.1

下载后,添加文件的可执行权限:

chmod +777 Shadowsocks-Qt5-3.0.1-x86_64.AppImage

然后执行,即可看到ss-qt5的图形界面,然后像Windows一样配置即可。

安装微兔瑞

不解释

sudo su
bash <(curl -L -s https://install.direct/go.sh)

配置系统代理

对于系统的全局代理,在网络手动代理中选择socks5,IP为127.0.0.1,端口为1080(即ss-qt5图形界面配置的本地地址和本地端口),即可使用。

但这个时候,有些浏览器是不能访问外网的。原因是他们没有使用系统代理(比如linux下的chrome)

终端代理:

export ALL_PROXY=socks5://127.0.0.1:1080

浏览器配置

秉承上文,以chrome为例,我们用命令行添加代理参数并启动:

google-chrome --proxy-server="socks5://127.0.0.1:1080"

这时,你的chrome就能上外网了。

那难道,每次启动我们都要使用命令行?

配置.bashrc,这个文件在每次登录时执行:

vim ~/.bashrc

找到alias,添加以下参数

alias google-chrome='google-chrome --proxy-server="socks5://127.0.0.1:1080"'

重启即可。

配置PAC模式

为了避免在访问国内网站时速度太慢,使用genpac来实现自动代理

安装pip

sudo apt-get install python-pip python-dev build-essential 
sudo pip install --upgrade pip
sudo pip install --upgrade virtualenv

安装Genpac

sudo pip install genpac

建立一个合适的目录并进入,在其中生成pac文件

注意,在执行时需挂系统代理sock5,否则会出现获取gfwlist失败的情况:

genpac --proxy="SOCKS5 127.0.0.1:1080" --gfwlist-proxy="SOCKS5 127.0.0.1:1080" -o autoproxy.pac --gfwlist-url="https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt"

配置系统代理为自动,url填写刚生成的pac文件的路径file:///home/.../autoproxy.pac,并启用代理。

于是,完美科学上网。

参考

Ubuntu下设置Shadowsocks的非全局代理(PAC自动代理)