如何使用这个修改后的 Shadowsocks?
这个修改版的Shadowsocks是基于Shadowsocks-rust,我们也利用Shadowsocks-android来编译Android用户的apk文件。所有客户端和服务器端软件都可以在这个分支和这个版本中找到。
安装服务器
安装过程与安装任何其他服务器相同Shadowsocks-rust。
- 首先你登录到你的远程服务器,然后使用以下命令获取服务器二进制文件:
wget https://github.com/gfw-report/shadowsocks-rust/releases/download/v0.0.1-beta/shadowsocks-v1.15.0-alpha.9.x86_64-unknown-linux-gnu.tar.xz
tar xvf shadowsocks-v1.15.0-alpha.9.x86_64-unknown-linux-gnu.tar.xz
- 然后你创建一个配置文件:
sudo nano server_config.json
将以下设置复制并粘贴到文件中。请注意,您需要ExamplePassword用更强的密码替换密码。从您的终端执行此操作的一种简便方法是openssl rand -base64 16:您可能还想更改server_port.
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "ExamplePassword",
"method": "aes-256-gcm"
}
完成编辑后,键入Ctrl + x退出。文本编辑器会询问"Save modified buffer?",您可以键入y然后点击Enter。
- 现在您可以开始使用配置文件运行二进制文件,但要使其在结束 SSH 会话后仍能正常工作,您可能需要通过以下方式创建会话
tmux:
tmux
然后你做:
./ssserver -c ./server_config.json
最后,键入Ctrl + b然后键入d以从 tmux 会话中分离。
防火墙配置
我们用来ufw为 Shadowsocks 服务器打开端口。
ufw在基于 Debian 的服务器上安装:
sudo apt update && sudo apt install -y ufw
ssh然后为和开放端口Shadowsocks-rust。请注意,如果将 设置server_port为不同于8388in 的值server_config.json,则需要8388相应地更改以下值:
sudo ufw allow ssh
sudo ufw allow 8388
现在启用ufw:
sudo ufw enable
如果出现提示Command may disrupt existing ssh connections. Proceed with operation (y|n)?,请键入y并点击Enter。
最后,运行sudo ufw status,输出应如下所示:
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
8388 ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
8388 (v6) ALLOW Anywhere (v6)
客户端配置
下面是客户端的配置文件。请记住将server值从更改ExampleServerIP为远程服务器的公共 IP 地址。如果您使用的是andorid 并从我们提供的apk 文件中安装,则用法应该与往常一样。
{
"server": "ExampleServerIP",
"server_port": 8388,
"password": "ExamplePassword",
"method": "aes-256-gcm",
"local_address": "127.0.0.1",
"local_port": 1080
}