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
    • 最新
    • 标签
主页 / server / 问题 / 825473
Accepted
user1801810
user1801810
Asked: 2017-01-11 19:20:33 +0800 CST2017-01-11 19:20:33 +0800 CST 2017-01-11 19:20:33 +0800 CST

Netfilter - LAN -> VPN 客户端

  • 772

我有一个远程办公室,带有运行 OpenVPN 的防火墙,客户端可以连接到该防火墙。

防火墙接口:
* eth0 - 1.2.3.4(公共)
* br0 - 192.168.1.1 (/24)
* tun0 - 192.168.254.1(/24,VPN 客户端)

因此 VPN 客户端 192.168.254.0/24 可以看到 192.168.1.0/24,尽管他们不需要。但我确实需要 192.168.1.0/24 才能与 VPN 客户端通信。从防火墙本身,我可以通过 SSH 连接到 VPN 客户端。从一个 VPN 到另一个我可以通过 SSH 连接 - 虽然这个流程不是必需的,但在某些时候它可能会很好。问题是我无法从 192.168.1.0/24 上的主机通过 SSH 连接到 VPN 客户端。每个链、输入、转发和输出的默认策略是丢弃。

我觉得这不是 OpenVPN 问题,而是 netfilter (iptables) 问题。

相关规定:

INPUT -p udp --dport 1194 -j ACCEPT
FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
FORWARD -i br0 -o tun0 -j ACCEPT
FORWARD -i tun0 -o br0 -j ACCEPT
FORWARD -s 192.168.254.0/24 -j ACCEPT
OUTPUT -d 192.168.254.0/24 -j ACCEPT

上述规则都得到了命中。我已经尝试了具有各种源和目标接口以及 IP 地址的其他规则,但无法提出缺少的内容。我最初认为,最明显的是:

转发 -d 192.168.254.0/24 -j 接受

...但是添加后它不起作用。甚至没有受到打击。

=== EDIT 1 ===
防火墙有以下路由:

192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br0
192.168.254.0   0.0.0.0         255.255.255.0   U     0      0        0 tun2

此外,以下规则(也在上面列出)......

FORWARD -i br0 -o tun0 -j ACCEPT

...当 192.168.1.0/24 主机尝试访问 VPN 客户端时被点击。

=== 编辑 2 ===
从 192.168.1.x(特别是 .171)我做了traceroute --icmp 192.168.254.2一段时间在防火墙的 tun0 接口上运行数据包捕获,我看到了请求但没有回复。目标 192.168.254.2 从 192.168.254.0/24 回复 traceroute。它允许所有 ICMP。广泛的防火墙规则允许此流量,FORWARD -i br0 -o tun0 -j ACCEPT并且我看到它已相应记录。

firewall iptables
  • 2 2 个回答
  • 111 Views

2 个回答

  • Voted
  1. Carl
    2017-01-12T06:57:57+08:002017-01-12T06:57:57+08:00

    你的 FORWARD 表中有这个:

    iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
    
    • 0
  2. Best Answer
    user1801810
    2017-01-17T09:37:51+08:002017-01-17T09:37:51+08:00

    要么我对本地路由表的工作方式有误,要么有其他问题,但这是我为使其正常工作所做的工作。我更改了 VPN 客户端的本地子网,因为它与 VPN 服务器后面的子网相同,即 VPN 服务器上的接口 br0。

    VPN 服务器的防火墙规则正确,VPN 配置正确。

    VPN 客户端上的路由表在连接到 VPN 时,正在获得具有正确度量和接口的正确路由......具有获胜度量的 0.0.0.0 和 192.168.1.0/24 都指向 tun0 接口。

    • 0

相关问题

  • 用 D-LINK DFL-CPG310 防火墙替换 Cisco Pix 防火墙

  • MSMQ 防火墙端口

  • IP-KVM(在我的例子中是 ADDER Ipeps):轻松防火墙穿越

  • 远程连接 sql server 不工作,但如果防火墙禁用它呢?

  • 服务器 2003 R2 上的 Cisco VPN 客户端

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve