CentOS镜像中的安全设置涵盖系统配置、访问控制、网络安全、安全模块等多个维度,旨在降低系统受攻击风险,提升整体安全性。
/etc/passwd文件,识别并锁定(如使用usermod -L)或删除不必要的超级用户账户(如uucp、operator等),减少潜在攻击入口。adm、lp、sync、games等默认创建但非必需的系统账户,降低账户被滥用的风险。chage命令设置口令有效期(如chage -M 90 username,强制每90天更换口令)。chattr +i命令将/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow设置为不可修改(防止未授权删除或篡改),需修改时再用chattr -i解除。/etc/pam.d/su文件,添加auth required pam_wheel.so use_uid,仅允许wheel组(预先配置的可信用户组)用户使用su切换至root。/etc/profile文件,添加TMOUT=300(单位:秒),设置root账户无操作5分钟后自动注销,避免长时间未锁定的root会话被利用。firewalld(动态防火墙管理工具),需启动服务(systemctl start firewalld)并设置开机自启(systemctl enable firewalld);通过firewall-cmd --permanent --zone=public --add-service=ssh添加必要服务(如SSH),并设置默认拒绝所有未明确允许的流量(firewall-cmd --permanent --set-default-zone=drop),减少非法访问。/etc/exports文件,配置NFS共享目录的严格访问权限(如/data 192.168.1.0/24(rw,sync,no_root_squash)),仅允许特定IP段访问,并通过exportfs -ra重新加载配置。/etc/inittab文件(或CentOS 7及以上的/usr/lib/systemd/system/ctrl-alt-del.target),注释或删除ca::ctrlaltdel:/sbin/shutdown -t3 -r now行,防止物理接触导致的意外重启或恶意重启。/etc/issue和/etc/issue.net文件,清空或替换为通用提示(如“Welcome to CentOS Server”),避免显示系统版本、内核信息等敏感内容,降低针对性攻击风险。/etc/selinux/config文件,将SELINUX=disabled改为SELINUX=enforcing(强制模式,违反策略的行为将被阻止),并重启系统生效;若需临时切换模式,可使用setenforce 1(启用)或setenforce 0(禁用)。semanage命令管理端口、文件上下文等策略(如semanage port -a -t http_port_t -p tcp 8080,允许HTTP服务使用8080端口);使用chcon命令修改文件/目录的SELinux标签(如chcon -t httpd_sys_content_t /var/www/html,将Web目录标签设置为允许Apache访问),确保服务按策略运行。yum update -y命令定期更新所有软件包,修复已知安全漏洞(如内核漏洞、服务程序漏洞);建议开启yum-cron服务(yum install -y yum-cron并启用),实现自动检查和安装安全更新。/etc/yum.conf文件,确保gpgcheck=1(启用GPG签名检查),防止安装被篡改的软件包;添加可信仓库的GPG密钥(如rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7),确保软件来源可信。rsyslog或journalctl(systemd自带)收集系统日志,将日志发送至远程日志服务器(如ELK Stack、Graylog),避免本地日志被篡改或删除,便于事后审计和攻击溯源。top、htop、vmstat等工具实时监控系统资源使用情况(CPU、内存、磁盘I/O),及时发现异常进程(如高CPU占用的未知进程);通过netstat -tulnp或ss -tulnp查看网络连接,识别非法连接(如未经授权的外部IP访问SSH端口)。docker pull centos:7),避免使用来源不明的镜像(如第三方未验证的镜像);启用Docker内容信任(export DOCKER_CONTENT_TRUST=1),确保镜像的完整性和来源可信。USER指令指定非root用户运行容器(如RUN useradd -m appuser && USER appuser),避免容器以root身份运行;使用--cap-drop ALL删除所有内核能力,再按需添加必要权限(如--cap-add NET_BIND_SERVICE允许绑定低端口)。Clair、Trivy等镜像扫描工具,定期检查镜像中的已知漏洞(如CVE),并及时修复(如更新基础镜像或应用层软件包)。