微信扫一扫 分享朋友圈

已有 260 人浏览分享

开启左侧

使用WireGuard异地高效率组网

[复制链接]
260 0
简介
      WireGuard 是一个易于配置、快速且安全的开源 VPN,它利用了最新的加密技术。目的是提供一种更快、更简单、更精简的通用 VPN,它可以轻松地在树莓派这类低端设备到高端服务器上部署。他没有像OpenVPN那样10w的代码量,WireGuard非常精简只有4000行代码。
官网
地址:https://www.wireguard.com/quickstart/
WireGuard组网实现架构图
image.png
下面用WireGuard演示一台公网服务器和一台线下机器异步组网:
WireGuard Server(一台公网服务器):
    更新update
    yum update -y
    安装wireguard
        sudo yum install epel-release elrepo-release
        sudo yum install yum-plugin-elrepo
        sudo yum install kmod-wireguard wireguard-tools

    创建目录
    cd /etc/wireguard

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

    配置服务端文件
    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

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

WireGuard Client(N台非公网服务器):
    更新update
    yum update -y

    安装wireguard
        sudo yum install epel-release elrepo-release
        sudo yum install yum-plugin-elrepo
        sudo yum install kmod-wireguard wireguard-tools

    创建目录
    cd /etc/wireguard

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

    配置客户端文件
        [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

    启动客户端连接
    wg-quick up ./wg0.conf
    启动完客户端之后回WireGuard服务端查看,也可以尝试从客户端pingWireGuard服务器(内网地址),注意公网作为WireGuard的服务器要安全组开端口
    wg




免责声明:
1,海欣资源网所发布的资源由网友上传和分享,不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何损失或损害承担责任。
2,海欣资源网的资源来源于网友分享,仅限用于学习交流和测试研究目的,不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
3,海欣资源网所发布的资源由网友上传和分享,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。
4,如果您喜欢,请支持正版,购买正版,得到更好的正版服务,如有侵权,请联系我们删除并予以真诚的道歉,联系方式邮箱 haixinst@qq.com
海欣资源-企业信息化分享平台。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0

关注

0

粉丝

48

主题
热度排行
回复排行
最新贴子

Archiver|手机版|海欣资源 ( 湘ICP备2021008090号-1 )|网站地图

GMT+8, 2023-2-1 17:57 , Gzip On, Redis On.

免责声明:本站所发布的资源和文章均来自网络,仅限用于学习交流和测试研究目的,不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。 本站信息来自网络,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 如果您喜欢,请支持正版,购买正版,得到更好的正版服务,如有侵权,请联系我们删除并予以真诚的道歉。