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
:限制用戶資源使用(內存、進程數)systemd
的PrivateTmp
、ProtectSystem
限制服務訪問系統目錄cgroups
:限制資源(CPU、內存)
總結表格
類型 | 機制 | 功能 |
---|---|---|
文件權限 | rwx、chmod、umask | 控制文件訪問 |
用戶管理 | passwd、group、sudo | 控制系統訪問 |
特殊權限 | SUID、SGID、Sticky | 控制執行行為 |
系統安全 | SELinux、AppArmor、iptables | 高級訪問控制 |
認證機制 | SSH Key、PAM、sudo | 提高認證安全 |
審計機制 | 日志、history、fail2ban | 安全追蹤與防護 |
資源控制 | ulimit、cgroups、systemd | 限制系統濫用 |