Linux 使用 SSH 的非对称路由不起作用

Linux 使用 SSH 的非对称路由不起作用

我有:

eth0                         eth0 
Router 1|eth1 ----  eth1|Router 2

两个 eth0 都连接到互联网。但是,目前路由器 2 上到达互联网的默认路由是通过 eth1(因此它经过路由器 1)。路由器 1 可以正常访问互联网,但是我无法从互联网 ssh 到路由器 2 上 eth0 上的 ip。

我尝试了“sudo bash -c 'echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter”,但问题并未解决。当我在路由器 2 上执行数据包转储时,对尝试 ssh 到路由器 2 的机器的源 IP 进行过滤,我看到了传入的数据包,但没有回复。

答案1

一些问题:

路由器 2 上是否运行了防火墙?

SSH 是否在路由器 2 上运行?

路由器 1 上是否有 NAT 或访问规则?

两个路由器上的路由都正确吗?

答案2

请显示您的路由表。这很可能是路由问题 :)

要获取路由表,请输入

route -n

答案3

事实上,我的 rp_filter 想法是正确的解决方案。当我在两个路由器上禁用它时,问题就解决了。

这显然是 BIG HAMMER 方法,所以我需要研究所有逻辑并找出我需要有选择地禁用哪些,然后使用 iptables 为其提供更细粒度的保护……未完待续 :-)

相关内容