2015-10-07 47 views
2

我有一個運行MYSQL(5.5.41)的根服務器(Ubuntu 14.04),並試圖從兩個不同的服務器上的兩個不同的主頁訪問數據庫。主頁服務器使用靜態ips。 我在根上設置了iptables。SQL Server和主服務器之間沒有連接

iptables -A INPUT -p tcp --dport 3306 -s 127.0.0.1 -j ACCEPT 
iptables -A INPUT -p tcp --dport 3306 -s 'my_homepage_ip' -j ACCEPT 
iptables -A INPUT -p tcp --dport 3306 -j REJECT --reject-with icmp-port-unreachable 

如果我試圖從兩個主頁我得到訪問服務器: 無法連接到MySQL服務器「SERVER_IP」(111)2003。

主頁在一些名爲1und1的德國供應商的網站上運行。

如果我打開iptables並刪除拒絕行,一切工作正常。此外,我嘗試從本地計算機訪問SQL Server,該計算機使用與我在主頁服務器上使用的腳本相同的腳本運行XAMPP服務器。這工作正常。

Server('my_server')和Port(3306)在我的php腳本中定義。

$db = new mysqli(DB_SERVER, DB_USER, DB_PASS, DB_NAME, DB_PORT); 

我認爲我得到了網頁服務器的網頁服務器的或錯誤的IP地址使用其他端口超過3306

回答

0

試着改變你的3號線到iptables -A INPUT -p tcp --dport 3306 -j LOG。這會將所有對MySQL端口的嘗試都記錄到您的/var/log/messages文件中,包括源IP地址。這將允許您驗證源IP是否與您的網站正確使用的IP相同。如果不同,只需將第2行更改爲正確的IP地址即可。

相關問題