2. 云服务器安装wireguard
1. 查看内核版本¶
uname -r
# wireguard 需要内核5.4以上!
# 如果没达到,则需要安装5.4以上的内核!
root@baiduyun:~# uname -r
5.4.0-81-generic
2. 环境准备¶
# 公网IP:
#已有7
#新加1
# 准备创建的内网IP为
10.0.8.1
10.0.8.2
10.0.8.3
10.0.8.4
10.0.8.5
10.0.8.6
10.0.8.7
#新加
10.0.8.8
3. 安装WireGuard¶
sudo apt install wireguard -y
4. 生成通信密钥¶
sudo -i
#1. 进入wireguard配置文件目录
cd /etc/wireguard
ls
#2. 生成公钥和私钥
wg genkey | tee privatekey | wg pubkey > publickey
#3.查看密钥
ls /etc/wireguard
5. 网络规划¶
代号 | WireGuard 内部使用 | 服务商给的公网 IP | 说明 |
---|---|---|---|
M1 | 10.0.8.1/24 | 此节点作为服务节点 | |
S1 | 10.0.8.2/24 | ||
S2 | 10.0.8.3/24 | ||
S3 | 10.0.8.4/24 | ||
S4 | 10.0.8.5/24 | ||
S5 | 10.0.8.6/24 | ||
S6 | 10.0.8.7/24 | ||
S7 | 10.0.8.8/24 | 新加 |
6. 创建S7节点的配置文件¶
1. 查看S7的私钥¶
# S7
cat /etc/wireguard/privatekey
root@baiduyun:/etc/wireguard# cat /etc/wireguard/privatekey
MEo87mTSXi/qoaukgPtCt7fK2r6SFqYmz2zA7E0W5FQ=
2. S7配置文件¶
# S7
vim /etc/wireguard/wg0.conf
[Interface]
Address = 10.0.8.8 #1 这里改为要设置的内网IP
SaveConfig = true
ListenPort = 49152
PrivateKey = MEo87mTSXi/qoaukgPtCt7fK2r6SFqYmz2zA7E0W5FQ= #2 这里需要改为自己的私钥
[Peer]
PublicKey = QTZwHHuNp2H97eff46Hm5WzXL8DWJ89q/0e1BdkYV08=
Endpoint = 120.27.220.47:49152
AllowedIPs = 10.0.8.0/24
7. 修改M1节点的配置文件¶
1. 查看S7的公钥¶
#S7
cat /etc/wireguard/publickey
root@baiduyun:/etc/wireguard# cat /etc/wireguard/publickey
ojM/eHQ4By7WjNHeAxkH+Jzs7S0PuXrKZbZZx0zHTx8=
2. 关闭master上的wg0网络¶
# M1,貌似不关闭的话,修改不了配置文件!
wg-quick down wg0
3. 修改M1配置文件¶
# M1
vim /etc/wireguard/wg0.conf
[Interface]
Address = 10.0.8.1
SaveConfig = true
ListenPort = 49152
PrivateKey = KIwSZNjGR8nt6hPGDy20VpbRGMSZyYfvOksestb9D0g=
[Peer]
PublicKey = /RQdv4PgvrlO5E4Y3tDntYSSt4MXQQMdZN9hbpRzhWw=
Endpoint = 81.70.42.71:49152 # 这一行不加应该也可以???
AllowedIPs = 10.0.8.2/32
[Peer]
PublicKey = LH7tpf6/Os/ul8mH4pFu/0rnjosY3gcsiwKRJZyd1G4=
Endpoint = 81.70.4.171:49152
AllowedIPs = 10.0.8.3/32
[Peer]
PublicKey = WCaTti5cPes194M/sqKPhzwDHYD0FYbJH5LblA9QKDo=
Endpoint = 52.53.223.25:49152
AllowedIPs = 10.0.8.4/32
[Peer]
PublicKey = pV4NzZe2H9UteVkfoAWSUayT3o8hjaLU60jpcxZNmAQ=
AllowedIPs = 10.0.8.5/32
Endpoint = 42.192.132.182:49152
[Peer]
PublicKey = wPEOl9+9fFa3O6HHSmvxaxPlZy4HN4gCTY/q/vOZIS8=
AllowedIPs = 10.0.8.6/32
Endpoint = 139.198.106.219:49152
[Peer]
PublicKey = JVGUiRsVVg7VEVgZqnPhXCya0ZMC12xmX9CTiZL2imM=
AllowedIPs = 10.0.8.7/32
Endpoint = 124.70.191.191:49152
# 新加下面4行,
[Peer]
PublicKey = ojM/eHQ4By7WjNHeAxkH+Jzs7S0PuXrKZbZZx0zHTx8= #1 改为s7的publickey
AllowedIPs = 10.0.8.8/32 #2 改为10.0.8.8/32
# Endpoint = 120.48.19.219:49152 #3 这个貌似不写也行,本机的IP
8. 开启防火墙¶
# all
# 由于都是使用的49152端口,所以防火墙需要开启 udp/49152
9. master节点启动网络接口¶
# master
wg-quick up wg0
root@ali:~# wg-quick down wg0
[#] wg showconf wg0
[#] ip link delete dev wg0
root@ali:~#
root@ali:~#
root@ali:~#
root@ali:~# vim /etc/wireguard/wg0.conf
root@ali:~#
root@ali:~# wg-quick up wg0
[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.0.8.1/32 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] ip -4 route add 10.0.8.7/32 dev wg0
[#] ip -4 route add 10.0.8.6/32 dev wg0
[#] ip -4 route add 10.0.8.5/32 dev wg0
[#] ip -4 route add 10.0.8.4/32 dev wg0
[#] ip -4 route add 10.0.8.3/32 dev wg0
[#] ip -4 route add 10.0.8.2/32 dev wg0
10. S7启动网络接口¶
# s7
wg-quick up wg0
root@huawei:/etc/wireguard# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.111 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::f816:3eff:fe56:f1a2 prefixlen 64 scopeid 0x20<link>
ether fa:16:3e:56:f1:a2 txqueuelen 1000 (Ethernet)
RX packets 32060 bytes 36953037 (36.9 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 16144 bytes 1796663 (1.7 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 390 bytes 36102 (36.1 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 390 bytes 36102 (36.1 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wg0: flags=209<UP,POINTOPOINT,RUNNING,NOARP> mtu 1420
inet 10.0.8.7 netmask 255.255.255.255 destination 10.0.8.7
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 1000 (UNSPEC)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
11. S7内网互通测试!¶
# S6
ping 10.0.8.1 -c 2
ping 10.0.8.2 -c 2
ping 10.0.8.3 -c 2
ping 10.0.8.4 -c 2
ping 10.0.8.5 -c 2
ping 10.0.8.6 -c 2
最后更新:
2022-02-18 07:50:18