Linux 中常见的安全与权限机制

发布于:2025-05-29 ⋅ 阅读:(23) ⋅ 点赞:(0)

Linux 中常见的安全与权限机制主要包括以下几类,从文件系统权限系统级访问控制,构建了多层次的安全保障体系。


🔐 一、文件权限与用户管理

1. 基本权限(rwx)

  • r(read):读取文件内容或目录列表
  • w(write):修改文件内容或目录结构
  • x(execute):执行文件或进入目录
ls -l 文件名
chmod +x 脚本.sh     # 添加执行权限
chown 用户:组 文件名  # 修改所属用户/组

2. 权限三类对象

  • 用户(User)
  • 用户组(Group)
  • 其他人(Other)

例:-rwxr-xr--

  • 用户:rwx
  • 用户组:r-x
  • 其他人:r–

3. 权限命令

命令 说明
chmod 修改权限
chown 修改文件属主属组
umask 设置默认权限掩码
ls -l 查看权限

🧑‍💻 二、用户、用户组管理

  • useradd / userdel / usermod:添加、删除或修改用户
  • groupadd / groupdel / groupmod:管理用户组
  • passwd:设置用户密码
  • /etc/passwd/etc/group/etc/shadow:用户组和加密信息配置文件

🔒 三、特殊权限位(Sticky、SUID、SGID)

权限 作用 示例
SUID 以文件属主身份执行 /usr/bin/passwd
SGID 以文件属组身份执行或共享组 共享开发目录
Sticky 防止其他用户删除文件 /tmp 目录

示例:

chmod u+s a.out     # 设置 SUID
chmod g+s sharedir  # 设置 SGID
chmod +t /tmp       # 设置 Sticky bit

🧱 四、系统安全机制

1. 防火墙(iptables / firewalld / nftables)

  • 控制入站/出站流量
  • 管理端口访问权限

2. SELinux(Security Enhanced Linux)

  • 提供基于策略的强制访问控制(MAC)
  • 控制进程对资源的访问,即使 root 也可能被限制
getenforce      # 查看状态
setenforce 0    # 临时关闭

3. AppArmor(Ubuntu 常见)

  • 类似 SELinux 的 MAC 机制
  • 通过配置文件限制进程权限

🧪 五、sudo 权限控制

通过配置 /etc/sudoers 控制用户是否可执行特权命令(如 root)

sudo visudo  # 编辑 sudo 配置

🔍 六、系统登录和认证机制

  • SSH Key 登录:推荐使用密钥而非密码登录
  • PAM(Pluggable Authentication Modules):可插拔认证模块框架
  • fail2ban:防止暴力破解(自动封 IP)

📊 七、日志审计与命令历史

  • /var/log/secure:安全相关日志(CentOS)
  • /var/log/auth.log:登录认证日志(Ubuntu)
  • .bash_history:记录用户命令(可设置审计增强)

📋 八、进程与服务限制

  • ulimit:限制用户资源使用(内存、进程数)
  • systemdPrivateTmpProtectSystem 限制服务访问系统目录
  • cgroups:限制资源(CPU、内存)

总结表格

类型 机制 功能
文件权限 rwx、chmod、umask 控制文件访问
用户管理 passwd、group、sudo 控制系统访问
特殊权限 SUID、SGID、Sticky 控制执行行为
系统安全 SELinux、AppArmor、iptables 高级访问控制
认证机制 SSH Key、PAM、sudo 提高认证安全
审计机制 日志、history、fail2ban 安全追踪与防护
资源控制 ulimit、cgroups、systemd 限制系统滥用