Iptables

阻止特定埠上的傳出流量而不阻止內部流量

  • October 21, 2021

我在埠 3000 上託管服務。使用 apache,我將其https://git.mywebsite.com代理到http://mywebsite.com:3000. 現在,如果我輸入以下命令:

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

它確實阻止了外部使用者訪問http://mywebsite.com:3000,但現在 apache 也不能再在內部訪問它,這意味著https://git.mywebsite.com也關閉了。有沒有辦法解決這個問題?

我假設您的 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>您的面向 Internet 的介面名稱在哪裡。

引用自:https://serverfault.com/questions/1081187