我正在尝试使用netcat从一个虚拟机连接到端口25到另一个虚拟机但它告诉我没有到主机的路由,尽管我可以ping通.我确实将防火墙默认策略设置为丢弃,但我有一个例外,即接受该特定子网上端口25的流量.我可以使用nc从端口25上的VM 3连接到VM 2,但不能从VM 2到3连接.
这是我的VM2防火墙规则的预览
这是VM 3防火墙规则的预览
当我显示监听服务时,我有*:25表示它正在侦听所有ipv4 ip地址,而::: 25表示ipv6地址.我不明白错误在哪里,为什么不工作防火墙规则接受端口25上的流量所以它应该是连接.我尝试比较两者之间的差异,看看为什么我可以从vm3连接到vm2,但配置完全相同.关于可能出现什么问题的任何建议?
Update stopping the iptable service resolves the issue but I still
need those rules to be present.
解决方法:
当机器可以ping通时,您的“无主机路由”是防火墙的标志,它拒绝您礼貌地访问(即使用ICMP消息而不仅仅是DROPping).
看你的REJECT线?它们与描述匹配(REJECT与ICMP xxx).问题在于那些看似(#)的全部REJECT线都在你的规则中间,因此以下规则根本不会被执行. (#)很难说如果这些是实际的全部行,iptable -nvL的输出将是更可取的.
将这些REJECT规则放在最后,一切都应该按预期工作.
标签:netcat,linux,centos,iptables,firewall
来源: https://codeday.me/bug/20190809/1632076.html