Wireguard服务器客户端搭建

Wireguard服务器客户端搭建

前言

虽然wireguard在官网文档里面并没有明确的服务端和客户端之分,两者在使用权限地位上是平等的,但是由于我们通过每一个接入终端的公钥私钥都在一个主机上生成,然后由这个主机分发密钥,因此我们将这个生成公私钥的主机成为服务端,其他所有设备都成为客户端。

服务端配置

本次网络环境配置中,选择公网云服务器作为服务器,这样做的好处就在其他客户端可以直接和服务端进行直连,以服务端为中心构建一个虚拟局域网,但是问题在于通过这样的方式,当客户端同时在线的主机数量比较多的时候,服务端的带宽压力会比较大。

Step1:更新安装wireguard

sudo apt update:更新系统具备的软件包

sudo apt install wireguard resolvconf -y:安装wireguard软件

Step2:允许服务端进行IP转发

echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf:允许服务端进行IP转发,在那个文件里面,原本这个IP转发的功能是被注释掉的

sysctl -p:生效

Step3:生成公私密钥

sudo su:先以root身份进行运行

cd /etc/wireguard/:进入到wireguard目录中

umask 777:调整目标默认的权限(其他教程里面写的是077,感觉麻烦直接777)

wg genkey > server.key:生成私钥

wg pubkey < server.key > server.key.pub:根据私钥生成公钥

这里就完成了公私密钥对的生成,这样就只是生成了一个,第一个是给服务端使用的,后续也需要为其他客户端生成对应的公司密钥对,因为都是通过wireguard软件生成的,所以在哪里制作这个公私密钥其实没什么关系。

Step4:配置文件的构建

首先是服务端:

[Interface]
PrivateKey = 自己的私钥
Address = xxx.xxx.xxx.xxx/24 自己定义的IP地址
ListenPort = 监听的端口(可以自定义但是注意打开端口访问权限)
PostUp=iptables -w 5 -I FORWARD -i %i -o %i -j ACCEPT
PreDown=iptables -w 5 -D FORWARD -i %i -o %i -j ACCEPT

[Peer]
PublicKey = 对方的公钥,每多一个客户端都会多一个[peer],如果所有客户端都使用同一个公私密钥可能也可以但是各自的ip请保持唯一
PresharedKey = 预共享密钥,同样也是由wireguard自动生成的,好像是多一层加密
AllowedIPs = 允许连接到自己这个网络的IP或者网段

然后是客户端:

[Interface]
PrivateKey = 自己的私钥
Address = 自己定义的虚拟局域网IP地址/24(32)

[Peer]
PublicKey = 服务端的公钥
PresharedKey = 和服务器里面填写的一样
AllowedIPs = 允许访问的IP以及网段,这里一般都是填写对应网段
Endpoint = 公网的IP以及对应的端口
PersistentKeepalive = 保持访问的时间
Step5:开启服务

systemctl enable wg-quick@服务端的配置文件名(不需要后缀):开机自启动

wg-quick up/down 文件名:开启或关闭wireguard

Step6:客户端接入

linux上同样使用上面的命令开启

windows可以通过软件添加配置文件的方式连接进入这个虚拟局域网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值