用 IPTABLES 的埠轉發功能實現訪問位於內網的 MySQL 伺服器

lizhiqiang666發表於2020-01-15

概述:公司有一些核心MYSQL伺服器位於核心機房的內網段,作為運維人員,經常需要去連線這些伺服器,因無法直接通過外網訪問,給管理造成了不便。

思路:雖然解決此問題的方法及思路有很多,但當下想使用IPTABLES的埠重定向功能解決此問題,比較簡單易用,而且擴充套件性也比較好,依次類推,可以運用到其他的埠轉發方面的應用。

網路環境:
公網伺服器:eth0:公網IP    eth1:內網IP - 192.168.1.1
MYSQL伺服器:eth1:內網IP - 192.168.1.2
實現方法:通過訪問公網IP的63306埠來實現到內網MYSQL伺服器的3306埠的訪問
在公網伺服器上:
配置指令碼:

iptables -t nat -A PREROUTING -p tcp --dport 63306 -j DNAT --to-destination 192.168.1.2:3306
iptables -t nat -A POSTROUTING -d 192.168.1.2 -p tcp --dport 3306 -j SNAT --to 192.168.1.1

允許伺服器的IP轉發功能:
echo 1 > /proc/sys/net/ipv4/ip_forward
使用方法:
mysql -h 公網IP -p 63306 -uroot -p

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章