Wire Guard VPN组建局域网

幻兽帕鲁

    最近一款”超级缝合怪”类游戏直接一夜爆火,那就是幻兽帕鲁–是一款融合了《方舟》、《塞尔达》和《精灵宝可梦》元素的大型开放世界生存游戏。5天创收15亿,Steam同时在线玩家超200万,力压《CS2》、《赛博朋克》等一众大作……

Wire Guard VPN组建局域网

    这么火爆的游戏,笔者也是有些跃跃欲试,和小伙伴马上去体验了一波,不得不说,从刚进入游戏的一脸懵,到后面采集、建造、制作帕鲁球收集帕鲁……窗外一看,不知不觉天已经黑了,一看时间,已经好几个小时过去了。确实挺肝啊,不是机毁就是人亡。不过这款游戏真的可以,毕竟”白天当帕鲁,晚上帕鲁主”的感jio,也是别有趣味的一种体验了。

Wire Guard VPN组建局域网

言归正传

    那么言归正传,这篇文章的目的是什么呢?后面和小伙伴发现,线上玩的话,真是有点怕”火箭队”出现啊,好不容易建造的,收集的物资,收服的帕鲁,被洗劫一空,也忒难受了。说白了,就是想打造个自己的空间,和小伙伴一起在一个服务器中玩耍。虽说可以在官方服务器建立一个世界,但是……额,某些原因笔者就不说了。

    后面还是决定去建立一个私有多人游戏世界,小伙伴只需要输入游戏邀请码就可以进入这个私有世界了。

那没问题呀,这直接一输入邀请码,不就行啦嘛。

Wire Guard VPN组建局域网

    一输入才发现,根本就找不到这个世界,连接超时了,猛然发现,这个不会是局域网内才能找到的吧,我和小伙伴远隔几百公里啊…这能找到这个世界就奇了大怪了。

Wire Guard VPN组建局域网

    对啦,我可以创建一个VPN服务啊,创建一个VPN组网,我俩都连着VPN,不就在同一个网段了吗(同一局域网)。说干就干,突然想到目前手里好像没有服务器,得,赶紧去租一个便宜点的服务器吧,2核4G嘎嘎够用。

    那么用什么VPN呢,网上看了一下,好像这个WireGuard VPN不错,直接搞起来。

WireGuard

设备需求

  • 一台服务器
  • 两台PC(我们一个,小伙伴一个)

搭建VPN服务器 CentOS系统

安装

直接租了一个Centos7系统的服务器,网上找找教程,直接搭建吧。

需要先安装一下其他的相关依赖

sudo yum install epel-release elrepo-release
sudo yum install yum-plugin-elrepo

再去安装WireGuard

sudo yum install kmod-wireguard wireguard-tools

Wire Guard VPN组建局域网

OK,安装完毕,后面就都是配置了。

配置

首先,最重要的是端口,一定要开放,就不建议把防火墙关闭了,毕竟你也不愿意把自己家门打开让别人随便进吧。

  • 如果是买的某云服务器,记得把安全组网络端口打开,再打开防火墙端口(执行下面的命令);若是没有安全组,那就直接执行命令打开端口
sudo firewall-cmd --zone=public --add-port=3367/udp --permanent
sudo firewall-cmd --reload

Tips:WireGuard是使用的UDP协议端口,别傻乎乎打开TCP协议端口,后面一脸懵,怎么连接不到

  • OK了,再去生成服务端的公钥和私钥。
wg genkey | tee server.key | wg pubkey > server.pub

Wire Guard VPN组建局域网

server.key是私钥文件

server.pub是公钥文件

  • 继续,该配置服务器的wg(WireGuard的简称)配置了。

先到我们的wg安装目录下,创建一个wg0.conf的文件

cd /etc/wireguard
vim wg0.conf

文件内容如下:

[Interface]
Address = 20.10.0.1/24 #服务器组网IP
ListenPort = 3367 # 端口
PrivateKey = <server.key中的私钥>

[Peer] #PC1
PublicKey = <客户端公钥>
AllowedIPs = 20.10.0.2/32 #客户端网段


[Peer] #PC2
PublicKey = <客户端公钥>
AllowedIPs = 20.10.0.3/32 #客户端网段

简单说明一下,此文件中不要写注释,这里笔者是帮助大家理解的。[Interface]是服务器的配置,[Peer]是客户端的配置,其中配置了两台客户端(我和小伙伴一人一台),AllowedIPs参数是指定两台客户端在组网中的IP。此文件中配置的都是组网相关的信息,不懂的小伙伴可以直接拷贝我的配置就行。

服务器私钥server.key中是有的,但是客户端公钥去哪里弄呢?

    其实客户端的公钥和私钥都可以由服务器产生,并且下发给客户端。但是同样也可以由客户端定义好上游给服务器。两种方式都可以。

    我这里就偷个懒,直接去找客户端要。首先客户端需要下载WireGuard的客户端软件,网上找找资源,或者会翻墙的可以去官网下载一个。

下载完毕后,打开软件。

新建一个隧道。它自动会生成一个公钥和私钥。

Wire Guard VPN组建局域网

Wire Guard VPN组建局域网

完事后,把公钥拿到服务器的相关配置下即可。完整配置如下

[Interface]
Address = 20.10.0.1/24
ListenPort = 3367
PrivateKey = yKfKAdqmEVWF04j62zp+r5POjehu7z0VjerZJ3wTJFU=

[Peer]
PublicKey = T0OsBgHdx6FX1a30b/gKTnFww3wSkmnXsuPTV4ej5Xc=
AllowedIPs = 20.10.0.2/32

[Peer]
PublicKey = 另一台客户端的公钥
AllowedIPs = 20.10.0.3/32

完事儿后保存。

启动服务端,设置开机自启动

systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0

客户端连接VPN

找到我们刚刚WireGuard客户端的那条隧道。然后配置相关的信息。

[Interface]
PrivateKey = uPWTj3JD5vD+nAqBQC+METo+lWHguQevqxC+MW+UhFs=
Address = 20.10.0.2/32 # 客户端在组网中的IP
MTU = 1500

[Peer]
PublicKey = K2ByZ9UDDttljH0u92LXvRuyJmTSHEFJ64S+TGa+Sz4= # 客户端公钥
AllowedIPs = 20.10.0.0/24
Endpoint = xx.xxx.xxx.xx:3367 # 这里是vpn服务器的ip和端口号
PersistentKeepalive = 25

    完成后保存,两个客户端都是类似的,不再展示另一个客户端了。只有[Interface]中配置的客户端信息不同

点击连接。

Wire Guard VPN组建局域网

Wire Guard VPN组建局域网

    看下服务器的在组网中的IP,然后用客户端ping一下,若成功,那么说明大功告成。

Wire Guard VPN组建局域网

    OK,完事儿了。同样的方法再去配置另一台客户端,去ping一下服务器的组网IP地址可以ping通就行了。

    现在无论离多远,只要连接上VPN,所有局域网内游戏,小伙伴们都可以参与加入你的私有世界了,快去试试吧。

Wire Guard VPN组建局域网


原文始发于微信公众号(小路同学ovo):Wire Guard VPN组建局域网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/267595.html

(0)
码上实战的头像码上实战

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!