Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 安全機制全景深度解析:PAM、IDS、加密檔案系統、審計、MAC、防火牆六大支柱

編輯:Linux 教學

歷經二十餘年演進,Linux 從早期的「僅有 DAC 權限位」發展為擁有企業級纵深防禦體系的作業系統。依據 TCSEC 評估標準,主流發行版已達 C2 級,配合 SELinux/AppArmor 可達 B1 級。本文系統剖析 Linux 六大核心安全支柱——PAM 可插拔認證、入侵檢測系統 (IDS)、加密檔案系統、安全審計、強制存取控制 (MAC)、防火牆——的架構原理、主流實現、配置要點與協同策略,為構建高安全基線提供藍圖。

一、PAM (Pluggable Authentication Modules):認證中樞

核心價值

  • 將認證邏輯從應用程式剝離,交由管理員透過策略檔靈活組合。
  • 應用無需重編譯即可支援新認證方式(LDAP、Kerberos、智慧卡、指紋、OTP、FIDO2)。
  • 統一資源限制(pam_limits.so)、環境變數、登入時間/地點管控。

架構四大管理組

策略檔語法(/etc/pam.d/sshd 範例)

#%PAM-1.0
auth       required     pam_sepermit.so
auth       substack     password-auth
auth       include      postlogin
account    required     pam_nologin.so
account    include      password-auth
password   include      password-auth
session    required     pam_selinux.so close
session    required     pam_loginuid.so
session    required     pam_selinux.so open
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      password-auth
session    include      postlogin

控制旗標:required(失敗仍繼續,最終拒絕)、requisite(失敗即刻返回)、sufficient(成功即刻允許)、optional(僅供參考)、include/substack(引用其他檔案)。

進階應用

  • 雙因子認證 (2FA):auth required pam_google_authenticator.so nullok + SSH ChallengeResponseAuthentication yes。
  • 限制登入時間/IP:account required pam_time.so + /etc/security/time.conf;account required pam_access.so + /etc/security/access.conf。
  • 資源限制:session required pam_limits.so 讀取 /etc/security/limits.conf(nofile/nproc/memlock)。

二、入侵檢測系統 (IDS):主機與網路雙層防線

管理組職責典型模組
auth身份驗證(密碼、金鑰、生物特徵)pam_unix.so、pam_sss.so、pam_ldap.so、pam_google_authenticator.so
account帳號有效性(過期、鎖定、時間/地點限制)pam_access.so、pam_time.so、pam_nologin.so
password密碼更新強度、歷史、同步pam_pwquality.so、pam_unix.so (remember=5)
session會話建立/銷毀(掛載、限額、審計、環境)pam_limits.so、pam_umask.so、pam_systemd.so、pam_lastlog.so

Linux 內建/輕量級能力

  • auditd:核心級系統呼叫審計,規則定義 /etc/audit/rules.d/,ausearch/aureport 分析。
  • systemd-journald:結構化日誌,支援 ForwardToSyslog、ForwardToKmsg。
  • kprobes/ebpf:動態追蹤核心函數,bpftrace/bcc-tools 實現零負載異常檢測(如隱藏模組、竄改 syscall 表)。

部署建議

  1. 邊界部署 Suricata (IPS 模式) + 威脅情報餵養 (ET Pro、AlienVault OTX)。
  2. 關鍵主機部署 Wazuh Agent(含 Rootkit 掃描、FIM、日誌收集、主動回應)。
  3. 核心審計規則覆蓋:execve、openat (敏感路徑)、connect (非白名單 IP)、setuid/capset、module_load。

三、加密檔案系統:資料靜態保護

類型代表工具檢測對象響應能力
HIDS (主機型)AIDE、Tripwire、OSSEC/Wazuh、LIDS、Samhain檔案完整性、Rootkit、異常登入、進程異常、權限提升告警、主動回應(封鎖 IP、殺進程)
NIDS (網路型)Suricata、Snort、Zeek (Bro)惡意流量、漏洞利用、C2 通訊、資料外洩、掃描探測告警、封鎖 (IPS 模式)、流量鏡像分析

LUKS2 部署最佳實踐

# 1. 格式化加密分區
cryptsetup luksFormat --type luks2 --cipher aes-xts-plain64 --key-size 512 --hash sha256 --iter-time 5000 /dev/nvme0n1p3

# 2. 開啟映射
cryptsetup open /dev/nvme0n1p3 data_crypt

# 3. 建立檔案系統
mkfs.ext4 /dev/mapper/data_crypt

# 4. 開機自動掛載 (需 /etc/crypttab + /etc/fstab)
# /etc/crypttab: data_crypt UUID=xxx none luks,discard
# /etc/fstab: /dev/mapper/data_crypt /data ext4 defaults 0 2

關鍵:備份 LUKS Header (cryptsetup luksHeaderBackup),啟用 discard (TRIM) 保護 SSD 壽命,配合 TPM2 自動解鎖實現無人值守重啟。

四、安全審計:不可竄改的證據鏈

三大日誌子系統

  1. 連接時間日誌:/var/run/utmp (當前)、/var/log/wtmp (歷史)、/var/log/btmp (失敗)。二進制格式,who/w/last/lastb 讀取。
  2. 進程統計日誌:/var/log/pacct (需 acct 服務),lastcomm/sa 分析命令執行耗時、資源用量。
  3. 錯誤/系統日誌 (syslog):rsyslog/syslog-ng → /var/log/messages、/var/log/secure、/var/log/cron 等。內核經 printk → 環形緩衝區 → klogd → syslogd。

現代審計棧

