上古神器WireGuard异地高效率组网

这篇具有很好参考价值的文章主要介绍了上古神器WireGuard异地高效率组网。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

上古神器WireGuard异地高效率组网

 👨🏻‍🎓博主介绍:大家好,我是芝士味的椒盐,一名在校大学生,热爱分享知识,很高兴在这里认识大家🌟
🌈擅长领域:Java、大数据、运维、电子
🙏🏻如果本文章各位小伙伴们有帮助的话,🍭关注+👍🏻点赞+🗣评论+📦收藏,相应的有空了我也会回访,互助!!!
🤝另本人水平有限,旨在创作简单易懂的文章,在文章描述时如有错,恳请各位大佬指正,在此感谢!!!


目录

缘由

简介

官网

WireGuard组网实现架构图

下面用WireGuard演示一台公网服务器和一台线下机器异步组网:


缘由

        相信很多的工作者、极客玩家或者学生党在项目开发以及发布的时候会遇到云上服务器资源不够(包括内存不够、磁盘不够等等),而我们可能由于一些问题,无法升级云服务器的配置,这样的场景就很尴尬对吧?现在的确有许多的像netapp、以及zerotier这样的内网穿透的存在,但是存在一个问题就是不安全,路由网关并不是在我们自己机器上,而且这些市面的望穿也有高效的方法但是要用money,苦于囊中羞涩,这时候WireGuard就可以很好提供高性能的内网穿透能力。

        举个例子:你是个学生或者工作者,在你的实验室或者公司电脑上,有着项目或者资料,你有又出门在外,想要访问实验室或者公司内部的资料,虽然像向日葵、ToDesk可以满足需求,但是由于是第三方提供着提供有带宽的限制,会导致一卡一卡的,这时候你就可以使用Windows或者Linux自带的远程服务搭配上WireGuard解决这种尴尬的场面。

简介

      WireGuard 是一个易于配置、快速且安全的开源 VPN,它利用了最新的加密技术。目的是提供一种更快、更简单、更精简的通用 VPN,它可以轻松地在树莓派这类低端设备到高端服务器上部署。他没有像OpenVPN那样10w的代码量,WireGuard非常精简只有4000行代码。

官网

地址:https://www.wireguard.com/quickstart/

WireGuard组网实现架构图

  • 架构图:
  • 上古神器WireGuard异地高效率组网

下面用WireGuard演示一台公网服务器和一台线下机器异步组网:

WireGuard Server(一台公网服务器):

  1. 更新update

    yum update -y
    
  2. 安装wireguard

    sudo yum install epel-release elrepo-release -y
    sudo yum install yum-plugin-elrepo -y
    sudo yum install kmod-wireguard wireguard-tools -y
    
  3. 创建目录

    cd /etc/wireguard
    
  4. 生成密钥对

    # 开始生成 密匙对(公匙+私匙)。
    wg genkey | tee privatekey-server | wg pubkey > publickey-server # 生成服务端密钥对
    
  5. 配置服务端文件

    vim /etc/wireguard/wg0.conf输入以下内容

    [Interface]
    Address = 10.100.0.1/16  # 这里指的是使用 10.100.0.1,网段大小是 16 位
    SaveConfig = true
    ListenPort = 51820  # 监听的 UDP 端口
    PrivateKey = < 这里填写 Server 上 privatekey 的内容 >
    # 下面这两行规则允许访问服务器的内网,注意替换`eth0`
    PostUp   = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
    
    # Client,可以有很多 Peer
    [Peer]
    PublicKey = < 这里填写 Client 上 publickey 的内容 >
    AllowedIPs = 10.100.0.2/32  # 这个 Peer 只能是 10.100.0.2/32
    # 如果想把所有流量都通过服务器的话,这样配置:
    # AllowedIPs = 0.0.0.0/0, ::/0
    
  6. 开启内核转法

    firewall-cmd --add-masquerade --zone=public --permanent
    firewall-cmd --reload
    sed -i '/net.ipv4.ip_forward/d' /etc/sysctl.conf
    echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
    sysctl -p
  7. 启停服务端

    wg-quick up wg0    #启动服务端
    wg-quick down wg0  #停止服务端
    wg #查看节点列表
    wg syncconf wg0 <(wg-quick strip wg0) #重载配置文件,不影响已有连接.
    

WireGuard Client(N台非公网服务器):

  1. 更新update

    yum update -y
    
  2. 安装wireguard

    sudo yum install epel-release elrepo-release -y
    sudo yum install yum-plugin-elrepo -y
    sudo yum install kmod-wireguard wireguard-tools -y
    
  3. 创建目录

    cd /etc/wireguard
    
  4. 生成密钥对

    # 开始生成 密匙对(公匙+私匙)。
    wg genkey | tee privatekey-client | wg pubkey > publickey-client   # 生成客户端密钥对
    
  5. 开启内核转发

    firewall-cmd --add-masquerade --zone=public --permanent
    firewall-cmd --reload
    sed -i '/net.ipv4.ip_forward/d' /etc/sysctl.conf
    echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
    sysctl -p
  6. 配置客户端文件

    [Interface]
    PrivateKey = < 这里填写 Client 上 privatekey 的内容 >
    Address = 10.100.0.2/32
    DNS = 8.8.8.8  # 连接后使用的 DNS, 如果要防止 DNS 泄露,建议使用内网的 DNS 服务器
    
    [Peer]
    PublicKey = < 这里填写 Server 上 publickey 的内容 >
    Endpoint = 1.1.1.1:51820  # 服务端公网暴露地址,51280 是上面指定的
    AllowedIPs = 10.100.0.0/16,172.17.0.11/20  # 指定要访问的服务端网段,或者设置0.0.0.0/0来进行全局代理.
    PersistentKeepalive = 25
    
  7. 启动客户端连接

    wg-quick up ./wg0.conf
    
  8. 启动完客户端之后回WireGuard服务端查看,也可以尝试从客户端pingWireGuard服务器(内网地址),注意公网作为WireGuard的服务器要安全组开端口文章来源地址https://www.toymoban.com/news/detail-445782.html

    wg
    

