You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

设置kernel.modules_disabled=1时能否在Ubuntu 22.04 VPS上使用ufw?

设置kernel.modules_disabled=1时能否在Ubuntu 22.04 VPS上使用ufw?

很遗憾,默认情况下是没办法同时使用的,原因很直接:

当你把kernel.modules_disabled设为1时,内核会彻底禁止加载任何未直接编译进内核的模块。而ufw本质上是iptables/nftables的前端工具,它依赖的核心功能(比如ip_tables、ip6_tables、nf_tables这些网络过滤模块)在Ubuntu 22.04的默认内核里都是以可加载模块的形式存在的,不是内置到内核中的。当模块被禁用后,ufw无法调用这些必要的内核组件,自然就会抛出"Couldn't determine iptables version"这样的错误。

如果确实想要同时实现kernel.modules_disabled=1的加固效果和ufw的防火墙功能,唯一的途径是自定义编译内核,把ufw依赖的所有必要网络过滤模块直接编译进内核(而不是作为可加载模块)。但这个操作门槛很高,需要你熟悉内核编译流程,而且后续系统更新也会变得麻烦,不适合普通用户。

给你两个更务实的替代方向:

  • 把kernel.modules_disabled改回0,改用其他方式限制模块加载:比如通过/etc/modprobe.d/下的配置文件禁止加载不必要的模块,结合Lynis的其他加固建议,同样能达到不错的系统安全效果;
  • 放弃ufw,改用完全基于内置内核功能的防火墙规则,但这种方式需要手动编写iptables/nftables规则,操作复杂度很高,实用性不强。

你测试时发现kernel.modules_disabled=0时ufw正常工作,也正好验证了问题的根源就是模块禁用导致ufw依赖的组件无法加载。

备注:内容来源于stack exchange,提问作者legeyda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 09:45:30