网路观察
网路观察

Remember, Ginger Rogers did everything that Fred Astaire did, but she did it backwards and in high heels. Photo by Lachlan on Unsplash

使用 Outline 在中国搭建安全高速的 VPN 的简要指南

很多人在中国会依靠海外的 VPN 服务来访问外国网站。这些服务往往很昂贵,而且在中国的可访问性和速度存疑。

更加经济的方案是自己租下一台 VPS 服务器并安装代理服务。谷歌旗下 Jigsaw 提供了一个很有用的工具 – Outline,它提供可视化界面,方便地让不懂技术的用户来安装和管理 VPN 服务。

Outline 的特点

Outline 很安全

Outline 使用 256 位 AEAD Chacha2020 IETF Poly 1305 加密算法来加密您设备和 Outline 服务器之间的通讯。AEAD 加密算法可确保机密性、完整性和真实性,在现代硬件上展现出了优越的性能。
Outline 不会在服务器记录日志。因此即使有人攻入你的服务器,他也不能看到你访问过的内容。

Outline 支持几乎所有操作系统。

它支持 Android、Windows、Chrome OS、iOS、macOS 和Linux。这些客户端都提供图形化界面。它也会持续维护这些客户端,保证他们的安全和兼容性。

Outline 会加密所有流量。

在桌面系统上,Outline 会创建一个虚拟网卡。在运行以后,Outline 会把你的所有流量(除开局域网之外)全部导向远程服务器。在使用体验上,它更像 VPN 而非代理。这一点上面,其他代理客户端都无法达到。

Outline 项目的网站是:https://getoutline.org/

也可以访问它的镜像页:https://s3.amazonaws.com/outline-vpn/index.html

购买服务器

Outline 默认推荐你使用 DigitalOcean 服务,但它在中国的速度并不理想。

我目前使用 Bandwagon 的 CN2-GIA 服务器。服务器位于美国,但是在中国的访问速度和稳定性都很高,丢包率极低。

低价的 CN2-GIA 服务器分为两种,点击如下链接可以进入购买页面。

DC9 CN2 GIA:$39.99/年,512MB 内存,10GB SSD 硬盘,300GB 月流量,1Gbps 带宽;
DC6 CN2 GIA-E:$49.99/年,512MB 内存,10GB SSD 硬盘,500GB 月流量,1Gbps 带宽。

这两种服务器均为限量供应。往往需要隔几个月才能订购,平时会显示无货。因此建议关注《搬瓦工补货推送》Telegram 频道,并在收到提醒以后立即订购:https://t.me/BandwagonHostNews

配置服务器

订购完毕以后,在 Client Area 的 Services 栏目当中选择 My Services。找到你的服务器,点击右侧的「KiWiVM Control Panel」。

首先,我们需要安装新的操作系统。点击「Install New OS」并选择最新的那个 Ubuntu 系统。写下此文时,最新版本为「Ubuntu 18.04」。打勾以后选择「Reload」。

此时你会得到你的「密码」和「端口号」。你需要把这两个信息以及你的服务器「IP 地址」一同记录下来,因为接下来你会用到这些信息。

接下来你需要登录到你的 VPS。你可以在 macOS,Android 和 iOS 上面安装 Termius 这一 app,或者在 iOS 上面使用 Hyperapp 这一 app 也可以(不过要付费购买)。

登录时,你需要输入服务器的「IP 地址」,「密码」和「端口号」。用户名就写 root。登录以后,先执行更新命令。

sudo apt-get update

这一命令用于检查更新。下一命令为安装更新。

sudo apt-get upgrade

系统会询问你是否确定安装。回复「Y」并按下 Enter。

  • 如果系统询问要保留现有文件还是安装新的文件,一律选择安装新的文件。
  • 如果系统询问是否要在安装时自动重新启动,选择是。
  • 如果系统询问语言相关,在默认的英文选择下按下 Enter。

在服务器安装 Outline 服务

等待安装完成后,在你的电脑上面安装 Outline Manager 并且运行。

Outline Manager 下载地址:macOSWindowsLinux

添加新的服务器,选择「Set up Outline anywhere」。

在 VPS 上面执行这一命令:

sudo bash -c "$(wget -qO-  https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh)"

高级用户亦可以指定 api 和密钥的端口号,例如:

sudo bash -c "$(wget -qO-  https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh)" \install_server.sh --keys-port=1209 --api-port=2383

其中,key-port 是密钥端口,有报告说降低位数可以避免干扰。

  • 如果系统询问是否安装 docker ,回复 Y 并按下 Enter。
  • 如果系统提示运行 curl 命令错误,那么可能你的系统没有安装 curl。执行以下命令安装 curl。
sudo apt-get install curl

等待安装完毕以后,屏幕上面会显示类似这样的一串字符:

{"apiUrl":"https://?????","certSha256":"?????"}

复制这段字符,把它粘贴到 Outline Manager 里面「Paste your installation output here.」的文字框并点击「Done」。

同时建议把这段字符保存到安全的地方,以便以后更换电脑系统的时候使用。

此时,服务器端的部署已经完成。接下来的操作均可在可视化界面当中完成。

分发和管理密钥

在 Outline Manager 当中点击「Add new key」。命名新的密钥,点击右侧的分享图标。在「Copy your access key:」下面找到「ss://」开头的一段字符。把这段字符保存在安全的地方。

在电脑/手机上面安装并启动 Outline 客户端。

Outline 客户端下载地址:macOSWindowsiOSAndroidLinuxChrome OS

需要注意,macOS 客户端可能在中国区 Mac App Store 不能下载。另外,上面 Android 客户端的安装要依赖于 Google Play Store 服务。

也可以用 Shadowsocks 客户端替代。

Shadowsocks 客户端下载地址:AndroidWindows

复制「ss://」开头的字符,点击客户端里面的「+」,按下键盘快捷键「Ctrl+V」或者「command+V」。点击「添加服务器」。

你作为管理员,随时可以在 Manager 里面增加或者删除一个密钥。在有多个用户的情况下,你可以为每一个人设定一个不同的密钥,并把每个密钥分发给不同人。而你作为管理员可以查看每个人的流量使用状况,也可以随时终止某个密钥的使用权限。

安装启用 BBR 拥堵控制技术

此时,Outline 已经可以使用,但是速度和稳定性依然会受到流量堵塞的影响。可以在服务器端启用 BBR 算法来降低这种影响。

详细的说明和步骤解释可以参见 imtx 的这篇文章。这里仅作简单说明。

为新内核装载 BBR 模块:

sudo modprobe tcp_bbr

echo "tcp_bbr" | sudo tee -a /etc/modules-load.d/modules.conf

装载后,再执行 sysctl net.ipv4.tcp_available_congestion_control 命令,你就可以看到 BBR 出现在输出结果里了。

接下去再正式启用它:

echo "net.core.default_qdisc=fq" | sudo tee -a /etc/sysctl.conf

echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee -a /etc/sysctl.conf

sudo sysctl -p

执行完这几条指令后,再用 sysctl net.ipv4.tcp_congestion_control 验证一下,看到返回结果是:

net.ipv4.tcp_congestion_control = bbr

日后更新和维护

  • 你应当定期登录 VPS 并且安装更新,就如同上面列出的步骤一样。
  • 你日后可能会在电脑上面重新安装系统或者重新安装 Outline Manger。这是否会导致你丧失管理权,或者丢失服务器密钥信息?不用担心,只要你保存好了{"apiUrl":"https://?????","certSha256":"?????"}这串字符,你只要在新的电脑环境上面运行 Manager,把这串字符粘贴到「Paste your installation output here.」的文字框并点击「Done」即可。


CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论