Ubuntu系统安全防护技巧
保持系统及软件包最新是防范已知漏洞的核心措施。定期执行以下命令更新系统:
sudo apt update:同步软件源中的最新包信息;sudo apt upgrade:安装所有可用的安全补丁和更新(不删除旧包);sudo apt full-upgrade:处理涉及新依赖项的重大更新(如内核升级),自动删除冲突的旧包。sudo apt install unattended-upgrades安装工具,并配置/etc/apt/apt.conf.d/50unattended-upgrades文件,确保仅自动安装安全更新(标记为“security”的包),减少手动维护成本。UFW(Uncomplicated Firewall)是Ubuntu默认的轻量级防火墙工具,能有效过滤非法网络流量。基础配置步骤:
sudo apt install ufw && sudo ufw enable(默认拒绝所有入站连接,允许所有出站连接);sudo ufw allow 22/tcp、HTTP用sudo ufw allow 80/tcp、HTTPS用sudo ufw allow 443/tcp);sudo ufw allow from 192.168.1.0/24 to any port 3306);sudo ufw status verbose(确认规则是否生效)。SSH是远程管理的主要通道,需针对性加固:
/etc/ssh/sshd_config文件,设置PermitRootLogin no,避免攻击者直接尝试破解root密码;ssh-keygen -t rsa -b 4096),将公钥复制到服务器(ssh-copy-id user@server_ip),然后在sshd_config中设置PasswordAuthentication no,彻底杜绝密码暴力破解;Port 2222),减少自动化工具的扫描概率(需在防火墙中放行新端口);AllowUsers或AllowGroups指令,仅允许特定用户/组从可信IP访问(如AllowUsers admin@192.168.1.100)。遵循最小权限原则,降低账户滥用风险:
sudo passwd -l root锁定账户;sudo adduser devuser创建普通用户,赋予sudo权限(通过visudo命令编辑/etc/sudoers,添加devuser ALL=(ALL:ALL) ALL),避免直接使用root操作;sudo userdel -r olduser),减少潜在攻击入口。借助工具主动检测和防御威胁:
sudo apt install fail2ban,监控日志文件(如/var/log/auth.log),自动封禁多次尝试登录的恶意IP(默认封禁1小时);sudo apt install clamav clamav-daemon,定期更新病毒库(sudo freshclam)并扫描系统(sudo clamscan -r /),检测潜在恶意软件;sudo apt install rkhunter chkrootkit,定期运行sudo rkhunter --checkall或sudo chkrootkit,查找系统中的rootkit痕迹;sudo apt install aide,初始化数据库(sudo aideinit -y),定期对比系统文件的完整性(如sudo aide --check),发现未经授权的文件修改。通过日志分析及时发现异常行为:
/var/log/auth.log(认证日志,查看登录尝试)、/var/log/syslog(系统日志,查看服务异常);Logwatch(sudo apt install logwatch),自动生成每日/每周日志报告,汇总异常事件(如多次登录失败);减少系统攻击面的关键:
apt安装软件时,优先选择官方源或可信的PPA(个人包存档),避免从不明来源下载;sudo apt autoremove删除不再需要的旧依赖包(如卸载某应用后残留的库文件),释放磁盘空间的同时减少潜在漏洞;systemctl命令停止并禁用不需要的服务(如sudo systemctl stop bluetooth && sudo systemctl disable bluetooth),避免服务暴露在网络中。保护敏感数据不被泄露:
gpg工具加密单个文件(如gpg -c sensitive_file.txt),生成加密后的.gpg文件,只有输入密码才能解密;ecryptfs工具加密用户Home目录(sudo ecryptfs-migrate-home -u username),保护用户个人文件(如文档、图片)。