MikroTik RouterOS V7 开启WireGuard服务实现家庭和公司内网互访

2024-10-23T17:58:00

情景说明

本次示例配置涉及到两端都是Mikrotik设备的情况,需要RouterOS 7版本以上路由器,同时双方其中有一方是具有公网固定IP的情景,同时在做防火墙NAT规则时,给出静态上网的NAT方式和PPOE拨号上方的NAT方式,示例中的固定IP一方,在实际应用中,可以是云服务器VPS或者公司其他拥有固定IP属性的场景!

第一步:配置家庭端的WireGuard服务器(固定IP)

家庭端的Mikrotik设备具有固定IP,因此我们将其配置为WireGuard的服务器。

  1. 创建WireGuard接口

    • 打开Interfaces -> Add (+) -> 选择WireGuard
    • 输入名称(例如:wg-home),然后点击OK
  2. 配置WireGuard接口

    • 打开刚刚创建的WireGuard接口。
    • 设置Listen Port51820(WireGuard默认端口)。
    • 点击Generate按钮生成一个私钥(此私钥用于本地存储,不与对端共享)。
  3. 添加WireGuard Peer(对端)

    • 打开WireGuard Peers -> Add (+)
    • Public Key:填写公司端设备生成的公钥。
    • Allowed Address:设置为公司内网允许的网段,例如:192.168.2.0/24
    • Endpoint Address:留空,因为公司端是动态IP。
  4. 配置地址池和IP地址

    • 打开IP -> Addresses -> Add (+)
    • 给WireGuard接口配置一个内网IP,例如:192.168.10.1/24,接口选择刚才创建的wg-home
  5. 防火墙规则和NAT

    • 打开IP -> Firewall -> NAT,配置NAT规则以确保流量通过WireGuard隧道进行访问。

第二步:配置公司端的WireGuard客户端(动态IP)

公司端的Mikrotik设备没有固定IP,因此将其配置为WireGuard客户端连接到家庭端的服务器。

  1. 创建WireGuard接口

    • 打开Interfaces -> Add (+) -> 选择WireGuard
    • 输入名称(例如:wg-office),然后点击OK
  2. 配置WireGuard接口

    • 点击Generate按钮生成一个私钥。
    • 将生成的公钥复制下来,用于家庭端的Peer配置。
  3. 添加WireGuard Peer(对端)

    • 打开WireGuard Peers -> Add (+)
    • Public Key:填写家庭端设备的公钥。
    • Endpoint Address:填写家庭端的固定IP地址,例如:家庭IP:51820
    • Allowed Address:设置为家庭内网的网段,例如:192.168.1.0/24
  4. 配置地址池和IP地址

    • 打开IP -> Addresses -> Add (+)
    • 给WireGuard接口配置一个内网IP,例如:192.168.10.2/24,接口选择刚才创建的wg-office

第三步:配置NAT和防火墙规则

根据不同的上网方式,我们需要设置两种NAT规则。

1. 固定IP方式的NAT规则

  1. 固定IP NAT规则

    • 打开IP -> Firewall -> NAT -> Add (+)
    • Chain选择srcnat
    • Out. Interface选择家庭端的WAN接口(例如:ether1)。
    • Action选择src-nat,并设置To Address为家庭端的固定公网IP地址。
  2. 允许WireGuard端口的输入规则

    • 打开IP -> Firewall -> Filter Rules -> Add (+)
    • Chain选择input
    • Protocol选择udpDst. Port填写51820
    • Action选择accept

2. PPPoE拨号方式的NAT规则

如果家庭端通过PPPoE拨号上网,则需要如下配置:

  1. PPPoE NAT规则

    • 打开IP -> Firewall -> NAT -> Add (+)
    • Chain选择srcnat
    • Out. Interface选择PPPoE接口(例如:pppoe-out1)。
    • Action选择masquerade
  2. 允许WireGuard端口的输入规则

    • 打开IP -> Firewall -> Filter Rules -> Add (+)
    • Chain选择input
    • Protocol选择udpDst. Port填写51820
    • Action选择accept

第四步:配置路由

  1. 添加路由规则

    • 打开IP -> Routes -> Add (+)
    • 家庭端添加到公司网段的路由,例如:192.168.2.0/24,通过WireGuard接口wg-home
    • 公司端添加到家庭网段的路由,例如:192.168.1.0/24,通过WireGuard接口wg-office

总结

  • 家庭端作为WireGuard服务器,因具有固定IP,服务器端可以监听来自公司端的连接。
  • 公司端作为WireGuard客户端连接到家庭端,只需配置家庭端的固定IP地址。
  • NAT配置依据上网类型分为src-natmasquerade两种形式。
  • 最后配置必要的防火墙规则,确保WireGuard流量的正常通过。

通过这些步骤,您可以成功在公司和家庭之间建立安全的WireGuard VPN隧道。

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »