我有3个网络A B C 现在需要C通过B连接到A。 中间使用wireguard进行通讯。同时A需要作为wireguard server的方式存在。如何在linux上进行如上配置
在Linux上进行如上配置,您可以按照以下步骤执行:
-
安装WireGuard:在A、B、C三台机器上分别安装WireGuard。可以通过以下命令在每台机器上安装:
sudo apt update sudo apt install wireguard -
生成密钥对:在A上生成WireGuard服务器的密钥对,可以使用以下命令:
wg genkey | tee privatekey | wg pubkey > publickey这将生成私钥和公钥,其中私钥将保存在
privatekey文件中,公钥将保存在publickey文件中。 -
配置WireGuard服务器:在A上创建WireGuard服务器配置文件。可以使用以下命令创建一个新文件并将以下内容添加到文件中(将其中的
<PRIVATE_KEY>替换为您在第2步生成的私钥):sudo nano /etc/wireguard/wg0.conf[Interface] Address = 10.0.0.1/24 ListenPort = 51820 PrivateKey = <PRIVATE_KEY> [Peer] PublicKey = <PEER_PUBLIC_KEY> AllowedIPs = 10.0.0.2/32 -
启动WireGuard服务器:在A上启动WireGuard服务器,使用以下命令:
sudo wg-quick up wg0 -
配置WireGuard客户端:在B和C上创建WireGuard客户端配置文件。可以使用以下命令创建一个新文件并将以下内容添加到文件中(将其中的
<PRIVATE_KEY>和<SERVER_PUBLIC_KEY>替换为您在第2步生成的私钥和A的公钥):sudo nano /etc/wireguard/wg0.conf[Interface] Address = 10.0.0.2/24 PrivateKey = <PRIVATE_KEY> [Peer] PublicKey = <SERVER_PUBLIC_KEY> Endpoint = <A_PUBLIC_IP>:51820 AllowedIPs = 0.0.0.0/0 -
启动WireGuard客户端:在B和C上启动WireGuard客户端,使用以下命令:
sudo wg-quick up wg0
现在,C将通过B连接到A,并且可以使用10.0.0.1作为A的IP地址进行通信。您可以在其他应用程序中使用该IP进行网络通信。请确保在防火墙中允许WireGuard流量通过端口51820
原文地址: http://www.cveoy.top/t/topic/hVDr 著作权归作者所有。请勿转载和采集!