当前位置: 首页 > article >正文

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

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限制系统滥用
http://www.lryc.cn/news/2392564.html

相关文章:

  • Golang|单例模式
  • 哈尔滨工业大学计算机系统大作业程序人生-Hello’s P2P
  • 小程序定制开发:从需求到落地,打造企业专属数字化入口
  • 【C/C++】基于 Docker 容器运行的 Kafka + C++ 练手项目
  • Linux系统管理与编程24:基础条件准备-混搭“本地+阿里云”yum源
  • 新一代Python管理UV完全使用指南|附实际体验与效果对比
  • 如何在 Windows 10 PC 上获取 iPhone短信
  • STM32程序运行不了,仿真功能也异常,连断点和复位都异常了
  • Linux 系统中的软链接与硬链接
  • Python爬虫第22节- 结合Selenium识别滑动验证码实战
  • 【C/C++】chrono简单使用场景
  • Escrcpy(安卓手机投屏软件) v1.29.6 中文绿色版
  • Oracle MOVE ONLINE 实现原理
  • Linux:深入理解网络层
  • 【设计模式】简单工厂模式,工厂模式,抽象工厂模式,单例,代理,go案例区分总结
  • Linux_编辑器Vim基本使用
  • vue展示修改前后对比,并显示修改标注diff
  • LiveWallpaperMacOS:让你的 Mac 桌面动起来
  • [预训练]Encoder-only架构的预训练任务核心机制
  • 07-后端Web实战(部门管理)
  • mysql ACID 原理
  • [Rust_1] 环境配置 | vs golang | 程序运行 | 包管理
  • 二十五、面向对象底层逻辑-SpringMVC九大组件之HandlerMapping接口设计
  • 构建安全高效的邮件网关ngx_mail_ssl_module
  • HUAWEI交换机配置镜像口验证(eNSP)
  • 前端vue3实现图片懒加载
  • 网站每天几点更新,更新频率是否影响网站收录
  • 主流Markdown编辑器的综合评测与推荐
  • 计算机网络-MPLS VPN应用场景与组网
  • AugmentFree:解除 AugmentCode 限制的终极方案 如何快速清理vscode和AugmentCode缓存—windows端