WireGuard 加密通信
目录
第 1 节 概述
在使用 NAS 的过程中,并非所有 Docker 应用都需要暴露在公网环境中。为了提升安全性,我们通常希望某些应用仅限于内网访问。然而,这也意味着当我们身处外网时,无法直接访问这些内网应用。
要实现外网访问内网应用的便利性,同时保持安全性,最佳解决方案就是通过 VPN 连接。
WireGuard 是一个简单、高效、安全的 VPN 协议,主要用于加密网络通信。其基本原理可以分为以下几个核心部分:
-
点对点加密连接:
- WireGuard 使用 公钥加密 进行身份验证和加密通信。每个节点都有一个 私钥 和 公钥,公钥用于标识节点并加密数据,私钥用于解密。
- 客户端和服务器之间通过交换公钥来建立加密连接,而不需要传统的 SSL/TLS 证书。
-
无状态加密:
- WireGuard 的加密过程是无状态的。每个数据包都包含足够的信息来验证其来源、加密内容和有效性,避免了传统 VPN 协议中复杂的会话管理和密钥交换过程。
- 它使用 ChaCha20(用于加密)、Poly1305(用于认证)等现代加密算法,确保了安全性和性能。
-
简单配置:
- WireGuard 的配置文件非常简洁,客户端和服务器配置都只需定义各自的公钥、私钥以及允许的 IP 地址和端口。相比 OpenVPN 和 IPsec,WireGuard 更容易配置和管理。
-
高效性和低延迟:
- WireGuard 设计目标之一是低延迟和高效性,因此在性能上比传统 VPN 协议(如 OpenVPN 和 IPsec)更优。它比其他 VPN 协议消耗更少的资源,能够更快速地建立和维护连接。
可以去这个网站下载WireGuard
摘要
下文主要讲述如何部署 WireGuard 的服务器端和客户端,分别部署好服务器端和客户端就可以实现 WirdGuard 的点对点加密连接了
第 2 节 部署服务器端
信息
服务器端和客户端本质上没有什么区别,因为 WireGuard 就是点对点连接的,有公网 IP 的就是服务器端,没有的就是客户端。
2.1 下载 WireGuard
威联通自带应用 QVPN,可以直接部署 WireGuard 服务器,当然,也可以用 Docker 去部署一个WireGuard 服务器。
2.2 配置服务器

- 生成服务器端的公钥和私钥,公钥复制出来备用
- 监听端口设置一个自己喜欢的端口号
2.3 配置对等节点

客户端公钥在配置客户端时再获取
第 3 节 部署客户端
3.1 下载 WireGuard
可以去这个网站下载WireGuard
3.2 配置客户端
添加一个空隧道,自动会生成客户端的公钥和私钥

填写好服务器端的相关参数
|
|
第 4 节 实际效果
使用客户端连接服务器端以后,服务器端就会建立一个局域网,服务器端的虚拟IP地址就是198.18.7.1,客户端的虚拟IP地址就是198.18.7.2,他们两个在一个网段,所以能够互相连接
在我这边大概就是这个效果:
客户端可以正常连接

服务器端显示连接信息

正常打开部署在内网的应用
