2017-05-03 98 views
-2

我有兩臺服務器:xxx.xxx.xx.xx和yyy.yyy.yy.yy.在第一個的默認端口5432上有一個postgres實例,我希望它只能從這兩個特定的IP地址訪問。如何讓特定端口可以通過iptables從特定IP地址訪問

我嘗試以下,並沒有爲我工作:

iptables -I INPUT -p tcp -s xxx.xxx.xx.xx --dport 5432 -j ACCEPT 
iptables -I INPUT -p tcp -s yyy.yyy.yy.yy --dport 5432 -j ACCEPT 
iptables -I INPUT -p tcp -s 0.0.0.0/0 --dport 5432 -j DROP 

後,它telnet xxx.xx.xx.xx 5432無法從任何這兩個服務器的連接。

我在做什麼錯?

+0

我對iptables非常陌生,對於我做的錯誤沒有太多的理解,對於虛擬問題抱歉 –

+0

這不是一個與編程相關的問題,所以它不適用於Stack Overflow。我會嘗試[su]或[ubuntu.se]。 – jmoerdyk

回答

0

你的其他連鎖店如何?我的意思是,你放棄你的OUTPUT鏈嗎?我猜你有OUTPUT丟包。

如果您丟棄該OUTPUT鏈,則需要爲其設置相同的值。在tcp連接上連接後,總會有一個到客戶端的反向連接(與OUTPUT鏈相匹配)。

你的問題的其他可能的解釋可能是你的ips網掩碼...你應該使用xxx.xxx.xx.xx/32xxx.xxx.xx.xx/255.255.255.255這是相同的。當然,你的其他IP yyy.yyy.yy.yy也是如此。

祝你好運!

相關問題