Linux

在新的 AlmaLinux 9 CHAIN_USER_DEL CHAIN_ADD 上執行 firewalld 失敗

  • October 26, 2022

嘗試firewalld在新的 AlmaLinux 9 VPS (OpenVZ) 上執行。只做了ff。至今:

dnf upgrade
systemctl start firewalld
systemctl enable firewalld
systemctl status firewalld

我立即收到這些錯誤:

Oct 26 06:58:14 myserver firewalld[1097]: ERROR: '/usr/sbin/iptables -w10 -t mangle -X' failed: iptables v1.8.7 (nf_tables):  CHAIN_USER_DEL failed (Device or resource busy): chain POSTROUTING_direct
Oct 26 06:58:15 myserver firewalld[793]: ERROR: '/usr/sbin/iptables -w10 -t nat -A PREROUTING -j PREROUTING_direct' failed: iptables v1.8.7 (nf_tables):  CHAIN_ADD failed (No such file or directory): chain PREROUTING
Oct 26 06:58:16 myserver firewalld[793]: ERROR: '/usr/sbin/iptables -w10 -t nat -A PREROUTING -j PREROUTING_direct' failed: iptables v1.8.7 (nf_tables):  CHAIN_ADD failed (No such file or directory): chain PREROUTING
Oct 26 06:58:17 myserver firewalld[1097]: ERROR: '/usr/sbin/ip6tables -w10 -t raw -X' failed: ip6tables v1.8.7 (nf_tables):  CHAIN_USER_DEL failed (Device or resource busy): chain PREROUTING_direct
Oct 26 06:58:17 myserver firewalld[1097]: ERROR: '/usr/sbin/ip6tables -w10 -t raw -X' failed: ip6tables v1.8.7 (nf_tables):  CHAIN_USER_DEL failed (Device or resource busy): chain PREROUTING_direct
Oct 26 06:58:18 myserver firewalld[793]: ERROR: '/usr/sbin/ip6tables -w10 -t nat -A PREROUTING -j PREROUTING_direct' failed: ip6tables v1.8.7 (nf_tables):  CHAIN_ADD failed (No such file or directory): chain PREROUTING
Oct 26 06:58:20 myserver firewalld[793]: ERROR: '/usr/sbin/ip6tables -w10 -t nat -A PREROUTING -j PREROUTING_direct' failed: ip6tables v1.8.7 (nf_tables):  CHAIN_ADD failed (No such file or directory): chain PREROUTING
Oct 26 06:58:20 myserver firewalld[1097]: ERROR: COMMAND_FAILED: '/usr/sbin/iptables -w10 -t mangle -X' failed: iptables v1.8.7 (nf_tables):  CHAIN_USER_DEL failed (Device or resource busy): chain POSTROUTING_direct
Oct 26 06:58:23 myserver firewalld[793]: ERROR: COMMAND_FAILED: '/usr/sbin/ip6tables -w10 -t nat -A PREROUTING -j PREROUTING_direct' failed: ip6tables v1.8.7 (nf_tables):  CHAIN_ADD failed (No such file or directory): chain PREROUTING

有任何想法嗎?

OpenVZ 是一個基於容器的解決方案;從他們的功能頁面

OpenVZ 的架構不同於傳統的虛擬機架構,因為它始終執行與主機系統相同的 OS 核心(同時仍然允許在單個容器中使用多個 Linux 發行版)。這種單核心實現技術能夠以接近零的成本執行容器。因此,OpenVZ 提供了比傳統虛擬化技術高一個數量級的效率和可管理性。

這使得 OpenVZ 更類似於 Docker,而不是類似於 KVM、VMware、VirtualBox 等虛擬化解決方案。特別是,這意味著物理伺服器上的所有容器都使用相同的主機核心。

如果在您的 VPS 中,您嘗試執行需要主機核心中不可用的特定核心功能的命令,那麼這不是您可以在 VPS 中解決的問題。

在您的情況下,似乎firewalld正在尋求nftables支持,並且似乎缺少該支持。


找到一個使用真正的虛擬機管理程序的 VPS 解決方案,其中每個 VPS 執行自己的核心,可以避免這個問題。

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