免费搭建wireguard VPN,实现高速、现代、安全的科学上网

WireGuard是现代、高速、安全的VPN,WireGuard 不同于 IPSec ,它的设计简单(目前整体只有几千行代码),在不使用的情况下默认不会传输任何 UDP 数据包,而且能够无缝漫游在不同的 IP 地址间,这些特定都使它特别适合于移动设备的使用。目前 WireGuard 基于 Linux 内核实现,得到了 Linux 内核主要维护者 Greg KH 的肯定。下面介绍如何在 Ubuntu 16.04 搭建使用 WireGuard 。

视频教程:YouTube



搭建步骤

下载安装 WireGuard (服务器端)
$ sudo add-apt-repository ppa:wireguard/wireguard
$ sudo apt-get update
$ sudo apt-get install wireguard
配置
创建KEY
umask 077
wg genkey | tee privatekey | wg pubkey > publickey
wg genkey
配置服务端相关参数,创建并编辑 /etc/wireguard/wg0.conf ,内容如下:(使用命令:vi /etc/wireguard/wg0.conf )
[Interface]
PrivateKey = <Private Key>
Address = 10.0.0.1/24
ListenPort = 10443
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
SaveConfig = true
其中 PrivateKey 通过命令 wg genkey 生成。

启动、关闭wireguard服务端
wg-quick up wg0
wg-quick down wg0
可以通过命令 wg 检查启动是否成功,成功的话会输出如下内容:

interface: wg0
  public key: xxxxxxxxxx
  private key: (hidden)
  listening port: 10443
将 WireGuard 设置成开机启动
$ systemctl enable wg-quick@wg0
额外的配置
为了让VPN能正常工作,需要启用ipv4的ip_forward功能:

$ sysctl -w net.ipv4.ip_forward=1
手机端的配置:

安装:直接在Play商店中或者F-的Droid上下载WireGuard。配置:
WireGuard-Android的配置

姓名:自己起个名字
点击GENERATE,它会自动生成私钥/公钥
点击公钥,它会把公钥复制到剪贴版,之后要用到。
地址:填跟服务器端的配置里同样网段的IP,比如说10.0.0.2/24
DNS:我填了8.8.8.8,这个应该是可选的
添加一个同行,在同行里:
公钥:填服务器端生成的公钥
允许的IP:填0.0.0.0/0,允许所有IP(这个很重要,否则即使连上了VPN,也无法访问别的网站)
Endpoint:填服务器的IP:端口(比如上面服务端的配置10443)
这样手机端的配置也好了。

服务端添加客户端
再次回到服务器,添加这个手机的公钥

sudo wg set wg0 peer <android-public-key> allowed-ips 10.0.0.2/24
这样,所有的配置都弄好了,在手机上打开WireGuard,启动刚才配置好的服务,享受自由科学上网。

PC端的配置:

在https://tunsafe.com/download下载相应的客户端



配置文件
[Interface]
PrivateKey = <Private Key>
Address = 10.0.0.2/24
DNS = 8.8.8.8
[Peer]
PublicKey = xxxxxxxxxx
Endpoint = <Server Public IP>:10443
AllowedIPs = 0.0.0.0/0
把上述内容复制到记事本,做相应的更改,另存为XXX.conf文件。把这个XXX.conf文件复制到客户端Tunsafe安装目录下的config文件夹内。打开Tunsafe并选择刚才的XXX,这就完成了PC端的配置。

PS:因为wireguard VPN是点对点的模式,所以不能手机端和PC端同时使用。

谷歌云一键搭建 Shadowsocks 详细图文教程

开放防火墙 由于谷歌云是国际大厂,跟常见的一些 VPS 商家有少许不同,所以需要开放外部防火墙。 打开 GCP 控制台,点开左边菜单 VPC 网络 》防火墙规则 》创建防火墙规则  (备注:如果你还没有项目,会提示你需要创建项目,自行创建即可) 点击》创建防...

热文