Ubuntu Minimal 安全加固主要包括以下几个方面:
身份鉴别加固
- 查看用户信息:使用
cat /etc/passwd
命令查看系统中所有用户的信息,确保用户身份的唯一性。 - 查看用户密码信息:使用
cat /etc/shadow
命令查看用户密码的加密信息,确保密码的复杂度并定期更换。 - 检查PAM配置:使用
grep "password" /etc/pam.d/common-password
命令检查PAM(Pluggable Authentication Modules)配置文件中是否设置了密码复杂度要求。 - 查看密码有效期配置:使用
grep 'PASS_' /etc/login.defs
命令查看系统中密码的有效期配置,包括密码的最大使用天数、最小修改天数等。 - 验证登录失败处理:使用
grep 'deny' /etc/pam.d/login
和grep 'deny' /etc/pam.d/sshd
命令检查是否配置了登录失败处理功能,如连续登录失败次数超过限制后锁定账户等。
访问控制加固
- 查看文件权限:使用
ls -l /path/to/file
命令查看指定文件的权限设置,确保文件权限的合理性。 - 检查特殊权限文件:使用
find / -perm -4000 -o -perm -2000
命令查找系统中具有SUID或SGID权限的文件,这些文件可能会带来安全风险。 - 查看root账户设置:使用
cat /etc/ssh/sshd_config | grep PermitRootLogin
命令查看是否限制了root账户的远程登录。
安全审计加固
- 安装auditd服务:使用
sudo apt-get install auditd
命令安装auditd服务以进行安全审计。 - 查看auditd服务状态:使用
systemctl status auditd
(Ubuntu 18及以上)命令查看auditd服务的运行状态。 - 添加审计规则:使用
auditctl -w /path/to/file -p rwxa -k key_name
命令为指定文件添加审计规则,监控文件的读、写、执行和属性更改操作。 - 查看审计日志:使用
ausearch -i -k key_name
命令根据审计规则的标识符(key_name)查看审计日志。
入侵防范加固
- 查看系统版本:使用
lsb_release -a
、uname -a
命令获取系统的完整版本信息,以便进行漏洞评估和防范。 - 查看开放端口:使用
netstat -aptn
(需先安装net-tools工具)命令列出系统中所有开放的端口,确保没有不必要的服务暴露在外。 - 检查防火墙设置:使用
systemctl status ufw
命令查看防火墙的状态,确保不必要的端口被关闭。 - 查看系统日志:使用
cat /var/log/syslog
或cat /var/log/messages
(取决于系统配置)命令查看系统日志,以便及时发现和响应潜在的安全事件。
其他加固措施
- 禁用不必要的服务:通过禁用不需要的服务来减少攻击面。
- 文件完整性监控:使用AIDE(Advanced Intrusion Detection Environment)进行文件系统完整性监控。
- 日志和监控:安装并配置auditd服务以及logwatch工具以增强日志记录和监控功能。
请注意,以上信息仅供参考,具体的安全加固措施可能需要根据实际的系统环境和需求进行调整。在进行任何安全操作之前,请确保备份重要数据,并在测试环境中验证加固措施的有效性。