雙網卡iptables端口轉發

當前場景以下:linux

服務器A是雙網卡,有一個內網IP和一個公網IP服務器

內網IP: 10.0.10.30ssh

外網IP:  58.68.255.123tcp

服務器B只有內網網卡,內網IP:10.0.30.88,它能夠和10.0.10.30通訊。ide

如今的需求是客戶機須要經過公網去ssh鏈接服務器B,因爲服務器B沒有公網IP,因此只能經過經過服務器A的iptables作端口轉發。rest

  1. 打開linux內核的ip轉發功能。ip

    echo 1 > /proc/sys/net/ipv4/ip_forward(臨時開啓)ci

  2. 添加iptables規則。it

iptables -A PREROUTING -p tcp -d 58.68.255.123 --dport 3911 -j DNAT --to-destination 10.0.30.88:3911io

iptables -A POSTROUTING -p tcp -d 10.0.30.88 --dport 3911 -j SNAT --to-source 10.0.10.30


iptables -A FORWARD -d  10.0.30.88 -p tcp --dport 3911 -j ACCEPT

iptables -A FORWARD -s 10.0.30.88 -p tcp --sport 3911 -j ACCEPT


service iptables save

service iptables restart

相關文章
相關標籤/搜索