CentOS Message安全使用指南
/etc/ssh/sshd_config文件,设置PermitRootLogin no,禁止root用户通过SSH远程登录,降低账户被暴力破解的风险;修改完成后重启SSH服务(systemctl restart sshd)使配置生效。ssh-keygen -t rsa),将公钥(id_rsa.pub)复制到服务器~/.ssh/authorized_keys文件中,修改/etc/ssh/sshd_config设置PasswordAuthentication no,禁用密码登录,避免密码泄露导致的账户入侵。firewalld(CentOS 7及以上默认防火墙)限制服务器访问,仅开放必要端口(如SSH的22端口、Web服务的80/443端口)。例如,添加22端口规则:firewall-cmd --permanent --zone=public --add-port=22/tcp,然后重载防火墙(firewall-cmd --reload)。systemctl list-unit-files --type=service查看所有服务,禁用未使用的服务(如FTP、Telnet等),使用systemctl disable <服务名>命令停止服务,并设置为开机不启动,减少系统攻击面。logrotate工具自动管理日志文件大小和保留数量,避免日志文件过大占用磁盘空间或被篡改。编辑/etc/logrotate.d/rsyslog文件,添加以下配置(针对/var/log/messages):/var/log/messages { weekly rotate 4 create 0664 root utmp missingok notifempty compress delaycompress sharedscripts }/etc/rsyslog.conf文件,将安全相关日志(如认证、授权)分离到独立文件。例如,添加authpriv.* /var/log/secure规则,使认证日志单独存储,便于后续审计和分析。journalctl命令实时查看系统日志(journalctl -f),或通过tail -f /var/log/messages跟踪messages文件的实时变化,及时发现异常行为(如频繁的登录失败、服务崩溃)。last命令查看用户登录记录(last显示成功登录,lastb显示失败登录),检查是否有异常登录行为;通过grep "Failed password" /var/log/secure筛选认证失败的日志,快速定位潜在的暴力破解尝试。chmod命令限制日志文件的访问权限,例如将/var/log/messages的权限设置为0640(属主root可读写,属组utmp可读,其他用户无权限):chmod 0640 /var/log/messages;避免使用chmod 777等过度开放的权限。chown命令将日志文件的所有者设为root,属组设为utmp(或其他专用组),例如:chown root:utmp /var/log/messages,确保只有授权用户和组能访问日志。admin用户读写/var/log/messages:setfacl -m u:admin:rw /var/log/messages;查看ACL规则:getfacl /var/log/messages。/etc/selinux/config文件,设置SELINUX=enforcing(永久启用);临时启用命令:setenforce 1。若需自定义策略,可使用audit2allow工具生成策略模块(例如,根据ausearch -m avc输出的拒绝日志生成策略)。yum install apparmor apparmor-utils;启用服务:systemctl enable apparmor && systemctl start apparmor;为特定应用(如Apache)创建自定义配置文件:aa-enforce /etc/apparmor.d/usr.sbin.httpd。yum install fail2ban;编辑配置文件/etc/fail2ban/jail.local,启用SSH防护:[ssh] enabled = true port = ssh filter = sshd logpath = /var/log/secure maxretry = 3systemctl start fail2ban && systemctl enable fail2ban。