1. 文件权限与所有权管理
通过精细化设置文件/目录的读、写、执行权限,限制非授权用户访问。常用命令:
chmod:设置权限(如chmod 600 sensitive_file.txt仅允许所有者读写,chmod 700 sensitive_directory/仅允许所有者访问目录);chown/chgrp:更改所有者或所属组(如sudo chown user:secure_group confidential.txt)。2. 访问控制列表(ACL)扩展权限
当标准权限无法满足复杂需求时,使用ACL为特定用户/组设置细粒度权限。需先安装工具:sudo apt install acl,然后通过setfacl命令配置(如setfacl -m u:admin:rw sensitive_file.txt允许admin用户读写,setfacl -m g:hr:--- confidential_dir/禁止hr组访问)。
3. 强制/基于策略的访问控制(SELinux/AppArmor)
通过内核级机制限制进程对文件的访问:
sudo apt install selinux-basics selinux-policy-default),通过semanage和chcon管理安全上下文;aa-enforce启用策略(如限制Nginx仅能访问/var/www/html)。两者均能有效防止提权攻击。4. 文件与磁盘加密
gpg --symmetric --cipher-algo AES256 file.txt(生成file.txt.gpg,需密码解密);veracrypt --create encrypted.container),挂载后存储文件(输入密码访问);sudo ecryptfs-migrate-home -u user迁移现有用户主目录)。cryptsetup后执行:sudo cryptsetup luksFormat /dev/sdX(格式化分区)、sudo cryptsetup open /dev/sdX encrypted_disk(打开加密卷)、sudo mkfs.ext4 /dev/mapper/encrypted_disk(格式化加密卷)、sudo mount /dev/mapper/encrypted_disk /mnt(挂载)。加密后即使磁盘丢失,数据也无法被读取。5. 定期备份重要数据
通过备份防止数据丢失(如误删、硬件故障、加密密钥丢失)。常用工具:
rsync -avz /path/to/source /backup/location);6. 安全审计与监控
通过日志和实时监控及时发现异常访问:
sudo apt install auditd)配置规则(如auditctl -a exit,always -F arch=b64 -S open -F path=/path/to/sensitive_file -k sensitive_access),监控文件的打开、修改操作;inotifywait -m -e modify /path/to/file),触发警报(如发送邮件)。7. 防止误删与物理安全
trash-cli替代rm命令(sudo apt install trash-cli),trash file.txt将文件移至回收站,可通过trash-restore恢复;8. 更新系统与软件
定期更新Ubuntu系统和已安装软件,修复已知安全漏洞(sudo apt update && sudo apt upgrade -y)。开启自动更新(sudo apt install unattended-upgrades),确保系统始终具备最新的安全补丁。
9. 网络与访问限制
sudo apt install ufw,sudo ufw allow ssh,sudo ufw enable),仅允许必要端口(如SSH的22端口);ssh-keygen -t rsa -b 4096生成密钥,ssh-copy-id user@server_ip复制公钥到服务器),降低被暴力破解的风险;sftp user@server_ip)或SCP(scp file.txt user@server_ip:/path)替代FTP,防止数据在传输过程中被窃取。