IPtables 帮助通过 WireGuard 连接转发端口

IPtables 帮助通过 WireGuard 连接转发端口

我的家庭服务器位于运营商 NAT 后面,因此无法将任何端口转发到它。我在服务器上运行 PLEX(在 docker 容器中),并希望从家庭网络之外访问它。因此,我租用了一个 VPS(Amazon Lightsail),正如我的想法,它可以充当 WireGuard VPN,我可以将 PLEX 容器连接到它。

我附上了情况的简要概述(抱歉字迹潦草):

小概述

我想

  • PLEX 容器既可以通过外部访问(通过 WireGuard VPS 的公共 IP),也可以通过我自己的网络访问(通过家庭服务器的本地 IP;端口映射到 docker 容器)
  • 在家庭服务器上运行 WireGuard在 Docker 容器中,并将 PLEX 容器附加到所述 WireGuard 容器
  • PLEX/WireGuard 容器具有 WireGuard VPS 的公共 IP - 这是因为某些 PLEX 客户端会自动尝试连接到 PLEX 服务器具有/识别的 IP。如果这是家庭服务器的运营商 NAT IP,则无法访问 PLEX 服务器。据我了解,我不能在 PLEX 客户端/服务器中更改此行为

我有点困惑如何让这一切正常工作。据我了解,配置如下:

  • WireGuardport在 AWS 设置中将和转发PLEXport到 VPS
  • 取消注释 VPS 上的注释net.ipv4.ip_forward = 1/etc/sysctl.conf以启用将 VPS 上的传入请求从eth0转发到wg0
  • /etc/wirguard/wg0.conf在 VPS 上使用[INTERFACE][PEER]部分创建
  • 创建wg0.conf带有一个[INTERFACE][PEER]用于家庭服务器 WireGuard docker 容器的部分,并将其放在/config文件夹的根目录中
  • IPTABLES在 VPS 上设置规则,以便实际PLEXport路由eth0往返wg0。这可以通过在VPS[Interface]的部分中添加这些规则来完成/etc/wirguard/wg0.conf(对吗?还是我需要在 VPS 的终端上执行此操作?)。我需要帮助,因为我不完全理解它,也不知道/不理解语法。思考您还可以在此处指定主服务器 Wireguard+PLEX 容器的 WireGuard IP。
  • IPTABLES在家庭服务器 Wireguard+PLEX 容器(在?)设置规则wg0.conf,以使 PLEX 也可以在本地网络上访问。我也需要这方面的帮助

我希望这能正确解释这个问题;非常感谢您的帮助。

相关内容