Debian搭建wireguard组网

Debian搭建wireguard组网

mohuangNPC
2025-12-08 / 0 评论 / 12 阅读 / 正在检测是否收录...

前言

因为家里宽带没有公网IP也不支持ipv6,一直使用 frps 作为内网穿透的工具。后来发现了 wireguard,于是就将家里的服务器与具有公网IP的云服务器组网,实现内网穿透功能。这里主要介绍 wireguard 的安装以及组网方式,能够满足正常工作、学习所需了。

公网服务器

首先我们需要一台处于公网的服务器,这里我们使用雨云服务器,服务器配置不需要太高,2H2G即可

  • 雨云优惠注册地址https://www.rainyun.com/mohuang_
  • 雨云优惠码 :mohuang(使用优惠码注册可获得首月5折优惠券,还可在积分商城领取8折新购券,8折券可叠加官方的年付7折优惠,也就是5.6折)

注册完账号后进到 雨云控制台,点击云产品→云服务器→立即购买:

mis6120b.png

这里我们选择湖北的,各位可根据自己的延迟选择,2H2G足够
mis5ygpf.png

系统我们手动选择debian13

mis657k2.png

然后点击下方的立即购买即可,购买后可在云产品>云服务器> 我的云服务器 中看到

mis69gjq.png

点击卡片中的管理可进入服务器详情页面:

mis6alsw.png

开始连接服务器

下载安装并打开ssh客户端软件,ssh客户端软件推荐mobaxterm或xshell/xftp
我这里用mobaxterm,打开软件后点击会话→SSH,在远程主机处输入你的服务器的IP地址,然后点击好的。

mobaxterm下载地址 我这个mobaxterm是直接免安装的,解压到文件夹中直接运行MobaXterm_Personal_24.3.exe就可使用

mis6lanq.png

然后输入账号并按回车,账号一般默认为root,接着输入密码并按回车确定,输入密码时不会显示出来。

温馨提示:在SSH终端中按住鼠标左键选择文字,然后松开鼠标,再在空白处单击一下,这样就把选中的文字复制了;在SSH终端单击右键即为粘贴。

开启服务器转发

在上一步我们购买了服务器,使用mobaxterm进入服务器之后首先开启IPV4流量转发功能(中转的公网IP服务器必须配置)

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

更新软件包

apt update

安装Wireguard

这里咱们使用Debian系统,Debian支持从它的仓库直接下载安装

apt install -y wireguard

miv8h8gz.png

编写配置文件

这里各位可以自行查看官方文档来自定义编写,也可以使用我自己编写的配置文件生成工具。
这里使用配置文件生成工具。执行命令下载工具:

curl -L https://gitee.com/edrik_1/typecho/raw/master/VpnUtil -o /usr/local/bin/vpnutil && chmod +x /usr/local/bin/vpnutil && mkdir /etc/vpnutil

生成服务端配置文件

我们已经安装好了wireguard以及配置文件生成工具,现在我们要初始化一下wireguard以及vpnutil的配置文件,执行命令:

# 创建并进入一个文件夹用来存放配置
mkdir vpnconf && cd vpnconf
# 执行初始化命令
vpnutil gen serve server 111.122.59.214 -a 172.32.100.1/24 -p 51820

命令参数解析

  • vpnutil gen serve 是基础命令
  • server是生成配置文件的前缀名字,例如server.conf,server.key,这里最好不要变,就是server即可
  • 118.193.35.26 是自己服务器的公网ip
  • -a 172.32.100.1/24 是设置wireguard客户端的虚拟ip范围
  • -p 51820 是设置wireguard服务端的监听端口

执行完毕后,当前文件夹会出现三个文件

  • 前缀名字.conf wireguard服务端的配置文件
  • 前缀名字_private.key wireguard服务端的私钥
  • 前缀名字_public.key wireguard服务端的公钥

根据咱们当前执行的命令会出现,server.conf、server_private.key、server_public.key

应用配置文件

接下来咱们移动"前缀名字.conf"文件到wireguard的配置文件目录使其生效

cp server.conf /etc/wireguard/ && wg-quick up server

查看wireguard状态

# 查看wg的状态
wg show

miwp6r2g.png

这代表已经正常运行

生成客户端配置

接下来使用自动工具生成客户端配置.
执行命令:

vpnutil gen client client01

命令参数解析

  • vpnutil gen client 是基础命令
  • client01 是要生成客户端配置文件的前缀,可以自定义起名字,但最好不要包含特殊字符

执行完毕后,当前文件夹会出现三个文件

  • 前缀名字.conf wireguard客户端的配置文件
  • 前缀名字_private.key wireguard客户端的私钥
  • 前缀名字_public.key wireguard客户端的公钥

这里要注意,服务端的配置文件名字一定要是server.conf,正常按照教程走的话是不会有问题的,如果想使用自动工具生成客户端配置,但服务端配置是自己手写的小伙伴,那就把配置文件改下名字,客户端配置文件名字随意命名即可

防火墙放行

我们已经运行了服务端,并设置了监听端口51820,我们开始继续部署客户端组网之前,需要在雨云后台开启服务器的防火墙放强行51820端口

进入服务器防火墙

miwvbgnq.png

新建防火墙规则

点击新建防火墙规则,输入端口,协议是UDP, 点击确定

miwvcqk3.png

新增成功

新增成功,我们可以开始进行下一步了。

miwve14o.png

客户端组网

这里咱们演示Debian和Window下如何组网

Debian组网

新开一个虚拟机或者测试服务器按照上面的教程先安装一遍wireguard。
然后我们在wireguard的服务端服务器上使用自动配置工具生成一个配置文件。
例如:

vpnutil gen client debian

此时当前文件夹下会生成debian.conf,debian_private.key,debian_public.key。
然后我们将debian.conf复制到虚拟机或测试服务器的/etc/wireguard目录下。
执行命令:

# wg启动命令,其中debian就是配置文件名字,配置文件叫什么名字,这里就填什么名字,注意不能填后缀.conf
wg-quick up debian
# wg关闭命令
wg-quick down debian

然后我们客户端执行命令查看状态:

wg show

miwqcefk.png

已经成功。我们回服务端同样执行wg show查看

miwqdfzj.png
可以看到客户端连进来了

Window组网

同样我们去wireguard服务端执行命令生成配置文件

vpnutil gen client window

window上安装wireguard的window版本,下载地址

安装后打开如下:

miwqnmh0.png

我们将服务端生成的配置文件下载下来,然后点击客户端的新建隧道或从文件导入,选择window.conf。
然后点击确定,如下:
miwuwf1z.png

我们点击连接。
miwqs1uv.png

如图连接成功。

我们回到服务端,执行wg show,如图,window也已经加入到组网了

miwqtw4c.png

完结

至此,wireguard组网教程结束

坑点

  1. 如果window无法连接到,可以尝试关闭Window防火墙
  2. linux等系统无法连接的话,也检查一下Linux防火墙
0

评论 (0)

取消

Warning: file_put_contents(/var/www/html/rss.xml): failed to open stream: Permission denied in /var/www/html/usr/plugins/CustomRSS/Plugin.php on line 149