ubuntu中shadowsocks-qt5的安装和pac模式的配置

Ubuntu 14.04或更高版本。

sudo add-apt-repository ppa:hzwhuang/ss-qt5
sudo apt-get update
sudo apt-get install shadowsocks-qt5

由于是图形界面,配置和windows基本没啥差别就不赘述了。经过上面的配置,你只是启动了sslocal 但是要上网你还需要配置下浏览器到指定到代理端口比如1080才可以正式上网。

但是我这样尝试在update那一步失败了,原因是我的ubuntu是18.04,作者还没有更新到这个版本。

  • 在第二步update的时候出现了一个错误,如下
忽略: http://ppa.launchpad.net/hzwhuang/ss-qt5/ubuntu bionic InRelease
错误: http://ppa.launchpad.net/hzwhuang/ss-qt5/ubuntu bionic Release
    404  Not Found [IP:91.189.95.83 80]

修改/etc/apt/sources.list.d/hzwhuang-ubuntu-ss-qt5-bionic.list 文件 

------>原来的如下:
http://ppa.launchpad.net/hzwhuang/ss-qt5/ubuntu bionic main
------>改成如下:
http://ppa.launchpad.net/hzwhuang/ss-qt5/ubuntu artful main

重新执行update命令,然后在安装ss-qt5 

配置浏览器

假如你上面任选一种方式已经开始运行sslocal了,火狐那个代理插件老是订阅不了gfwlist所以配置自动模式的话不好使。这里用的是chrome,你可以在Ubuntu软件中心下载得到。

安装插件

我们需要给chrome安装SwitchyOmega插件,但是没有代理之前是不能从谷歌商店安装这个插件的,但是我们可以从Github上直接下载最新版 https://github.com/FelisCatus/SwitchyOmega/releases/ (这个是chrome的)然后浏览器地址打开chrome://extensions/,将下载的插件托进去安装。

设置代理地址

安装好插件会自动跳到设置选项,有提示你可以跳过。左边新建情景模式-选择代理服务器-比如命名为SS(叫什么无所谓)其他默认之后创建,之后在代理协议选择SOCKS5,地址为127.0.0.1,端口默认1080 。然后保存即应用选项。

shadowsocks-0

shadowsocks-1

设置自动切换

接着点击自动切换 ( Auto switch)上面的不用管,在按照规则列表匹配请求后面选择刚才新建的SS,默认情景模式选择直接连接。点击应用选项保存。再往下规则列表设置选择AutoProxy 然后将这个地址填进去,点击下面的立即更新情景模式,会有提示更新成功!

shadowsocks-2

sorry编辑图片时候少了一步,就是填好规则列表地址后先点击立即更新情景模式 后再应用选项保存

https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt

点击浏览器右上角的SwitchyOmega图标,下面选择自动切换,然后打开google.com试试

原文:

https://blog.csdn.net/A807296772/article/details/80112871

设置pac模式

若这种方式成功,以上浏览器配置可以无视~

安装GenPAC

基于gfwlist的多种代理软件配置文件生成工具,支持自定义规则,目前可生成的格式有pac, dnsmasq, wingy。

# 安装
$ pip install genpac
# 或从github安装开发版本
$ pip install https://github.com/JinnLynn/genpac/archive/master.zip

# 更新
$ pip install --upgrade genpac
# 或从github更新开发版本
$ pip install --upgrade https://github.com/JinnLynn/genpac/archive/master.zip

# 卸载
$ pip uninstall genpac

注意: 如果安装后,执行时出现无法找到命令的错误,可能是因为genpac命令没有被安装到系统路径,如Ububtu 16.04且通过apt-get安装的pip的环境下,genpac执行入口文件被安装到了~/.local/bin,遇到这种情况,将~/.local/bin添加到系统路径,或卸载重新使用sudo安装,都可以解决问题。

获取gfwlist获取pac文件(根目录即可)

后期更新pac文件可使用

# PAC格式 如果在线gfwlist获取失败使用本地文件,如果在线gfwlist获取成功更新本地gfwlist文件
genpac --format=pac --pac-proxy="SOCKS5 127.0.0.1:1080" --gfwlist-local=~/gfwlist.txt --gfwlist-update-local -o autoproxy.pac

以上命令可能会失败,因为随着genpac版本的改变,参数形式可能会发生变化,修改参数如下:

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

生成一个autoproxy.pac文件,就是我们用于代理的。

如果输入genpac显示识别命令,则重新安装genpac模块

随后打开,系统代理→自动→配置URL 
填入 

# user为你自己的用户名(不要花括号....)
file:///home/{user}/autoproxy.pac

然后,打开chrome浏览器,打开google,加载失败了。。。。。

搜索了很长时间,几乎所有的教程就和上面的内容如出一辙。。。

之后我发现一点,生成的pac文件中,有以下代码:

/**
 * genpac 2.0.1 https://github.com/JinnLynn/genpac
 * Generated: 2018-08-03 22:21:56
 * GFWList Last-Modified: 2018-07-26 08:55:10
 * GFWList From: online[https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt]
 */

var proxy = 'SOCKS5 127.0.0.1:1080';

可以看到代理是SOCKS5,但是我的shadowsocks-qt中配置的模式是htttp(s),(本来想照着教程选择sock5模式,但是,发现只有选择http(s)模式才能成功)

于是,我开始尝试把这个参数改掉,改成HTTP(S),HTTPS,HTTP,但是都不行,我看了genpac的github文档,看了示例文件,发现SOCKS5的另一个选项是PROXY,然后讲以上配置改为:

/**
 * genpac 2.0.1 https://github.com/JinnLynn/genpac
 * Generated: 2018-08-03 22:21:56
 * GFWList Last-Modified: 2018-07-26 08:55:10
 * GFWList From: online[https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt]
 */

var proxy = 'PROXY 127.0.0.1:1080';

再次尝试,成功~

果然有问题,看官方文档才是王道。。。。

猜你喜欢

转载自blog.csdn.net/qq_25987491/article/details/81393996