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
    • 最新
    • 标签
主页 / computer / 问题 / 1725998
Accepted
uhsl_m
uhsl_m
Asked: 2022-06-12 12:35:37 +0800 CST2022-06-12 12:35:37 +0800 CST 2022-06-12 12:35:37 +0800 CST

firewalld:作为wireguard VPN网关转发流量

  • 772

我已经使用 Wireguard 和 Nftables 设置了一个运行 Pi OS 11 的 pi 作为本地网络的 VPN 网关,一切正常。

但是,我希望在不使用 iptables 的情况下切换到 firewalld 以与 docker 兼容。

我到目前为止是这样的:

  • 内部区域:eth0
  • 外部区域:wg0

我无法弄清楚如何让防火墙在 eth0 和 wg0 之间转发流量。使用原始 nftables 我只有以下内容,默认情况下我的正向链下降:

nft insert rule inet firewall forward iifname "eth0" oifname "wg0" accept
nft insert rule inet firewall forward iifname "wg0" oifname "eth0" ct state related,established accept

但是我无法找到如何在接口之间有条件地转发,如上述规则。

我不希望 eth0 在带有 wg0 的外部区域中,因为如果 VPN 出现故障,我希望互联网访问终止切换,而且它有点违背区域的整个想法,不是吗?eth0 仅用于 LAN 而 wg0 用于外部连接。

raspberry-pi vpn
  • 1 1 个回答
  • 174 Views

1 个回答

  • Voted
  1. Best Answer
    Justin Ludwig
    2022-06-14T11:29:01+08:002022-06-14T11:29:01+08:00

    使用 firewalld 0.9 和更高版本,您可以使用firewalld 策略对象来控制跨区域转发(在 firewalld 0.9 之前,没有办法做到这一点)。

    如果您已eth0绑定到您的internal区域并wg0绑定到您的external区域,您可以使用以下一系列命令来创建新的自定义策略internal2external,并使用该策略接受从转发到的所有新eth0连接wg0:

    firewall-cmd --runtime-to-permanent
    firewall-cmd --permanent --new-policy=internal2external
    firewall-cmd --permanent --policy=internal2external --set-target=ACCEPT
    firewall-cmd --reload
    firewall-cmd --policy=internal2external --add-ingress-zone=internal
    firewall-cmd --policy=internal2external --add-egress-zone=external
    

    (Firewalld 会自动添加一揽子规则来接受所有已建立/相关的转发连接,因此如果它只需要转发已建立的连接,则无需为反向路径单独设置任何内容。)

    • 1

相关问题

  • 任何设备上的 OpenVPN - 仅转发 DNS

  • 防止Wifi AP阻塞3g/4g网络

  • 错误的 CPU 平均负载,Fedora 28 + Raspberry Pi 3

  • OpenVPN 可以连接,流量有效但我不在本地网络中

  • Notify-发送窗口下出现的通知

Sidebar

Stats

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

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 为什么通过电缆(同轴电缆)的千兆位/秒 Internet 连接不能像光纤一样提供对称速度? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve