CentOS GCC 安全设置主要包括以下几个方面:
使用 GCC 的 Developer Toolset:
启用 SCL 仓库:
yum install centos-release-scl
/etc/yum.repos.d 目录下会出现 CentOS-SCLo-scl.repo 和 CentOS-SCLo-scl-rh.repo 两个文件,源默认启用。安全基线配置:
/etc/login.defs 中 PASS_MAX_DAYS 不小于标准值 900。/etc/login.defs 中 PASS_MIN_DAYS 不小于标准值 20。/etc/login.defs 中 PASS_MIN_LEN 不小于标准值 8。/etc/login.defs 中 PASS_WARN_AGE 不小于标准值 70。chage root -M 90。/etc/pam.d/system-auth 文件,添加 password requisite pam_pwquality.so retry=5 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 以设置密码复杂度。/etc/pam.d/sshd 和 /etc/pam.d/system-auth 文件,配置 SSH 方式账户认证失败次数限制和账户认证失败次数限制。SELinux 配置:
getenforce 命令查看 SELinux 是否开启。/etc/selinux/config 文件,修改 SELINUX 值为 enforcing 或者 permissive(建议改成这个模式,只记录不进行拦截),然后使用 reboot 命令重启机器使修改生效。cron 和 at 安全性配置:
/etc/cron.allow 和 /etc/at.allow 是否存在非 root 用户,如无此文件请创建,并进行用户限制。su 安全配置:
/etc/pam.d/su 文件,检查是否有以下配置:
auth required pam_wheel.so use_uid:只有 wheel 组能用 su。auth sufficient pam_rootok.so:su 需要密码。用户 umask 设置:
/etc/csh.cshrc、/etc/profile、/etc/bash.bashrc 或 /etc/bashrc 文件,设置 umask 值为 077,并通过命令 umask 检查是否修改成功。重要文件属性设置:
/etc/gshadow、/etc/shadow、/etc/group、/etc/passwd 文件属性,使用 lsattr 命令查看文件属性,使用 chattr +i 命令设置文件属性。