CentOS系统安全加固技巧(针对FetchLinux环境适配)
在CentOS环境中使用FetchLinux(如镜像下载或部署工具)时,需通过系统级安全配置降低潜在风险,以下是核心加固措施:
yum update命令定期更新CentOS系统及所有安装的软件包(包括FetchLinux相关工具),及时修复已知安全漏洞。建议开启自动更新(如yum-cron服务),确保系统始终具备最新安全补丁。systemctl list-unit-files --type=service列出所有服务,禁用未使用的服务(如telnet、ftp、bluetooth等),命令示例:systemctl disable <服务名>。减少开放服务可降低被攻击的风险。firewalld或iptables)仅开放FetchLinux必需的端口(如SSH默认22端口、HTTP/HTTPS服务端口)。例如,使用firewall-cmd --permanent --zone=public --add-port=22/tcp开放SSH端口,然后firewall-cmd --reload生效。/etc/ssh/sshd_config文件,将PermitRootLogin设置为no,禁止root用户通过SSH直接登录。强制用户使用普通账户登录后,再通过sudo切换至root权限。ssh-keygen -t rsa),将公钥(id_rsa.pub)复制到服务器~/.ssh/authorized_keys文件中。修改/etc/ssh/sshd_config中的PasswordAuthentication为no,禁用密码认证,降低暴力破解风险。/etc/ssh/sshd_config中的Port参数(如改为2222),减少自动化工具对默认端口的扫描攻击。修改后需重启SSH服务(systemctl restart sshd)。adm、lp、sync、shutdown、halt等),使用userdel <用户名>命令删除。减少潜在的账户滥用风险。/etc/login.defs文件,设置密码复杂度要求(如最小长度≥10位,包含大小写字母、数字、特殊字符),并启用密码过期机制(如PASS_MAX_DAYS 90,PASS_WARN_AGE 7)。定期检查空口令账户(awk -F: '($2==""){print $1}' /etc/shadow),强制设置密码。sudo命令提升权限(需提前将用户加入wheel组:usermod -aG wheel <用户名>)。getenforce),若未启用则使用setenforce 1临时开启,修改/etc/selinux/config文件中的SELINUX=enforcing永久生效。SELinux通过强制访问控制(MAC)限制进程权限,提升系统安全性。firewalld设置严格的入站/出站规则,仅允许必要的流量通过。例如,限制SSH访问来源IP(firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="<可信IP>" port protocol="tcp" port="22" accept'),拒绝其他IP的SSH连接。auditd记录系统活动(如用户登录、文件修改、服务启动),命令示例:systemctl enable auditd && systemctl start auditd。通过ausearch或aureport命令分析日志,及时发现异常行为。/var/log/secure(SSH登录日志)、/var/log/messages(系统日志)、/var/log/audit/audit.log(审计日志),查找暴力破解、未授权访问等异常记录。rsync、tar或专业备份工具(如Bacula)定期备份系统配置文件(/etc)、用户数据(/home)、数据库等重要信息。备份数据需存储在安全位置(如异地服务器、云存储)。/etc/systemd/logind.conf文件,将CtrlAltDelBurstAction设置为ignore,防止误操作或恶意重启系统。/etc/issue和/etc/issue.net文件,删除系统版本、内核版本等敏感信息,避免向攻击者暴露系统细节。/etc/exports文件,设置严格的访问权限(如/shared_dir 192.168.1.0/24(rw,sync,no_root_squash)),仅允许特定IP段访问,并启用no_root_squash限制root用户权限。以上措施需根据实际环境调整,定期复查安全策略以应对新的威胁。安全加固是持续过程,需长期执行以保障CentOS系统及FetchLinux工具的安全。