28
2025
03
14:57:39

使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公

使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公

之前也听说过WireGuard,身边也有不少亲戚朋友在用,听说是一种极其简单但快速且现代的 VPN。它的目标是比IPsec更快、更简单、更精简、更有用,比 OpenVPN 性能更高。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



WireGuard利用先进的加密技术,并且覆盖了几乎所有的常见的操作系统,可以广泛部署。据说目前被认为是业内最安全、最容易使用和最简单的 VPN 解决方案

之前讲IPsec(IPsec系列)的时候就有小伙伴让介绍一下WireGuard,终于安排上了。

官网用了一段2分25秒的无剪辑、无倍速的视频介绍了如何快速部署WireGuard,乍一看是很简单,但他它所使用的两台主机是同一网段的,我们对环境做一下简单升级,使用3台不用网段的主机来测试一下。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



组网需求



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



3台主机分别位于网关路由器下的3个不同网段,PCA和PCB、PCC之间分别建立IPsec隧道,对PCA和PCB、PCA和PCC之间的数据流进行安全保护。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



组网图



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



CentOS快速配置WireGuard实验组网图。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公





使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



实验环境



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



VMWare ESXi 6.7.0(ProLiant DL360 Gen9,48核心,128G内存)

H3C VSR1000(Version 7.1.064, Release 0621P18,4核心,8G内存)

CentOS Linux release 7.9.2009 (Core,8核心,16G内存)



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



配置步骤



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



首先按照组网图所示配置各接口的IP地址,然后我们需要先安装WireGuard软件。官网共介绍了3种安装方式,正好我们用3台主机分别测试一下。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



PCA

使用CentOS的kernel-plus内已签名的模块进行安装。

yum install -y yum-utils epel-release

yum-config-manager --setopt=centosplus.includepkgs=kernel-plus --enablerepo=centosplus --save

sed -e 's/^DEFAULTKERNEL=kernel$/DEFAULTKERNEL=kernel-plus/' -i /etc/sysconfig/kernel

yum install -y kernel-plus wireguard-tools



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



PCB

如果希望使用标准内核,可以使用 ELRepo 的预构建模块进行安装。

yum install -y epel-release elrepo-release

yum install -y yum-plugin-elrepo

yum install -y kmod-wireguard wireguard-tools



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



PCC

如果您运行的是非标准内核,可以使用 DKMS 包。我是标准内核,试试能不能用。

yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

curl -o /etc/yum.repos.d/jdoss-wireguard-epel-7.repo https://copr.fedorainfracloud.org/coprs/jdoss/wireguard/repo/epel-7/jdoss-wireguard-epel-7.repo

yum install -y wireguard-dkms wireguard-tools


安装完毕后,输入wg命令可以看到是否安装成功

 wg -v

wireguard-tools v1.0.20210914 - https://git.zx2c4.com/wireguard-tools/


使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公

接下来开始配置WireGuard,好在配置是通过命令行界面配置的,后续要二次加工会方便得多。

首先给PCB添加一个新接口,然后给接口配置一个IP地址。

ip link add dev wg0 type wireguard

ip address add dev wg0 10.1.1.2/24



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



WireGuard需要base64编码的公钥和私钥,可以使用程序自动生成:

umask 777

wg genkey > privatekey

[root@localhost ~]# cat privatekey

yJM/v1Oy/ddwniziHokR3A9ILQneqwtNIpA8A53s4Uo=

wg pubkey < privatekey > publickey

[root@localhost ~]# cat publickey

ZTwqy6eA2exFjIp4Gqll57FFu99ND97wRCkPv0ZNGVU=

设置WireGuard使用的私钥。

wg set wg0 private-key privatekey

使能接口wg0。

ip link set up dev wg0

在PCA上重复上述操作。

ip link add dev wg0 type wireguard

ip address add dev wg0 10.1.1.1/24

umask 777

wg genkey > privatekey

wg pubkey < privatekey > publickey

wg set wg0 private-key privatekey

ip link set up dev wg0

接下来要在两台设备上配置对等体和密钥信息,endpoint配置对端可访问的IP地址,allowed-ips配置wg0的IP地址,密钥使用对端的公钥信息。

以PCB为例,可以通过命令查看本地信息。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



然后在PCA上进行配置。

wg set wg0 peer ZTwqy6eA2exFjIp4Gqll57FFu99ND97wRCkPv0ZNGVU= allowed-ips 10.1.1.2/32 endpoint 12.1.1.2:53109

同样的,在PCB上配置PCA的相关信息。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



wg set wg0 peer spLWYU+3fL0kkaT0BO/D0gO2B+xY/hhZbQx3B3a+WRw= allowed-ips 10.1.1.1/32 endpoint 11.1.1.2:40846

配置完成之后可以看到VPN建立状态。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



进行PING测试,可以看到,跳数减1,隧道建立正常。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



到这里,PCA和PCB的隧道就建立完了。我们还有一台PCC可以用,也和PCA建立一条隧道。但是我们发现,密钥复杂可以理解,但是这个端口也不规则,那就调整一下吧。

在PCC上操作配置如下:

ip link add dev wg0 type wireguard

ip address add dev wg0 10.1.1.3/24

umask 777

wg genkey > privatekey

wg pubkey < privatekey > publickey

wg set wg0 private-key privatekey

ip link set up dev wg0

wg set wg0 listen-port 10086 peer spLWYU+3fL0kkaT0BO/D0gO2B+xY/hhZbQx3B3a+WRw= allowed-ips 10.1.1.1/32 endpoint 11.1.1.2:40846

wg



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



对应的,在PCA上添加一下到PCC的信息。

wg set wg0 peer g4wJRsQFR8w8sEjRIfgVMbThxJyapVg3o2UfaDs1SCM= allowed-ips 10.1.1.3/32 endpoint 13.1.1.2:10086

测试一下,访问正常。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公





使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



验证配置



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



现在通过简单的配置,我们已经实现PCA-PCB和PCA-PCC之间的互通,并且配置的wg0接口地址都在同一网段,那么PCB和PCC能不能通信呢?



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



可以看到,虽然PCB、PCC都和PCA建立了隧道,并且在同一网段,但是还是不能直接通信,那如果想通信要怎么办呢?

其实这时就成了Full-Mesh的网络结构,变更也很简单,对应的再增加两条互联配置就可以了。

在PCB上添加一下到PCC的信息。

wg set wg0 peer g4wJRsQFR8w8sEjRIfgVMbThxJyapVg3o2UfaDs1SCM= allowed-ips 10.1.1.3/32 endpoint 12.1.1.2:10086

在PCC上添加一下到PCB的信息。

wg set wg0 peer ZTwqy6eA2exFjIp4Gqll57FFu99ND97wRCkPv0ZNGVU= allowed-ips 10.1.1.2/32 endpoint 12.1.1.2:53109

此时网络结构就是全互联的了。



使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公



好像使用起来确实很简单,安装的时候如果没有特殊需求,推荐使用方法二,仅需3条命令即可完成安装;然后仅需8条命令即可完成互联配置,一共只需要11条命令,怪不得2分25秒的视频就能讲明白,确实简单!




推荐本站淘宝优惠价购买喜欢的宝贝:

使用8条命令即可完成的VPN配置!CentOS快速配置WireGuard全互联组网 实现远程办公

本文链接:https://hqyman.cn/post/9897.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: