我在端口 7000 上运行一个应用程序,它是网络的一部分。因此,它必须通过端口 7000 与网络的所有其他服务器(不是 LAN,动态 IP)进行通信。它还有一个 Web 前端,您可以在http://my.ser.ver.ip:7000但我想阻止对 Web 前端的访问。如何在不阻止我的应用程序的情况下实现这一点?
答案1
如果我正确理解了你的问题,你有多种方法可以阻止从服务器外部访问你的应用程序。
- 您可以将应用程序设置为仅适用于 127.0.0.1/8 IP 地址。
- 您可以通过 iptables 来阻止它。
我的最佳实践是第一个选择。
答案2
您可以通过 .htaacess 文件阻止此操作。在.htaccess您需要仅允许通过您的公共 IP 地址进行应用程序,并拒绝所有其他 IP 地址。下面我分享了需要输入的内容.htaccess文件。
Order deny,allow
allow from 1.2.3.4 #Your Public IP, only this IP is accessible to application.
deny from all
这将帮您解决问题。
答案3
您需要阻止对端口 7000 的任何访问,然后仅允许网络中的服务器访问端口 7000。这样,您就可以有效地阻止 Web UI 被访问,除非您从网络内的服务器访问它。
HTTP 是一种协议(HTTP 中的 P)并在端口 80 上运行。UFW 无法根据它是否是网页来阻止它,因为它仅管理 iptables,并且只有在建立连接后才知道它是一个网页。
根据您使用的 Web 服务器,您可以使用 imvikasmunjal 的建议。但是“阻止所有人访问端口 7000”然后向特定 IP 授予特定访问权限在我看来是最好的方法