下面,我将讨论如何使用WireGuard将VPN提供商替换为部署在DigitalOcean上的自己的服务器。
VPN提供商的主要问题是什么? 您不知道它们如何处理您的数据。
很少有VPN供应商通过第三方审核,几乎没有一家开放其代码。
即使在开放源代码和审核通过的情况下,对于偏执狂的人来说,提供方方面正在发生的问题仍然是开放的。
解决方案非常简单-部署您的VPN节点。
我想简单一点
网络上有很多关于如何配置WireGuard的文章,其中一些是:
但是,如果我只想安装WireGuard而又不深入研究文档怎么办?
我只想要最简单,最快的方式来部署VPN服务器并开始使用它。
我所需要的全部来自基础架构:
以下是有关如何快速轻松地执行此操作的说明。
创建一个小滴
首先,您需要在DigitalOcean上创建一个新的Droplet: https ://www.digitalocean.com/docs/droplets/how-to/create/
最简单的c Ubuntu 18.04适合我,每月收费5美元。
不要忘记添加SSH密钥以访问Droplet: https : //www.digitalocean.com/docs/droplets/how-to/add-ssh-keys/
备注。 不是唯一的选择DigitalOcean。 您可以选择自己喜欢的任何云服务。
安装WireGuard服务器并创建所有必需的配置
要自动创建所有必需的配置,可以使用脚本: wg-ububtu-server-up.sh ,该脚本:
- 安装所有必需的软件
- 配置iptables规则并启用IPv4转发
- 安装未绑定为dns解析器
- 将创建服务器配置和所需数量的客户端配置
- 将启动WireGuard
通过SSH与Droplet建立连接,并运行以下命令来下载并运行脚本(使用Droplet的IP地址而不是xxx.xxx.x.xx):
ssh root@xxx.xxx.x.xx wget https://raw.githubusercontent.com/drew2a/wireguard/master/wg-ububtu-server-up.sh chmod +x ./wg-ububtu-server-up.sh ./wg-ububtu-server-up.sh 10
执行脚本后,WireGuard服务器将安装,运行并准备与客户端一起使用。
WireGuard正确启动的迹象是,运行脚本后,您应该会看到类似于控制台的内容:
interface: wg0 public key: +xxxEjj1qmxxxotq4OxxxfHPaxxxtre5xxxxOfxxw= private key: (hidden) listening port: 51820 peer: d1exxxLdCZcYxxxIQ0xxxxK/Wpx8G1N8xxvnUrxxxx= allowed ips: 10.0.0.2/32 peer: fWExxxazRxxxUOxxxx4JKgUTxxo9LaxxxxOGWtxxK0w= allowed ips: 10.0.0.3/32 ... peer: RbmxxxDxOoXMxxxcyate6xxxinIClxxDgRDxxxx0j0= allowed ips: 10.0.0.10/32
该脚本还将创建10个客户端配置[ client1.conf ... client10.conf ],您可以在一个设备上同时使用一种配置。
配置位于液滴中的以下文件夹中: $ HOME / wireguard /
备注。 您可以在不使用脚本的情况下手动配置WireGuard,但是这样做不符合“快速”和“没有深入研究文档”的定义。 在下一篇文章中,如果对此感兴趣,我将讨论魔术脚本内部发生的情况。
备注2。 您可以合理地注意到,在同一DO中使用已经准备好的映像甚至不运行任何脚本甚至更加容易。 我同意,但是我会提请您注意以下事实:在建议的脚本中只有100行代码,可以很容易地验证其中没有犯罪。 在完成的图像中,这比较困难。
备注3。 建立与小滴( ssh )的连接的命令在* nix类的操作系统上有效。 如果您使用Windows,请使用winscp , PuTTY或其他类似的应用程序。
安装桌面客户端
从https://www.wireguard.com/install/下载WireGuard桌面应用程序并进行安装。
从您的Droplet(使用Droplet的IP地址而不是xxx.xxx.x.xx)下载客户端配置(假设您要使用client1.conf配置):
scp root@xxx.xxx.x.xx:"~/wireguard/client1.conf" ~/Desktop/
启动WireGuard的桌面版本,并从下载的客户端配置( client1.conf )中导入隧道。
备注。 下载命令( scp )在*类nix的操作系统上运行。 如果您使用Windows,请使用winscp或其他类似的应用程序。
备注2。 您也可以使用不带GUI的WireGuard版本,并使用相同的客户端配置。
安装手机客户端
通过AppStore或PlayMarket安装WireGuard应用。
运行它并通过QR码导入VPN隧道。
如何获取QR码
您可以通过连接到Droplet (使用Droplet的IP地址,而不是xxx.xxx.x.xx)来生成QR码并执行命令(以防您使用客户端配置client2.conf ):
ssh root@xxx.xxx.x.xx qrencode -t ansiutf8 < ~/wireguard/client2.conf
谢谢啦