这里是在windows上搭建Shadowsocks服务器,使用的是github上的libQtShadowsocks项目。
项目地址:https://github.com/shadowsocks/libQtShadowsocks
准备
一台可以翻墙的windows。
下载libQtShadowsocks
从https://github.com/shadowsocks/libQtShadowsocks/releases下载一个已经编译好的版本,这里是shadowsocks-libqss-v2.0.2-win64.7z。
下载后解压到任意位置,里面就一个shadowsocks-libqss.exe文件。
配置文件
在解压目录下创建2个文件,一个config.json,一个shadowsocks-server.bat。
config.json放置配置信息。
内容如下:
| 1 2 3 4 5 6 7 8 9 10 11 | { “server”:”0.0.0.0″, “server_port”:8023, “local_address”:”127.0.0.1″, “local_port”:1080, “password”:”password”, “timeout”:600, “method”:”aes-256-cfb”, “http_proxy”: false, “auth”: false } |
配置说明:
server
the address your server listens(服务器IP)
local_address
the address your local listens(本地代理地址)
local_port
local port(本地代理端口)(写之前创建的ss的端口)
port_password
password used for encryption(自己设定的服务器端口和密码)(自己可以随便设定)
timeout
in seconds(超时断开,以秒为单位)
method
default: “aes-256-cfb”, see Encryption(加密方式)
fast_open
use TCP_FASTOPEN, true / false(是否使用TCP)
workers
number of workers, available on Unix/Linux(这个只在Unix和Linux下有用,可不设置)。
shadowsocks-server.bat内容如下:
| 1 2 | @echo off shadowsocks-libqss.exe -c config.json -S |
运行Shadowsocks服务
直接运行shadowsocks-server.bat即可运行Shadowsocks服务,你也可以在命令提示符进入软件目录,运行shadowsocks-libqss.exe -c config.json -S这行命令。
客户端配置
这里使用的客户端为Shadowsocks,github地址:https://github.com/shadowsocks/shadowsocks-windows。
注意:要以PAC模式运行,如果选择全局模式,所有的访问都会使用shadowsocks;如果选择了PaC模式,则只有pac.txt中的网址才会使用shadowsocks。
注意防火墙开通相应的端口。
自定义规则
参考:http://honglu.me/2015/06/26/ShadowSocks%E8%87%AA%E5%AE%9A%E4%B9%89%E8%A7%84%E5%88%99/
从网上查阅的资料
编辑FGWList的用户规则
但我本地最后从FGWList更新本地pac时报错了
所以我是直接修改的pac.txt文件,在其中加入你想使用shadowsocks访问的网址,最后选择使用PAC模式即可。
多用户
如果希望多个用户使用shadowsocks服务,使用下面的配置替换password:xxx部分。
| 1 2 3 4 5 6 | “port_password”: { “8381”: “foobar1”, “8382”: “foobar2”, “8383”: “foobar3”, “8384”: “foobar4” }, |
问题
更新于2018-05-31.
某天shadowsocks服务不能使用了。
server端日志:
| 1 2 3 4 5 6 7 8 9 10 11 12 | 2018-05-31 16:15:41.382 INFO: Connecting clients1.google.com:443 from 183.62.174.53:48977 2018-05-31 16:15:44.649 INFO: Connecting clients1.google.com:443 from 183.62.174.53:49021 2018-05-31 16:15:44.665 INFO: Connecting clients1.google.com:443 from 183.62.174.53:49032 2018-05-31 16:15:50.803 INFO: Connecting clients1.google.com:443 from 183.62.174.53:49103 2018-05-31 16:15:56.177 INFO: Connecting www.google.com:443 from 183.62.174.53:49199 2018-05-31 16:15:56.185 INFO: Connecting www.google.com:443 from 183.62.174.53:49200 2018-05-31 16:16:11.364 DEBUG: Local socket: The remote host closed the connection 2018-05-31 16:16:14.637 DEBUG: Local socket: The remote host closed the connection 2018-05-31 16:16:14.654 DEBUG: Local socket: The remote host closed the connection 2018-05-31 16:16:20.794 DEBUG: Local socket: The remote host closed the connection 2018-05-31 16:16:26.164 DEBUG: Local socket: The remote host closed the connection 2018-05-31 16:16:26.172 DEBUG: Local socket: The remote host closed the connection |
更换了算法、端口还是不行,客户端更新版本也不行,最后更新服务端版本后ok了。这里使用的版本是:shadowsocks-libqss-v2.0.2-win64.7z。
PS:有问题先看看github上相关的Issues。