Linux

單VPS,多IP——基於IP的不同iptables規則

  • April 23, 2020

我目前有一個只有 1 個 IP 地址的 VPS,我想購買另一個 IP 並執行以下操作:

  • 有一個公共 IP,只有在埠 7777 (UDP) 上才允許傳入請求
  • 在那裡執行一個 Mysql 伺服器
  • 擁有隻有我可以訪問的另一個 IP(因此,私有),它將打開 http 和 ssh 埠(http 用於訪問 phpMyAdmin 和一個可以訪問上述 mysql 伺服器的小型控制面板)

我有足夠的知識來編寫 iptables 規則,我只是不知道如何為多個 IP 編寫它們。

不同 IP 地址的規則互不影響。您首先為其中一個地址編寫規則,然後為另一個地址編寫規則。

iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -d 1.2.3.4 -p udp --dport 7777 -j ACCEPT
iptables -A INPUT -d 1.2.3.5 -p tcp --dport   22 -j ACCEPT
iptables -A INPUT -d 1.2.3.5 -p tcp --dport   80 -j ACCEPT
iptables -A INPUT -d 1.2.3.5 -p tcp --dport  443 -j ACCEPT
iptables -P INPUT DROP

引用自:https://serverfault.com/questions/1013822