Iptables

如何將 proxmox 防火牆規則應用於虛擬機?

  • May 14, 2018

這是我目前的情況:

我在雲中有一個 proxmox 伺服器。我安裝了 2 個具有不同 IP 的虛擬機(與主 proxmox 伺服器不在同一個子網中 - 請參閱THIS以了解原因)。

在 proxmox 機器本身上,我設置了一個完美執行的 iptables 規則列表。

# Allow localhostinterface
/sbin/iptables -A INPUT -i lo -j ACCEPT

#icmp
/sbin/iptables -A INPUT -p ICMP -j ACCEPT

#home network
/sbin/iptables -A INPUT -s xx.xx.xx.xx -j ACCEPT

# Allow already established connections
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Set default policies
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT ACCEPT

#LOG IPTABLES
/sbin/iptables -N LOGGING
/sbin/iptables -A INPUT -j LOGGING
/sbin/iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IPTables-Dropped: " --log-level 4
/sbin/iptables -A LOGGING -j DROP

但是,出於某種原因,這些規則不適用於虛擬機,因為這些虛擬機完全沒有安全性。有沒有辦法將在 proxmox 伺服器上有效的相同規則應用於 vms?

今天早上我遇到了完全相同的問題,然後我也發現了你的問題。

根據此文件,我們只能使用 PVE 防火牆設置 VM 範圍的規則,方法是為所有機器創建一個具有全域規則的安全組,然後將其添加到節點上的每個 VM。這樣,一旦修改了安全組,更改將影響所有使用它的虛擬機。

我覺得這有點不方便,因為我認為其中定義的任何規則/etc/pve/nodes/<nodename>/host.fw也應該影響其 VM,因為已經存在一個名為“數據中心”(或“集群”的覆蓋區域,因為規則/etc/pve/firewall/cluster.fw完全出現在 GUI 的數據中心部分) 而且我還懷疑這是一個架構問題,將在不久的將來修復/更改。

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