有多种答案。我个人认为这些都不是关键,但它们整体上是有道理的,尤其是在考虑成本和收益时。
防止配置错误:路由器/防火墙让您打开真正需要的互联网端口。也许您需要从网络内部进行更多访问。您可以在路由器级别阻止它,但让服务器本身保持“开放”状态。
分层安全:您可以在 DMZ 中拥有一个无法访问内部网络的服务器。但是在同一个互联网 IP 上,您想要访问您的内部网络。如果前者被黑客入侵,黑客就可以访问该特定服务器,但不能访问其他服务器。这是假设您在初始路由器和服务器“后面”有第二道防线。
最后但并非最不重要的一点是,您可以在防火墙上配置网络之外的内容。如果你知道,这个特定的服务器应该只向互联网服务器 X 发送数据包,你可以限制它。
路由器可以向多个内部设备发送多个 IP。您的防火墙规则仍然保留在一台物理机器上。
总的来说,您是对的,在 Internet 和您的主服务器之间添加专用路由器/防火墙在安全意义上没有太多额外好处。与通用计算机相比,使用专用硬件设备仍有一点好处。所有 Linux/Unix 发行版基本上都可以在一台机器上做同样的事情。而且我们仍然有一个服务分离,因为防火墙在内核中,而应用程序通常在用户空间中。
那么问题就变成了可维护性。您允许哪些 IP 地址和 TCP 端口通过您的网络以及到哪里(如果有多个主机)。
此外,专用防火墙/路由器/设备可以帮助您捕获进出网络的流量,作为捕获的中心点。
TL; 博士
对于小型网络或单个主机,在主机上安装 iptables/pfSense 防火墙就足够了,对于较大的网络,有许多不同的小好处,这使得使用中央防火墙/路由器很有用。