Linux

僅對 localhost 和特定地址打開 mysql

  • January 22, 2010

我的配置:ubuntu 伺服器 9 和 msyql 5

my.cnf = bind-address = 0.0.0.0

我的 iptables 腳本 =

iptables -A INPUT -i eth0 -s 99.88.77.66 -p tcp --destination-port 3306 -j ACCEPT

我可以從任何地方連接到 mysql,而不僅僅是那個 IP。我做了一個 iptables-save , /etc/init.d/netwokring restart … 但我仍然可以從任何 IP 連接,有什麼線索嗎?

此規則允許來自 99.88.77.66 的連接,它不會阻止來自其他地方的連接。為此,您應該有一個規則,對於所有傳入連接預設為 DROP

iptables -P INPUT DROP

然後繼續只允許那些你明確想要的。或者,您可以專門為所有非 99.88.77.66 的客戶端關閉埠 3306

iptables -A INPUT -i eth0 -s ! 99.88.77.66 -p tcp --destination-port 3306 -j DROP

該規則允許從特定 IP 到埠 3306/tcp 的流量。您需要稍後的規則(或預設策略)將所有其他流量丟棄到該埠,因為預設的 iptables 策略是允許一切。

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