![防火墙:转发端口 25 时出现问题,而其他端口转发正常,“丰富规则”日志记录未显示任何条目](https://linux22.com/image/804261/%E9%98%B2%E7%81%AB%E5%A2%99%EF%BC%9A%E8%BD%AC%E5%8F%91%E7%AB%AF%E5%8F%A3%2025%20%E6%97%B6%E5%87%BA%E7%8E%B0%E9%97%AE%E9%A2%98%EF%BC%8C%E8%80%8C%E5%85%B6%E4%BB%96%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91%E6%AD%A3%E5%B8%B8%EF%BC%8C%E2%80%9C%E4%B8%B0%E5%AF%8C%E8%A7%84%E5%88%99%E2%80%9D%E6%97%A5%E5%BF%97%E8%AE%B0%E5%BD%95%E6%9C%AA%E6%98%BE%E7%A4%BA%E4%BB%BB%E4%BD%95%E6%9D%A1%E7%9B%AE.png)
因此,我安装了Fedora Core 19这是第一次替代磁盘最终损坏的旧系统。该系统充当Web 服务器和网关/防火墙,保护内部系统。因为它有很多网络配置,所以我得到了介绍 - 并且发现我非常喜欢 -新的防火墙守护进程,firewalld。
我以为一切都很顺利(麻烦总是在这时候发生),突然我发现内部邮件服务器的maillog 文件变得疯狂- 幸运的是,在一切正常后 6 个小时我仍然可以观看它。
调查显示,问题在于我的内部邮件系统(受防火墙保护)不知何故认为所有出站邮件都来自网关系统,因此它是一个“内部”系统,而垃圾邮件发送者发现它是一个开放中继。我还注意到,内部区域和外部区域以某种方式被标记为“伪装”,并且实际上邮件日志文件中感知到的 IP 地址是网关的 IP。通过转发的 ssh 端口登录也证实了内部使用了错误的 IP。
没问题!”我错误地想。是的,关闭内部区域的伪装确实解决了通过网关时传递给内部系统的错误 IP。然而,它并没有解决问题,因为,令人费解的是(到目前为止!)看起来好像端口 25 不再被转发!
其他端口正在被转发,至少我提到的容易测试的 ssh 端口是这样的。所以,我想,我只需要打开那个花哨的日志功能! 命令如下:
firewall-cmd --zone=external --add-rich-rule='rule family="ipv4" forward-port port="25" protocol="tcp" to-port="25" to-addr="192.168.1.1" log prefix="smtp-to-inside" level="info"'
我尝试使用永久选项,但是不行,等等。/var/log/messages 中什么也没有显示- 或者我能想到的任何其他日志文件。好像内核只是忽略了那个端口。我想也许内部邮件系统可能会用防火墙阻止外部流量,但是网关应该记录连接尝试,但我得到没有什么。
任何并感谢所有帮助。
答案1
尽管该问题确实指出了防火墙日志的一个错误,但它与防火墙无关。
问题是,在升级期间,我将提供邮件服务的内部系统的默认路由切换到了与升级无关的其他网关/防火墙。我认为这是个好主意,因为新系统有问题。
当我返回内部 SMTP 服务系统以使用新的网关机器作为其默认路由时,一切都开始正常工作!原来有一项要求没人告诉你- 从未发现过相关记录,但现在我找到了,一些老前辈证实 - 默认路由必须设置为与数据包转发的路径相同,或者必须设置特殊路由以将数据包返回到它们来自的相同路径。这就是要求:返回路由必须等于源路由。
祝你好运!