wg 是性能非常优秀的链路接入软件, 在linux kernel 5.6的时候已经被纳入正式内核
以下介绍下在centos7 下的配置:
1.先升级下系统版本到最新
#yum upgrade
2. 安装必要的系统依赖库和软件,客户端和服务端一样操作
# sudo yum install epel-release elrepo-release
# sudo yum install yum-plugin-elrepo
# sudo yum install kmod-wireguard wireguard-tools
3. 生成服务器和客户端的公钥私钥
#服务器和客户端都需要分别执行一遍
wg genkey | tee privatekey | wg pubkey > publickey
4. 配置文件
#客户端
[Interface]
PrivateKey = “客户端私钥”
Address = 172.16.52.52/24
DNS = 8.8.8.8
MTU = 1420
[Peer]
PublicKey = “服务端公钥”
Endpoint = “服务端接入IP”:4430
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
服务端
[Interface]
Address = 172.16.52.0/24
MTU = 1420
SaveConfig = true
ListenPort = 4430
PrivateKey = “服务端私钥”
[Peer]
PublicKey = “客户端公钥”
AllowedIPs = 172.16.52.52/32
5. 服务端转发配置
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -I POSTROUTING -s 172.16.52.0/24 -o eth1 -j MASQUERADE
6. 开启脚本:
systemctl enable wg-quick@wg0
7. 可能产生的问题:
1) MSS导致大包无法通过, 这个是NAT代理常见的问题, 现象是ping 或者部分小网页能打开, 大的网页则卡住了, 一般都是MSS导致, 需要设置小MSS
iptables -t mangle -A POSTROUTING -p tcp –tcp-flags SYN,RST SYN -o eth1 -j TCPMSS –set-mss 1400