JJ加速器Ai问答系统 V.25.09.02

🗣 Wd提问: wireguard配置

🤖 Ai回答: WireGuard 是一种现代、快速且安全的虚拟私人网络 (VPN) 解决方案,它通过简单的配置和高效的加密技术实现网络连接。以下是一个完整的 WireGuard 配置指南,包括服务端和客户端的配置步骤。

服务端配置

1、安装 WireGuard
Debian/Ubuntu
bash
sudo apt update
sudo apt install wireguard


CentOS/Rocky Linux
bash
sudo yum install epel-release
sudo yum install kmod-wireguard wireguard-tools


2、生成密钥对
WireGuard 使用公钥和私钥进行身份验证。

bash
cd /etc/wireguard

生成服务端私钥和公钥
wg genkey | tee server_private.key | wg pubkey server_public.key

`server_private.key`:服务端私钥,严禁泄露。
`server_public.key`:服务端公钥,用于分发给客户端。

3、创建服务端配置文件
创建 `/etc/wireguard/wg0.conf` 文件,内容如下:

ini
[Interface]
PrivateKey = <服务端私钥 替换为 server_private.key 的内容
Address = 10.0.0.1/24 服务端虚拟 IP 地址
ListenPort = 51820 服务端监听端口(UDP)

启动时添加转发规则
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

客户端配置
[Peer]
PublicKey = <客户端公钥 替换为客户端的公钥
AllowedIPs = 10.0.0.2/32 客户端虚拟 IP 地址

4、启用 IPv4 转发
确保服务端允许 IPv4 转发。

bash
echo net.ipv4.ip_forward = 1 /etc/sysctl.conf
sysctl -p

5、启动 WireGuard 服务
bash
sudo wg-quick up wg0

6、设置开机自启
bash
sudo systemctl enable wg-quick@wg0

客户端配置

1、安装 WireGuard
Windows: 下载 [WireGuard 官方客户端](https://www.wireguard.com/install/)。
Linux: 使用包管理器安装。
Android/iOS: 在应用商店搜索 WireGuard。

2、生成客户端密钥对
bash
cd /etc/wireguard

生成客户端私钥和公钥
wg genkey | tee client_private.key | wg pubkey client_public.key

`client_private.key`:客户端私钥,严禁泄露。
`client_public.key`:客户端公钥,用于分发给服务端。

3、创建客户端配置文件
创建 `/etc/wireguard/wg0.conf` 文件,内容如下:

ini
[Interface]
PrivateKey = <客户端私钥 替换为 client_private.key 的内容
Address = 10.0.0.2/24 客户端虚拟 IP 地址
DNS = 8.8.8.8 可选 DNS 服务器
MTU = 1420 可选 MTU 值

[Peer]
PublicKey = <服务端公钥 替换为 server_public.key 的内容
Endpoint = <服务端公网IP:51820 替换为服务端公网 IP 和端口
AllowedIPs = 10.0.0.0/24 服务端网段
PersistentKeepalive = 25 保持连接的心跳间隔(秒)

4、启动客户端
bash
sudo wg-quick up wg0

5、设置开机自启
bash
sudo systemctl enable wg-quick@wg0

测试连接

1、检查 WireGuard 状态
bash
sudo wg show

2、测试网络连通性
服务端 ping 客户端
bash
ping 10.0.0.2


客户端 ping 服务端
bash
ping 10.0.0.1


测试互联网访问
bash
curl ifconfig.me


高级配置

1、动态 IP 更新
如果服务端的 IP 地址是动态的(例如家庭宽带),可以使用脚本动态更新客户端的 `Endpoint`。

创建动态更新脚本:
bash
sudo nano /usr/local/bin/wg-dynamic-update


脚本内容如下:
bash
!/usr/bin/env bash

CONFIG_DIR=/etc/wireguard/dynamic-clients
LOG_FILE=/var/log/wg-dynamic-update.log

current_time() {
date +%Y-%m-%d %H:%M:%S
}

for CLIENT_CONFIG in $CONFIG_DIR/*.conf; do
[ -f $CLIENT_CONFIG ] continue
、$CLIENT_CONFIG

NEW_IP=$(dig +short $DOMAIN A | grep -m1 -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}')
CURRENT_IP=$(wg show $INTERFACE endpoints | awk -v pubkey=$PUBLIC_KEY '$1 == pubkey {print $2}' | cut -d: -f1)

if [[ $NEW_IP != $CURRENT_IP ]]; then
wg set $INTERFACE peer $PUBLIC_KEY endpoint ${NEW_IP}:${PORT}
echo [$(current_time)] 更新成功: $CLIENT_NAME ${NEW_IP}:${PORT} $LOG_FILE
fi
done


赋予执行权限:
bash
sudo chmod +x /usr/local/bin/wg-dynamic-update


创建客户端配置文件:
bash
sudo mkdir -p /etc/wireguard/dynamic-clients
sudo nano /etc/wireguard/dynamic-clients/client1.conf


内容如下:
bash
CLIENT_NAME=client1
INTERFACE=wg0
DOMAIN=example.com
PORT=51820
PUBLIC_KEY=<客户端公钥


定期执行脚本(例如每5分钟):
bash
sudo crontab -e

添加以下行:
bash
*/5 * * * * /usr/local/bin/wg-dynamic-update


总结

通过以上步骤,你可以成功配置 WireGuard 服务端和客户端,并实现安全的网络连接。根据实际需求,可以进一步优化配置,例如添加多个客户端、使用动态 IP 更新脚本等。


Ai问答
📣 商家广告

广告招商

广告招商

广告招商


0

网址:wap.dodekaf.cn

IP地址: 185.19.52.204

搜索次数: 0

提问时间: 2025-09-14 21:59:14

❓ 热门问答
免费机场软件哪个好用不收费
ebay.ca
油管18 频道
外国网络加速器下载
魔法上网什么意思
instagram online viewer
汽油油管漏油如何处理最好
推特中文版苹果下载安装
steam加速器walt
youtube视频翻译插件下载
instagram是什么网站
快连电脑端下载
脸书18破解版最新版本更新内容
最新免费ssr节点分享下载
油管网站链接是什么
V2ray SwitchyOmega设置
facebook账号注册入口
快连vhp怎么注销账号
油管评论中国视频,日期最新的是什么
V2ray深度包检测对抗

🔗 友情链接
JJ加速器  JJ加速器官方网站  Ai问答  

📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。

👉 技术支持:本站由JJ加速器提供技术支持,使用的最新版:《JJ加速器Ai问答系统 V.25.09.02》搭建本站。

上一篇 62186 62187 62188 下一篇