![两个类似的服务,两个 IP,一台服务器?](https://linux22.com/image/728367/%E4%B8%A4%E4%B8%AA%E7%B1%BB%E4%BC%BC%E7%9A%84%E6%9C%8D%E5%8A%A1%EF%BC%8C%E4%B8%A4%E4%B8%AA%20IP%EF%BC%8C%E4%B8%80%E5%8F%B0%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9F.png)
我正在运行 CentOS 7 机器。在这个机器上,我有两个服务,它们都应该使用端口 443 进行 HTTPS 流量公开。使用反向代理是不可能的,因为一个服务不能重新配置到另一个端口。
我想要这样解决这个问题:这台机器有两个 IP 地址 - 我们称之为 A 和 B。在 A 上,我想使用端口 443 发布第一个服务。这很好。在 B 上,我想使用转发端口发布另一个服务。
无论我做什么,我总是将第一个服务绑定到 IP A 和 B。使用防火墙,我为每个接口创建了单独的区域,在一个服务上打开了端口 443,并向另一个服务添加了端口转发。但无济于事。
似乎卡在端口 443 上的应用程序优先于防火墙隐含的规则,可能是这样吗?那么,我该如何改变这种情况?我无法对此应用程序进行任何更改,因此我的修复应该在操作系统/防火墙级别进行。
提前感谢任何帮助!
答案1
防火墙无法完成您要做的事情。最简单的答案是重新配置应用程序 A,使其不监听(大概)所有接口。由于您无法做到这一点,其他选项是使用网络命名空间或虚拟机。在这两种情况下,您都会创建一个虚拟接口,为其指定一个 IP,将服务连接到它,并将其与物理接口桥接。