Mysql
使用 CentOS 在 iptables 上轉發埠 3306 時出現問題
我試圖在 200.58.126.52 向 mysql 伺服器添加轉發以允許從 200.58.125.39 訪問,並且我使用以下規則(它是我主機的 VPS 的整個 iptables)。我可以在將 mysql 服務作為 localhost 的伺服器上進行本地連接,但不能從外部連接。
有人可以檢查以下規則是否正確嗎?謝謝
# Firewall configuration written by system-config-securitylevel # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT - [0:0] -A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT -A RH-Firewall-1-INPUT -p 50 -j ACCEPT -A RH-Firewall-1-INPUT -p 51 -j ACCEPT -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp -s 200.58.125.39 --dport 3306 -j ACCEPT -A INPUT -p tcp -s 200.58.125.39 --sport 1024:65535 -d localhost --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT -A OUTPUT -p tcp -s localhost --sport 3306 -d 200.58.125.39 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT COMMIT
這是連接試驗的輸出。
$$ root@qwhosti /home/qwhosti/public_html/admin/config $$# mysql -u user_db -p -h 200.58.126.52 Enter password: ERROR 2003 (HY000): Can’t connect to MySQL server on ‘200.58.126.52’ (113)
RH-Firewall-1-INPUT
在規則之前在鏈上添加新-j REJECT
規則。規則從上到下閱讀,第一個匹配的被應用;由於規則上沒有說明符REJECT
,因此您的傳入連接REJECT
在它們可以被轉發之前被編輯。