到了这里,关于上古神器WireGuard异地高效率组网的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 自养号测评低成本高效率推广,安全可控

    测评的作用在于让用户更真实、清晰、快捷地了解产品以及产品的使用方法和体验。通过买家对产品的测评,也可以帮助厂商和卖家优化产品缺陷,提高用户的使用体验。这进而帮助他们获得更好的销量,并更深入地了解市场需求。因此,测评在满足用户需求和帮助商家提升

    2024年02月22日
    浏览(53)
  • 电脑办公助手之桌面便签,助力高效率办公

    在现代办公的快节奏中,大家有应接不暇的工作,每天面对着复杂的工作任务,总感觉时间不够用,而且工作无厘头。对于这种状态,大家可以选择在电脑上安装一款好用的办公便签软件来辅助日常办公。 敬业签是一款专为办公人士设计的桌面便签软件,是大家日常工作中常

    2024年02月07日
    浏览(47)
  • cherry-pick等git 高效率命令

    使用 Git 作为代码版本管理,早已是现在开发工程师必备的技能。可大多数工程师还是只会最基本的保存、拉取、推送,遇到一些commit管理的问题就束手无策,或者用一些不优雅的方式解决。 本文分享我在开发工作中实践过的实用命令。这些都能够大大提高工作效率,还能解

    2024年02月03日
    浏览(62)
  • 42个网工高效率工具,我只告诉你(二)

    晚上好,我是老杨。好用工具上期更新之后,不少小友催我更新下期,这不就来了? 今日文章阅读福利:《42个好用工具下载包》 私信老杨,回复“工具42”,领取2022网工好用工具大全,同时,还可以额外获得进入「全国网工交流群」的资格。 EtherApe依然免费,也可在

    2024年02月04日
    浏览(46)
  • IDEA 28 个神仙常用设置,高效提升开发效率

    IDEA 作为Java开发工具的后起之秀,几乎以碾压之势把其他对手甩在了身后,主要原因还是归功于:好用;虽然有点重,但依旧瑕不掩瑜,内置了非常多的功能,大大提高了日常的开发效率,下面汇总了常用的28个使用小技巧,学会之后,让你的撸码效率直接起飞... 注意:不同

    2024年02月04日
    浏览(50)
  • Boost电路实战详解!(高效率同步整流,PID闭环追踪)

    提示:若想实战演练,请先熟悉文章操作流程哦,不然会有危险!! 我建了一个群,分享我个人做项目的经历和资源,纯个人爱好,一切免费,看自己空闲时间答疑,有想法的可以加QQ群280730348 大家好!鸽了两个月的电路博主回归啦,这段时间一直在忙研究生开学的事儿,也

    2024年02月03日
    浏览(48)
  • 【嵌入式开发学习】__分享一些高效率的“学习软件”

    目录 前言 软件分享 VSCode 代码编辑器 ChatGPT 语言模型 Notion 笔记记录  Microsoft To Do 日程记录 zlibrary 图书下载 结束语 (* ̄︶ ̄)创作不易!期待你们的 点赞、收藏和评论喔。 在工作学习中,我们会使用到很多的工具,好的工具可以起到事半功倍的效果。我对工具的要求一般是

    2024年02月06日
    浏览(55)
  • 【 “高效学习法:如何提高学习效率并取得更好的成果“】

    一、学习方法分享 学习是人类进步的基石,而学习方法则是成功的关键之一。下面分享几种高效的学习方法。 认真阅读、笔记和思考 这是最基本的学习方法。在阅读资料时,不仅要注意到主要内容,还要注意到细节;在笔记中做总结,可以帮助巩固所学的内容。同时也要慢

    2024年02月05日
    浏览(52)
  • 高效Python-1提高数据处理效率的迫切需要

    本章包括 处理指数级增长的数据所面临的挑战 传统计算架构与最新计算架构的比较 Python在现代数据分析中的作用和不足 提供高效Python计算解决方案的技术 我们一直在以极快的速度从各种来源收集海量数据。无论目前是否有使用价值,这些数据都会被收集起来。无论是否有

    2024年02月15日
    浏览(48)
  • 前端网页国际化 translate.js,高效率翻译,傻瓜式教学

    什么?你不信?  那先简单实验一下吧,首先我们随便打开一个网站,然后F12——检查——控制台,复制以下代码,回车即可 选择一个语种,就翻译成功了 在网页底部加上以下代码 就像这样   默认他会给我们加一个id为 translate  的div盒子,我们可以把这个盒子放在我们需要

    2024年02月01日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包