WireGuard VPN for Ubuntu
WireGuard VPN for Ubuntu
WireGuard 简介
WireGuard是具有最新加密技术的现代VPN(虚拟专用网)技术。与IPsec和OpenVPN等其他类似解决方案相比,WireGuard更快,更易于配置且性能更高。它是一个跨平台,几乎可以在任何地方运行,包括Linux,Windows,Android和macOS。 Wireguard是对等VPN。它不使用客户端-服务器模型。根据其配置,对等方可以充当传统的服务器或客户端。 WireGuard通过在充当隧道的每个对等设备上创建网络接口来工作。对等体通过交换和验证公共密钥(类似于SSH模型)来相互认证。公钥与隧道中允许的IP地址列表进行映射。 VPN流量封装在UDP中。在本教程中,我们将在充当VPN服务器的Ubuntu 18.04计算机上设置WireGuard。我们还将向您展示如何将WireGuard配置为客户端。客户端的流量将通过Ubuntu 18.04服务器进行路由。此设置可用于防御中间人攻击,匿名浏览网络,绕过受地域限制的内容,或允许您的同事在远程工作时安全地连接到公司网络。
WG安装
- 更新软件包列表,并安装管理系统存储库所需的工具:
- 添加 WireGuard 仓库:
出现提示时,按Enter键继续。 add-apt-repository也将自动更新软件包列表。
- 安装WireGuard软件包:
WireGuard作为内核模块运行,该模块被编译为DKMS
模块。成功完成后,您将看到以下输出:
更新内核时,需要将针对新内核编译WireGuard模块。
配置WG
WireGuard 程序包附带了两个名为wg
和wg-quick
的命令行工具,可用于配置和管理WireGuard接口。
运行以下命令以生成公钥和私钥:
:information_source: 公私钥放置于/etc/wireguard
目录,其中私钥绝对不能与任何人共享
生成密钥后,我们需要配置路由VPN的隧道设备
可以使用ip和wg从命令行设置设备,也可以使用文本编辑器创建配置文件。
创建一个名为wg0.conf
(文件名可以随意)的新文件,并添加以下内容:
修改privatekey
和wg0.conf
的权限, 保证其安全性:
完成后,使用配置文件中指定的属性启动wg0
接口:
运行wg show wg0
检查接口状态和配置:
也可以运行ip a show wg0
来验证接口状态:
设置wireguard 开机自启:
服务器网络和防火墙配置
为了使NAT
正常工作,我们需要启用IP转发,打开/etc/sysctl.conf
文件,并添加或取消注释以下行:
修改完成之后, 执行sudo sysctl -p
使配置永久生效
如果你使用UFW
来管理防火墙,则需要在端口51820上打开UDP通信:
至此,WG SERVER 已完成配置
客户端配置
Linux & macOS
去往官方下载站点(https://wireguard.com/install/), 查看如何安装WireGuard
-
macOS App Store: https://apps.apple.com/us/app/wireguard/id1441195209?ls=1
-
Ubuntu ≤ 19.04 [module – v1.0.20200413 & tools – v1.0.20200319]
设置Linux和macOS客户端过程基本相同, 首先生成公钥与私钥
创建/etc/wireguard/wg0.conf
并添加以下内容:
Windows
直接下载客户端工具: https://download.wireguard.com/windows-client/wireguard-amd64-0.1.0.msi
安装好软件之后, 点击左下角的Add Tunnel
, 创建一个新的隧道Create new tunnel
name
随便起喽, 内容如下:
将客户端对等方添加到服务器
最后一步是将客户端公钥和IP地址添加到服务器:
确保使用在客户端计算机上生成的公用密钥·(sudo cat /etc/wireguard/publickey
)·更改CLIENT_PUBLIC_KEY
并调整客户端IP地址(如果不同的话),Windows用户可以从WireGuard软件当中复制公钥
Linux 和 macos 客户端
在Linux客户端上,运行以下命令以打开界面:
现在,应该已连接到Ubuntu服务器,并且来自客户端计算机的流量应通过该服务器进行路由,可以使用以下方法检查连接:
停止和关闭隧道:
Windows 客户端
点击软件上的Activate
即可
一键安装 wireguard
参考链接
- wireguard Quick Start : https://www.wireguard.com/quickstart/
- wireguard Install : https://www.wireguard.com/install/