首页/安全/安全加固速查/默认 umask 027(login.defs)
主机加固基线90 条

默认 umask 027(login.defs)

默认 umask 022 让新建文件对同组与其他用户可读;收敛为 027 后新文件 640、新目录 750,从源头减少信息暴露面。服务进程另有 systemd UMask 需单独设置。

安全加固速查安全更新于 2026-10-13

umask 决定新文件的权限

umask 是权限的“掩码”:新建文件从 666 出发、新建目录从 777 出发,减去 umask 得到实际权限。默认 022 会让同组和其他用户都能读(文件 644、目录 755),收敛为 027 后新文件是 640、新目录是 750,从源头减少信息暴露。两个边界要记住:umask 只管新建对象,历史文件权限不会跟着变;systemd 起服务时有自己的 UMask 默认值,改 shell 层配置影响不到服务。

基本信息

加固项新文件与新目录默认权限收紧
适用平台Linux(RHEL/CentOS、Debian/Ubuntu)
权限要求root 改全局,普通用户可改自己会话
基线值/etc/login.defs 中 UMASK 027
配套位置shell 启动脚本、systemd 服务单元 UMask

典型使用场景

  • 主机基线巡检中确认默认权限不是 022
  • 多用户服务器上避免新文件被同组随意读取
  • 日志、配置导出脚本产出的文件默认就更紧
  • 应用账号专用的 profile.d 脚本里单独设置更严的 umask
  • 排查“新文件权限异常”问题时定位是哪一层覆盖了配置

核查与加固

核查与加固
umask                       # 当前会话的实际值,期望 0027
 grep -E '^UMASK' /etc/login.defs   # 全局默认值来源
grep -rn 'umask' /etc/profile /etc/bashrc /etc/profile.d/ 2>/dev/null   # 找出有没有别处覆盖
sed -i 's/^UMASK.*/UMASK 027/' /etc/login.defs
printf 'umask 027\n' > /etc/profile.d/umask.sh && chmod 644 /etc/profile.d/umask.sh

取值对照

umask新文件新目录说明
022644755默认值,其他用户可读
027640750基线推荐,仅属主与同组可访问
077600700最严,适合无同组协作的场景
002664775同组可写,共享目录场景常见

核查命令速查

看当前值umask
看全局缺省grep -E '^UMASK' /etc/login.defs
找覆盖位置grep -rn 'umask' /etc/profile /etc/bashrc /etc/profile.d/
看服务生效值systemctl show <unit> -p UMask
不少发行版在 /etc/profile 或 /etc/bashrc 里显式写了 umask(Debian 系常见 umask 022),它的执行时机晚于 /etc/login.defs,会直接覆盖配置值。只改 login.defs 往往看不到效果,必须同时检查并统一 shell 层的设置,改完新开一个会话用 umask 命令复核。
systemd 服务的默认 UMask 是 0022,由服务单元而非 shell 决定。要让服务产出更严权限,需要在单元文件里写 UMask=0027;用 drop-in(systemctl edit <unit>)覆盖比直接改发行版自带单元更易维护。
验证时别只读配置文件:用 touch 建一个文件和一个目录,再用 stat -c '%a %n' 看实际权限,得到的是真实生效值。不同进入路径(SSH 登录、su、sudo -i、cron)加载的启动脚本不一样,实测更能反映真实差异。

易错点

  • 以为改了 login.defs 就全局生效:shell 启动脚本里的 umask 会覆盖它,必须逐层核对实际值
  • 只盯资源权限不改默认值,下一批新文件又回到 644,问题反复出现
  • 把 umask 设成 077 后同组协作与跨账号读取的服务立刻报权限错误,收紧前先确认现有依赖
  • 依赖同组写权限的共享目录不要用放宽全局 umask 解决,应改用 setgid 目录或 ACL 精确授权

数据来源与参考

  • login.defs(5) 手册
  • CIS Linux Benchmark:Set default user umask to 027 or more restrictive

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