异地组网,内网穿透,WireGuard让你全世界的服务器秒变局域网 超详细教程
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
有没有遇到过「手机连家里电脑、连公司电脑」「家里电脑想远程连公司文件」总之各种互联但「向日葵又是广告又慢」的烦恼? 今天给大家分享一个宝藏工具——WireGuard,关键是低成本就能搞定全设备部署,全程手把手教学,从服务器购买到电脑、手机、公司电脑多端配置,新手也能跟着做 一、前期准备:云服务器入手如果只是想各种设备组局域网互通,现在好多云服务器几十块一年,(想想向日葵,花生壳一年会员多少钱,我以前都是花300多开一年的会员 本文命令以「Ubuntu 24.04 LTS」为例; 二、核心步骤:linux云服务器部署WireGuard这一步是重点,全程在服务器上操作,推荐直接用阿里云自带的「远程连接」功能,省得去找远程软件,也可以用Xshell,免费且简单),每一步都复制命令执行,不用懂代码! 第一步:远程登录服务器打开Xshell(或云服务自带的远程连接),输入服务器「公网IP」,一般端口默认22,点击连接; 用户名输入「root」,密码输入你刚才重置的服务器密码,登录成功(界面出现root@xxx开头,就是登录成功了)。
第二步:安装WireGuard(复制命令,依次执行)Ubuntu 24.04及以上版本内核已内置WireGuard支持,直接执行以下命令即可,每输完一条按回车,等待执行完成再输下一条: 更新软件包索引:
安装WireGuard及管理工具:
验证安装是否成功:wg --version(出现版本号,就是安装成功)
第三步:生成密钥对(核心,用于服务器和客户端认证)WireGuard基于公私钥加密,服务器和每个客户端都需要一对密钥,密钥不能泄露,按以下步骤操作:
第四步:创建并配置服务器配置文件先查看服务器网卡名称(后续配置需要):
创建配置文件:
输入字母i开始编辑。 复制以下内容到配置文件中,去掉括号的说明文字,替换网卡名称:
保存并退出:按esc退出编辑模式,按冒号「:」输入wq保存退出。
第五步:开启IP转发+开放端口(关键,不然客户端连不上)开启IP转发(让服务器能转发客户端流量):
开放WireGuard默认端口(51820,UDP协议): 执行命令:
云服务器一般有个网页管理界面,也有个防火墙设置,也加一下
第六步:启动WireGuard并设置开机自启启动WireGuard:
设置开机自启(避免服务器重启后需要手动启动):
查看运行状态:sudo wg(出现wg0接口信息,就是启动成功)
三、多设备部署:电脑、手机、公司电脑全覆盖服务器部署完成后,就可以给家里电脑、手机、公司电脑配置客户端了,每台设备的配置逻辑一样,都是「生成客户端密钥→添加到服务器配置→客户端导入配置」,下面分设备详细说: 1. 电脑端(Windows/macOS通用)下载客户端: Windows:去WireGuard官网下载Windows客户端(.exe文件),安装后打开; macOS:去App Store搜索「WireGuard」; 生成客户端密钥(以Windows为例): 打开WireGuard客户端,见下图。
服务器添加客户端配置:
客户端导入配置: 打开电脑端WireGuard,点击「添加隧道」→「添加空白隧道」; 填写配置信息(替换括号内容):
点击「保存」,然后点击隧道右侧的「连接」,显示「已连接」就是成功了! 2. 手机端(Android/iOS通用)下载客户端: Android:应用商店搜索「WireGuard」,注意区别官方客户端,确保安全; iOS:App Store搜索「WireGuard」,下载官方客户端; 生成客户端密钥: 打开手机端WireGuard,点击「+」→「生成密钥对」配置如下:
服务器添加客户端配置(和电脑端一样): 远程登录服务器,编辑wg0.conf文件, 添加Peer配置,见上图我服务器配置的截图 重启WireGuard;
客户端导入配置: 手机端填写配置信息(和电脑端一致,输入服务器公钥、服务器IP端口); 保存后,点击隧道右侧的开关,显示「已连接」,就可以用手机通过VPN上网了(公共Wi-Fi下更安全)。
还可以设置只对某些应用生效,或者排除某些应用,真方便! 3. 公司电脑部署(特殊说明)公司电脑通常有防火墙限制,可能会屏蔽UDP端口(WireGuard默认用UDP 51820),解决方法很简单:在服务器配置中,将ListenPort改为公司允许的UDP端口(比如53、8080,需确认公司防火墙开放该端口),然后重新启动WireGuard,客户端配置中的Endpoint端口也对应修改,即可正常连接。 四、必看坑点坑点1:服务器IP转发未开启,导致客户端连接成功但无法上网(最常见!) 很多新手部署完,客户端显示已连接,但打开网页无法访问,90%是因为没开启IP转发,或者开启后未生效。 解决方法:执行以下命令,确保IP转发开启并生效:
如果还是不行,检查服务器防火墙是否开放51820端口,云服务器网页防火墙也要检查。 重启WireGuard服务:
坑点2:各个机器能互相ping通,但具体业务端口就连不上。 firewalld 默认拦截了 wg0 接口上的 forward 流量(TCP),但放行了 ICMP,导致"能 ping 不能 telnet"的诡异现象。 解决方法:把 wg0 加入 trusted zone,让 firewalld 信任这个接口上的所有流量,既保留了 firewalld 对公网的防护,又让 wg 内网畅通。
这里帮大家找了个不错的云服务商,可以参考: https://my.yecaoyun.com/aff.php?aff=7519 强调:把allowIPS 设置为 0.0.0.0/0 就是代理所有流量了,按需设置。 阅读原文:原文链接 该文章在 2026/4/21 10:18:43 编辑过 |
关键字查询
相关文章
正在查询... |