如何在 Debian 10 VPS 上安装 Shadowsocks-Libev 代理服务器

本教程将向您展示如何 在 Debian 10 VPS(虚拟专用服务器)上安装 Shadowsocks 代理服务器. Shadowsocks 是一款轻量级、超快速且安全的 Socks5 代理,可用于绕过互联网审查。 您还将学习如何 在 Debian 10 桌面上设置 Shadosocks-libev 客户端.

Shadowsocks 的实现有很多,本教程教你如何使用Shadowsocks-libev,因为

  • 它是用 C 编写的,即使在低端机器上也非常快。
  • 它维护得很好。
  • 这是功能最丰富的实现。 支持 TCP 快速开放、多用户、管理 API、重定向模式、隧道模式、UDP 中继、AEAD 密码和插件。

先决条件

要完成本教程,您需要:

  • VPS(虚拟专用服务器)。 我推荐 Vultr。 他们提供 512M 内存的高性能 KVM VPS,每月只需 2.5 美元,非常适合您的私人代理服务器。
  • 然后在您的 VPS 上安装 Debian 10。

如何在 Debian 10 VPS 上安装 Shadowsocks-libev 服务器

在 VPS 上安装 Debian 10 后。 通过 SSH 登录您的服务器。 Shadowsocks-libev 包含在默认的 Debian 10 存储库中,但它已经过时了。 事实上,过时的版本不再在我的服务器上运行。 我建议从 Debian 10 buster-backports 存储库安装它,其中包含最新版本的 Shadowsocks-libev,以便您获得安全更新和错误修复。

要启用 buster-backports 存储库,请运行以下命令。

echo "deb https://deb.debian.org/debian buster-backports main" | sudo tee /etc/apt/sources.list.d/buster-backports.list

然后更新本地包索引。

sudo apt update

之后,从 buster-backports 存储库安装 Shadowsocks-libev。

sudo apt -t buster-backports install shadowsocks-libev

要检查版本号,请运行

ss-server -v

示例输出:

shadowsocks-libev 3.3.4

钠加密库 (libsodium) 将与 shadowsocks-libev 一起安装。 如果您想使用安全且快速的 ChaCha20-Poly1305 加密方法,这是一项要求。 安装后,Shadowsocks-libev 将自动使用默认配置文件启动。 您可以通过以下方式检查其状态:

systemctl status shadowsocks-libev

输出:

 shadowsocks-libev.service - Shadowsocks-libev Default Server Service    Loaded: loaded (/lib/systemd/system/shadowsocks-libev.service; enabled; vendor preset: enabled)    Active: active (running) since Tue 2020-06-23 13:33:46 UTC; 14s ago      Docs: man:shadowsocks-libev(8)  Main PID: 20316 (ss-server)     Tasks: 1 (limit: 558)    Memory: 552.0K    CGroup: /system.slice/shadowsocks-libev.service            └─20316 /usr/bin/ss-server -c /etc/shadowsocks-libev/config.json

提示:如果上面的命令没有立即退出,请按 重新获得对终端的控制权。

如您所见,它正在运行并且启动时自动启动已启用。 如果它没有运行,您可以使用以下命令启动它:

sudo systemctl start shadowsocks-libev

要在启动时启用自动启动,请运行:

sudo systemctl enable shadowsocks-libev

现在我们需要编辑默认配置文件。

sudo nano /etc/shadowsocks-libev/config.json

文件的默认内容如下。

{  "server":"127.0.0.1",  "server_port":8388,  "local_port":1080,  "password":"focobguph",  "timeout":60,  "method":null }

将 127.0.0.1 替换为您的 Debian 服务器的公共 IP 地址。 你可以改变 server_port 到其他端口号,但不要使用端口 8388。然后设置您的首选密码,用于加密流量。 建议您更换 nullchacha20-ietf-poly1305 作为加密方法。 这是我的配置示例。

Save 和 close 文件。 然后重新启动 Shadowsocks-libev 以使更改生效。

sudo systemctl restart shadowsocks-libev

在 Debian 10 桌面上安装和配置 Shadowsocks-libev 客户端

shadowsocks-libev 包包含服务器软件和客户端软件。 所以只需使用上面提到的方法在 Debian 10 桌面上安装 Shadowsocks-libev。

注意:在 Debian 10 上,Shadowsocks-libev(服务器)安装后会自动启动。 您需要在 Debian 10 桌面上停止 Shadowsocks 服务器。

sudo systemctl stop shadowsocks-libev

另外,在启动时禁用自动启动。

sudo systemctl disable shadowsocks-libev

Shadowsocks 客户端二进制文件被命名为 ss-local. 有一个模板 systemd 服务单元: /lib/systemd/system/[email protected]. 在启动客户端之前,我们需要创建客户端配置文件。

sudo nano /etc/shadowsocks-libev/location-of-your-server.json

你可以更换 location-of-your-server 像 SFO、LAX 这样的东西。 将 Shadowsocks-libev 服务器配置复制到客户端配置文件,然后添加以下行告诉客户端侦听 127.0.0.1。

"local_address":"127.0.0.1",

因此,客户端配置文件将如下所示:

{  "server":"your-server-ip-address",  "server_port":8388,  "local_address":"127.0.0.1",  "local_port":1080,  "password":"focobguph",  "timeout":60,  "method":"chacha20-ietf-poly1305" }

Save 和 close 文件。 然后我们可以启动客户端:

sudo systemctl start [email protected]location-of-your-server.service

并在启动时启用自动启动。

sudo systemctl enable [email protected]location-of-your-server.service

检查其状态。 确保它正在运行。

systemctl status [email protected]location-of-your-server.service

现在 ss-local 进程在您的 Ubuntu 桌面上侦听 127.0.0.1:1080 并且它已连接到您的 Shadowsocks 服务器。

配置 Web 浏览器以使用 Socks 代理

要让您的程序使用socks 代理,程序必须支持socks 代理。 火狐量子、谷歌浏览器和 Dropbox 等程序允许用户使用代理。 我将向您展示如何配置 Firefox 和 Google Chrome。

火狐

在 Firefox 中,转到 编辑 > 喜好 > 一般的. 然后向下滚动到底部并单击 设置网络代理. 在里面 连接设置 窗口,选择 手动代理配置. 然后选择 袜子 v5 因为 Shadowsocks 是 Socks5 代理。 Enter SOCKS 主机字段中的 127.0.0.1 和端口字段中的 1080。 确保 使用 SOCKS v5 时的代理 DNS 已启用。 单击“确定”以应用这些修改。