安装必要软件包
确保你的系统已经安装了必要的软件包,使用以下命令更新包列表并安装所需的软件:
sudo apt-get update sudo apt-get install wireguard ip_tables bridge-utils
生成WireGuard接口
创建一个新的WireGuard接口,命名为wg:
wg create wg
设置IP地址
使用DHCP服务器(如dhcpyd2)为接口wg分配一个静态IP地址,假设你已知道服务器IP地址为168.1.1/24,则执行以下命令:
sudo dhcpyd2 -i 192.168.1.1/24 -s 192.168.1.2 -r 30
设置默认路由
确保所有流量通过wg接口转发:
sudo ip route add 0.../ via wg
配置防火墙规则
防止防火墙阻止正常通信,设置以下规则:
sudo iptables -P FORWARD DROP sudo iptables -A FORWARD -i wg -j ACCEPT sudo iptables -A FORWARD -o wg -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -d 192.168.1./24 -j ACCEPT sudo iptables -t nat -A POSTROUTING -o wg -j MASQUERADE
保存这些规则,防火墙将不再重启:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat && exit"
生成PEAP证书
为服务器生成一个PEAP密钥文件:
wg(8) peer new-key-file server.pem
将server.pem保存在安全的位置,例如使用GPG加密或存储在云端。
生成客户端配置文件
在另一个设备上(如Windows或移动设备)运行以下命令,连接到服务器:
wg(8) peer add peer1 192.168.1.1 peer-key-file server.pem
启动WireGuard服务
启动并启用wg-quick服务:
sudo systemctl unmask wg-quick@.service sudo systemctl enable wg-quick@.service sudo systemctl start wg-quick@.service
重启网络接口
确保网络接口正常运行:
sudo systemctl restart networking
测试连接
从客户端测试连接:
ping 192.168.1.1 curl 192.168.1.1
配置DHCP服务器(可选)
如果需要动态IP地址,安装并配置ISC DHCP服务器:
sudo apt-get install isc-dhcp-server sudo nano /etc/dhcp/dhcp.conf
在配置文件中添加:
interface wg
static 192.168.1.1/24
启动并启用DHCP服务器:
sudo systemctl start isc-dhcp-server sudo systemctl enable isc-dhcp-server
备份密钥文件
确保密钥文件server.pem备份,防止丢失。
验证防火墙和NAT
使用iptables -L查看防火墙规则,确保所有规则正确。
故障排除
- 连接问题:检查IP地址是否正确,确保DHCP服务器正常运行。
- 防火墙问题:确保所有必要的防火墙规则已设置,包括MASQUERADE。
- 路由问题:确认默认路由正确设置,确保所有流量通过
wg转发。
通过以上步骤,你应该能够成功配置并运行WireGuard服务器,确保客户端能够连接并访问互联网。









