Linux安全加固
-
更新操作系统及软件版本:定期进行系统、内核、应用程序等组件的更新,确保使用最新的修复了已知漏洞的版本。
# 更新操作系统及软件版本
sudo apt update && sudo apt upgrade
-
配置防火墙:通过设置iptables或firewalld来限制网络流量并控制入站/出站连接,只开放必需的服务端口。
# 配置防火墙(使用iptables)
sudo iptables -F # 清空当前规则
sudo iptables -P INPUT DROP # 默认输入规则为DROP
sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # 允许已建立的连接
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 允许HTTP服务
sudo iptables-save > /etc/iptables/rules.v4 # 将规则保存到文件
-
关闭不必要的服务:仅运行所需的服务,关闭未使用的服务可以减少被恶意利用的机会。
# 关闭不必要的服务
sudo systemctl stop <service_name> # 根据实际情况停止指定服务
-
删除无效的用户和组:清理没有活动的用户和组,避免因为存在大量空白账号而导致安全性问题。
# 删除无效的用户和组
sudo userdel <username> # 根据实际情况删除指定用户
sudo groupdel <groupname> # 根据实际情况删除指定组
-
密码管理与认证:使用强密码,并定期更改密码;同时启用多种身份验证方式(如双重认证)提高登录安全性。
# 密码管理与认证
sudo passwd <username> # 根据实际情况修改指定用户的密码
sudo chage -l <username> # 查看指定用户的密码过期状态
-
日志记录与分析:合理地配置syslogd或rsyslogd,收集系统日志信息,并对其进行分析和监测,发现异常情况。
# 日志记录与分析
sudo tail -f /var/log/auth.log # 实时显示认证日志
sudo grep "Failed" /var/log/secure | wc -l # 统计失败登录次数
-
文件权限设置:正确设置文件和目录的权限,确保只有授权用户能够访问相关数据。
# 文件权限设置
chmod 644 file.txt # 设置file.txt的权限为rw-r--r--
chown root:root file.txt # 将file.txt的所属者和群组都设置为root
-
安装和配置入侵检测系统(IDS):部署IDS工具,监视系统中的异常行为,及时发现和处理潜在的入侵事件。