IPtables転送MySQL

759 ワード

前言
一般的に、DBはもちろんイントラネットに置かれており、パブリックネットアクセスは許可されていません.しかし、私たちはまだ特殊な状況があって、外網が内網のデータベースにアクセスすることができることを必要として、この時、私たちはエージェントを使うことができて、HAエージェントで間違いを報告することを発見して[reading initial communication packet]、それから考えて、IPtablesでエージェントをすることを考えました.
本文
実は簡単で、DNATとSNATが1つしか必要ありません.
MYSQLIP='192.168.1.1'
HAIP='172.19.244.5'
iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT --to-destination $MYSQLIP
iptables -t nat -A POSTROUTING -p tcp --dst $MYSQLIP --dport 3306 -j SNAT --to-source $HAIP

修正が完了すると、iptables-saveでIPtablesルールをファイルに保存できます.この方法は、他のサービスが外部ネットワークへのアクセスにも適用されます.
まとめ
IPtablesのSNATとDNATはエージェントにとって非常に使いやすく、特に現在ではほとんどのサーバがイントラネットの「クラウド」に設置されており、IPを1つ少なく買えばコストを節約できます.-