1. 文件權限與所有權管理
遵循最小權限原則,使用chmod命令限制文件/目錄訪問權限:敏感文件設置為600(僅所有者可讀寫),敏感目錄設置為700(僅所有者可讀、寫、執行)。通過chown(更改所有者)和chgrp(更改所屬組)命令,將敏感數據的所有者和組限制為必要用戶,避免其他用戶或組訪問。例如:chmod 600 sensitive_file.txt、chown user:sensitive_group sensitive_file.txt。
2. 訪問控制列表(ACL)細化權限
對于更復雜的權限需求(如允許特定用戶訪問某目錄),使用ACL工具(sudo apt-get install acl)設置細粒度權限。例如:setfacl -m u:username:rwx sensitive_file.txt(授予指定用戶讀寫執行權限)、setfacl -m g:groupname:--- sensitive_file.txt(禁止指定組訪問)。
3. 強制訪問控制(SELinux/AppArmor)
通過SELinux(安全增強模塊)或AppArmor(應用級訪問控制)實現強制訪問控制,限制進程對敏感文件的訪問。
selinux-basics和selinux-policy-default包,啟用后使用semanage和chcon命令管理文件安全上下文;apparmor和apparmor-utils包,為敏感應用創建配置文件(如/etc/apparmor.d/usr.bin.sensitive_app),并通過aa-enforce命令強制執行。4. 敏感數據加密存儲
GnuPG(對稱加密,gpg --symmetric --cipher-algo AES256 sensitive_file.txt)或OpenSSL(openssl enc -aes-256-cbc -salt -in file_to_encrypt -out encrypted_file.enc)加密敏感文件,加密后需妥善保管密碼/密鑰;LUKS(Linux統一密鑰設置)加密磁盤分區,步驟包括:安裝cryptsetup、格式化分區(cryptsetup luksFormat /dev/sdX)、打開分區(cryptsetup open /dev/sdX my_encrypted_partition)、格式化并掛載(mkfs.ext4 /dev/mapper/my_encrypted_partition、mount /dev/mapper/my_encrypted_partition /mnt);eCryptfs(用戶空間文件系統)或EncFS(加密文件系統),在現有文件系統上實現透明加密(如sudo mount -t ecryptfs ~/encrypted ~/encrypted,按提示設置加密選項)。5. 定期備份敏感數據
使用rsync(增量備份,rsync -avz /path/to/sensitive_files /backup/location)、tar(完整備份,tar czf sensitive_backup.tar.gz /path/to/sensitive_files)或duplicity(加密增量備份,duplicity /path/to/source file:///path/to/backup)定期備份敏感數據,備份文件需存儲在安全位置(如外部硬盤、遠程服務器)。
6. 文件系統與行為監控審計
auditd(sudo apt-get install auditd),配置審計規則監控敏感文件的訪問(如auditctl -a exit,always -F arch=b64 -S open -F path=/path/to/sensitive_file -k sensitive_file_access),記錄打開、修改、刪除等操作;inotify-tools(sudo apt-get install inotify-tools)監控目錄變化(如inotifywait -m -e create,modify,delete /path/to/sensitive_dir),及時發現異常操作。7. 物理安全與系統強化
sudo apt-get update && sudo apt-get upgrade),修復已知安全漏洞;ufw或iptables)僅允許必要端口(如SSH的22端口),禁用root遠程登錄(/etc/ssh/sshd_config中設置PermitRootLogin no)。8. 隱藏與最小化暴露
.)開頭的隱藏名稱(如.config.ini),減少意外泄露風險;/home/user/.private),避免將其放在公共目錄(如/tmp、/var/www);../的路徑),避免非法訪問上級目錄的敏感文件。