文件权限

    openEuler默认对系统中的常用目录、可执行文件和配置文件设置了权限和属主。

    实现

    以/bin目录为例,修改文件权限和文件属主的操作如下:

    • 修改文件权限。例如将/bin目录权限设置为755。

    • 修改文件属主。例如将/bin目录的拥有者和群组设置为root:root。

    删除无主文件

    说明

    系统管理员在删除用户/群组时,存在着忘记删除该用户/该群组所拥有文件的问题。如果后续新创建的用户/群组与被删除的用户/群组同名,则新用户/新群组会拥有部分不属于其权限的文件,建议将此类文件删除。

    实现

    删除用户ID不存在的文件

    1. 查找用户ID不存在的文件。

      1. find / -nouser
    2. 删除查找到的文件。其中 filename 为用户ID不存在文件的文件名。

      1. rm -f filename

    删除群组ID不存在的文件

    1. 查找群主ID不存在的文件。

      1. find / -nogroup

    处理空链接文件

    说明

    无指向的空链接文件,可能会被恶意用户利用,影响系统安全性。建议用户删除无效的空链接文件,提高系统安全性。

    特殊场景

    例如,openEuler支持UEFI和legacy BIOS两种安装模式,两种引导场景支持的grub相关包默认都安装,当用户选择legacy BIOS模式安装时,形成空链接文件“/etc/grub2-efi.cfg”;当用户选择UEFI模式安装时,会形成空链接文件“/etc/grub2.cfg”,需要用户根据实际情况处理空链接。

    1. 通过如下命令查找系统中的空链接文件。

    2. 如果此类文件无实际作用,可通过如下命令删除。

    说明

    umask值用来为新创建的文件和目录设置缺省权限。如果没有设定umask值,则生成的文件具有全局可写权限,存在一定的风险。守护进程负责系统上某个服务,让系统可以接受来自用户或者是网络客户的要求。为了提高守护进程所创建文件和目录的安全性,建议设置其umask值为0027。umask值代表的是权限的“补码”,umask值和权限的换算方法请参见 “附录 > umask值含义” 。

    实现

    在配置文件/etc/sysconfig/init中新增一行:umask 0027。

    为全局可写目录添加粘滞位属性

    说明

    任意用户可以删除、修改全局可写目录中的文件和目录,为了确保全局可写目录中的文件和目录不会被任意删除,需要为全局可写目录添加粘滞位属性。

    实现

    1. 搜索全局可写目录。

      1. find / -type d -perm -0002 ! -perm -1000 -ls | grep -v proc
    2. 为全局可写目录添加粘滞位属性。dirname 为实际查找到的目录名。

      1. chmod +t dirname

    删除非授权文件的全局可写属性

    说明

    全局可写文件可被系统中的任意用户修改,影响系统完整性。

      1. find / -type d ( -perm -o+w ) | grep -v proc
      2. find / -type f ( -perm -o+w ) | grep -v proc
    1. 查看步骤1列举的所有文件(粘滞位位的文件和目录可以排除在外),删除文件或去掉其全局可写权限。使用以下命令去掉权限,其中filename为对应文件名:

    说明

    at命令用于创建在指定时间自动执行的任务。为避免任意用户通过at命令安排工作,造成系统易受攻击,需要指定可使用该命令的用户。

    实现

    1. 删除/etc/at.deny文件。

      1. rm -f /etc/at.deny
    2. 将/etc/at.allow的文件属主改为root:root。

      1. chown root:root /etc/at.allow
    3. 控制/etc/at.allow的文件权限,仅root可操作。

      1. chmod og-rwx /etc/at.allow

    限制cron命令的使用权限

    说明

    cron命令用于创建例行性任务。为避免任意用户通过cron命令安排工作,造成系统易受攻击,需要指定可使用该命令的用户。

    实现

    1. 删除/etc/cron.deny文件。

      1. rm -f /etc/cron.deny
    2. 将/etc/cron.allow的文件属主改为root:root。

    限制sudo命令的使用权限

    说明

    sudo命令用于普通用户以root权限执行命令。为了增强系统安全性,有必要对sudo命令的使用权进行控制,只允许root使用sudo命令,限制其他帐户使用。openEuler默认未限制非root用户使用sudo命令的权限。

    sudo命令的使用控制通过修改/etc/sudoers文件实现,需要注释掉如下配置行:

    1. #%wheel ALL=(ALL) ALL