开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

确保移除不需要的文件系统挂载支持

Linux系统支持多种文件系统,通过ko方式加载进内核。openEuler作为通用操作系统平台,提供各种文件系统ko,通常位于“/lib/modules/(kernel version)/kernel/fs/”目录下,可通过insmod/modprobe命令加载。

禁用不必要的文件系统支持有助于缩小攻击面,防止攻击者利用不常用文件系统的漏洞对系统进行攻击。用户可根据实际使用场景,判断哪些文件系统无需支持,并通过配置禁止其被挂载。常见的可禁用文件系统包括:

cramfs、freevxfs、jffs2、hfs、hfsplus、squashfs、udf、vfat、fat、msdos、nfs、ceph、fuse、overlay、xfs

操作步骤

  1. 使用如下命令检查输出结果(以cramfs为例,其他文件系统类似),如果输出“install /bin/true”,表示该文件系统已经被禁止挂载,如果输出“insmod /lib/modules/(kernel version)/kernel/fs/cramfs/cramfs.ko”,表示该文件系统未被禁止挂载,并列出ko所在目录:
    modprobe -n -v cramfs | grep -E '(cramfs|install)' 
    install /bin/true
    • 若输出为“install /bin/true”,表示该文件系统已被禁止挂载。
    • 若输出为“insmod /lib/modules/<kernel version>/kernel/fs/cramfs/cramfs.ko”,表示该文件系统仍可挂载,并会显示其ko模块所在路径。
    • 若没有输出,可执行以下命令,若有输出则表示该文件系统已被挂载。
      lsmod | grep cramfs 
      cramfs  135168  0
  2. 对于已挂载但实际场景无需支持的文件系统,可通过如下命令移除。以cramfs为例,其他文件系统类似。
    modprobe -r cramfs
  3. “/etc/modprobe.d/”目录下,创建以.conf为后缀的配置文件,属主和属组为root,权限为600。
    1. 创建配置文件,名称可自定义,以test.conf为例。
      vim /etc/modprobe.d/test.conf
    2. 按“i”进入编辑模式,请根据实际需求,按照以下格式将需要禁止挂载的文件系统写入该文件中。
      install cramfs /bin/true 
      install freevxfs /bin/true 
      install jffs2 /bin/true 
      install hfs /bin/true 
      install hfsplus /bin/true 
      install squashfs /bin/true 
      install udf /bin/true 
      install vfat /bin/true 
      install fat /bin/true 
      install msdos /bin/true 
      install nfs /bin/true 
      install ceph /bin/true 
      install fuse /bin/true 
      install overlay /bin/true 
      install xfs /bin/true
    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。