最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
服务器安全加固如何配置安全的 umask 默认掩码
时间:2026-08-26 08:26:49 编辑:袖梨 来源:一聚教程网
0027是生产服务器最平衡的umask起点,属主全权、组可读可进、其他人无权;需同时配置/etc/login.defs中UMASK 027和PAM的pam_umask.so模块,再通过新建终端实测touch与mkdir权限验证是否生效。
直接设为 0027 是生产服务器最平衡的安全起点——属主全权、组可读可进、其他人彻底无权,既满足运维协作,又堵住敏感文件(如配置、日志、密钥)被意外读取的漏洞。
优先改 /etc/login.defs 确保新用户继承
这是对所有新建用户生效的标准路径:
- 用
sudo nano /etc/login.defs打开文件 - 找到
UMASK行(通常在中间位置),取消注释并设为:UMASK 027 - 保存后,后续创建的用户自动获得该掩码;已有用户需重新登录才生效
必须补上 PAM 配置覆盖 su/sudo/cron 场景
仅改 /etc/login.defs 不够,su -、sudo -i、定时任务等非标准登录常绕过它:
- Debian/Ubuntu 编辑
/etc/pam.d/common-session - RHEL/CentOS 编辑
/etc/pam.d/system-auth - 在文件末尾添加一行:
session optional pam_umask.so umask=0027 - 确保
pam_umask.so已安装(Ubuntu 需先apt install libpam-umask)
验证不能只看 umask 命令输出
值对不代表文件真按预期生成,必须实测:
- 新开一个完整终端(不是新 Tab,而是全新会话)
- 运行:
umask && touch testf && mkdir testd && ls -ld testf testd - 正确结果应为:
-rw-r-----(文件 640)drwxr-x---(目录 750)
避开常见失效点
- 别只改
~/.bashrc:它对cron脚本、su、图形登录基本无效 - 别写进
/etc/profile:PAM 会覆盖它,且加载时机不稳定 - 检查是否多处冲突:
grep -r "umask" /etc/profile* /etc/bash* 2>/dev/null,删掉重复或过时设置 - zsh/fish 用户:确认改的是对应配置(如
~/.zshrc),而非 bash 文件
不复杂但容易忽略。