AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 699406
Accepted
Airwan
Airwan
Asked: 2022-04-18 12:47:33 +0800 CST2022-04-18 12:47:33 +0800 CST 2022-04-18 12:47:33 +0800 CST

Openbsd 线卫到线卫

  • 772

我建立了一个服务器(vps),它扮演我的网关角色。我的整个个人网络都通过wireguard 连接在后面。每个想法都很好,我或多或少地遵循https://openbsdrouterguide.net和 pf 文档。

我现在的问题是:我希望我的网关使用wireguard通过protonvpn与互联网(我的个人网络除外)通信。我在其上构建了一个新的 wg 界面,带有质子配置,它显然运行良好。但我不知道如何在外出之前通过质子接口(wg1)将我的私人局域网(wg0)的传出流量(到互联网)传递。

是路由问题还是 pf 规则的东西?

如果您能给我一些提示,请提前致谢。

route openbsd
  • 2 2 个回答
  • 264 Views

2 个回答

  • Voted
  1. Best Answer
    Zé Loff
    2022-04-19T05:28:50+08:002022-04-19T05:28:50+08:00

    首先,您需要确保wg1是 VPS 上的出口接口(即,所有到互联网的流量都将在该接口上流出。这可以通过将远程端设置wg1为默认网关来实现,使用route。如果 VPS 有其他接口(和网关),您可能想要更改wg1的优先级。 route也将有助于确保一切按预期工作:route -n show检查路由表并route -n get <some_external_ip_address>检查数据包将通过哪些接口离开机器。

    然后,您需要使用 PF将传入流量(即从wg0) NAT 到wg1

    vps = <ip_addresses of the vps>
    my_lan = <ip addresses of the LAN, or its network range>
    
    pass in on wg0 from $my_lan to !$vps
    pass out on wg1 from $my_lan nat-to wg1
    

    on /etc/pf.conf(请不要盲目复制粘贴,并根据您的情况进行调整)。

    我实际上会分别尝试每个步骤:首先简单地尝试设置 NAT 并查看 VPS 是否充当网关,而不使用 ProtonVPN。然后禁用NAT,将ProtonVPN设为默认网关,查看VPS是否默认通过它访问互联网。然后最后把这两件事联系在一起。

    另外,请注意,在远程机器上更改路由表和 PF 规则是一种将自己锁定在外的久经考验的方法。我们都去过那里。控制台访问是可取的。

    • 1
  2. Airwan
    2022-04-19T11:46:10+08:002022-04-19T11:46:10+08:00

    非常感谢泽。它有很大帮助。我不知道路线得到!应该阅读更多手册页:o 我不确定我有一个“安全”的配置,但它可以工作!如果它可以帮助别人,我会给出一些步骤。在 vps 服务器上安装两个 wg 接口后:

    1. 将默认路由更改为 wg1 (protonvpn) 接口的 ip。所有传出流量都将通过 wg1。

    2. 添加带有目标 protonvpn 端点的路由(您放入 wg1 作为端点的那个)与网关原始 ISP 提供商网关。这允许将 protonvpn 端点与您的 Internet 连接接口连接。

    3. 在私有局域网中添加目的地您的计算机外部 IP 和您的 ISP 提供商的网关!确实,我的私人局域网 wg0 不应该通过 protonvpn 进行通信,否则它会弄乱一切,因为通信到达我的 vps IP 并通过 protonvpn 出去......这对我来说是必要的,也许还有其他选择?因为我被动态IP卡住了。对于 wg 来说,可以使用 keep alive 选项。但是对于路由表,我应该编写脚本吗?我应该使用 pf rdr-to 吗?

    4. 在 pf 中添加翻译规则(也传入 wg0 和 wg1):

    • 将 $ext 从 wg0:network 传递到任何 nat-to $ext # 这允许与我的私有局域网进行通信,$ext 是我连接到互联网的接口。
    • 将 $ext 从 wg1:network 传递到任何 nat-to $ext
    • 将 $wg1 从 wg0:network 传递到任何 nat-to $ext # 从私有 lan 到 proton vpn 的 nat 流量

    第3点有什么想法吗?

    • 0

相关问题

  • “错误:无法打开显示::0” - 以其他用户身份运行 GUI 应用程序

  • 简而言之,OpenBSD 的承诺是什么?

  • 如何创建 Windows XP 风格的 fvwmrc 文件?

  • cpg 在磁盘分区安装 OpenBSD 时是什么意思?

  • 如何跟上 OpenBSD 的潮流?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve