阻止特定端口上的传出流量而不阻止内部流量

阻止特定端口上的传出流量而不阻止内部流量

我在端口 3000 上托管一项服务。使用 apache,我将其代理https://git.mywebsite.comhttp://mywebsite.com:3000。现在,如果我输入以下命令:

sudo iptables -A INPUT -p tcp --dport 3000 -j DROP

它确实阻止了外部用户访问http://mywebsite.com:3000,但现在 Apache 也无法再从内部访问它,这意味着https://git.mywebsite.com它也宕机了。有办法解决这个问题吗?

答案1

我假设您的 Apache2 代理用作localhost:3000代理目的地。

最好的选择是配置您的服务,使其127.0.0.1:3000在启动时仅绑定到地址,而不是0.0.0.0:3000。这可以防止任何外部人员连接到该服务。

第二种选择使用方法iptables如下:

sudo iptables -A INPUT -i <IFNAME> -p tcp --dport 3000 -j DROP

<IFNAME>您的面向互联网的接口名称在哪里?

相关内容