應用/內核 → systemd-journald (結構化、索引、壓縮、驗證)
              ↓
         rsyslog (模板化、TLS、RELP、Kafka、Elasticsearch)
              ↓
         SIEM (Splunk/ELK/Wazuh Manager) → 關聯分析、告警、合規報表

關鍵審計對象

  • 所有 su/sudo/ssh 登入(成功/失敗)、passwd 變更、useradd/usermod。
  • 敏感檔案存取:/etc/shadow//etc/sudoers//etc/ssh/sshd_config、SSL 私鑰。
  • 權限提升:setuid/setgid/capset、mount、iptables 變更。
  • 網路連線:非白名單 IP/埠、反向 Shell 特徵、大量外連。

五、強制存取控制 (MAC):超越 Root 的約束

方案層級特點典型場景
dm-crypt/LUKS區塊裝置內核原生、效能最佳、支援多金鑰槽、TRIM、硬體加速 (AES-NI)全盤加密、資料盤加密、Swap 加密
eCryptfs檔案級 (堆疊)每檔案獨立金鑰、檔名加密、無需獨立分區家目錄加密、多租戶隔離
fscrypt檔案系統原生 (ext4/f2fs/ubifs)目錄級策略、內核 4.2+、Android/ChromeOS 採用容器層加密、特定目錄加密
CFS/TCFS/CRYPTFS歷史/學術早期堆疊式,現已少用參考研究

SELinux 核心概念速查

  • 主體:進程 (如 httpd_t)、客體:檔案/埠/介面 (如 httpd_sys_content_t, http_port_t)。
  • 規則:allow httpd_t httpd_sys_content_t : file { read getattr };。
  • 模式:Enforcing (阻擋+記錄)、Permissive (僅記錄)、Disabled。
  • 工具鏈:semanage/restorecon/audit2allow/sealert/setroubleshoot。

生產環境部署鐵律

  1. 永不 Disable:遇阻擋用 audit2allow -w -a 分析,產生模組 ausearch -c 'httpd' --raw | audit2allow -M myhttpd,semodule -i myhttpd.pp。
  2. 關鍵服務建立自定義類型/布林值,最小權限原則。
  3. 容器環境啟用 container_selinux,Podman/Docker 自動標記。

六、防火牆:網路邊界與微隔離

方案策略模型核心架構成熟度/生態預設發行版
SELinuxTE (Type Enforcement) + RBAC + MLSFlask 架構:Policy Server + AVC 快取 + LSM Hooks最高 (NSA/Red Hat 主導),工具鏈完整RHEL/Fedora/CentOS/AlmaLinux/Rocky
AppArmor路徑基礎 Profile (Learning/Enforce/Complain)LSM Hooks + 使用者空間解析器 + 緩存高 (Canonical/SUSE 主導),易學易用Ubuntu/Debian/SUSE/openSUSE
RSBACGFAC (MAC/RBAC/ACL 模組化)中央決策 + 多模組投票學術/小眾,模組化靈活無主流預設
Smack標籤基礎 (簡化 BLP/Biba)LSM Hooks + 標籤傳播嵌入式/汽車 (Tizen/Yocto)Tizen、部分 Yocto

nftables 基礎規則集範例

#!/usr/sbin/nft -f
flush ruleset
table inet filter {
    chain input {
        type filter hook input priority 0; policy drop;
        iif lo accept
        ct state established,related accept
        tcp dport {22,80,443} ct state new accept
        icmp type echo-request limit rate 5/second accept
        counter log prefix "INPUT_DROP: " drop
    }
    chain forward { type filter hook forward priority 0; policy drop; }
    chain output { type filter hook output priority 0; policy accept; }
}

七、協同策略:纵深防禦矩陣

層級工具特點
主機級nftables (內核 3.13+,取代 iptables)統一 IPv4/IPv6/ARP/橋接、原子規則集、效能優、語法簡潔
主機級firewalld動態區域、Runtime/Permanent 分離、D-Bus API、NetworkManager 整合
主機級ufwUbuntu 預設、簡單規則語法、適合桌面/輕量伺服器
叢集/微隔離Cilium/Calico (eBPF/XDP)K8s 網路策略、L3/L4/L7 策略、服務網格整合、可視化
邊界/雲硬體防火牆 / 雲安全群組 / WAF狀態檢測、IPS、DDoS 防護、應用層防護
層級技術防禦目標關鍵配置
身份認證PAM + 2FA + 憑證登入憑證竊取、暴力破解、橫向移動pam_google_authenticator、SSH 憑證授權、pam_faillock
存取控制DAC + MAC (SELinux/AppArmor)提權、敏感檔案竄改、容器逃逸Enforcing 模式、自定義類型、布林值微調
資料保護LUKS2 全盤/資料盤加密 + TPM2 解鎖實體竊盜、離線分析、雲磁碟洩露AES-XTS-512、Header 備份、discard、Key rotation
入侵檢測auditd + Wazuh/Suricata + eBPF零日漏洞、無檔案攻擊、持久化核心審計規則、威脅情報餵養、主動回應
審計留痕journald + rsyslog(TLS) + SIEM日誌竄改、合規審計、事後溯源結構化日誌、簽名驗證、不可變儲存
網路邊界nftables/firewalld + 雲 SG + 微隔離側向移動、C2 通訊、資料外洩預設拒絕、最小開放、服務網格策略

Linux 安全非單一技術可解,唯有將六大支柱按業務風險分級部署、自動化合規檢查、持續威脅情報融合,才能構建經得起實戰考驗的纵深防禦體系。

Copyright © Windows教程網 All Rights Reserved