您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > CentOS7-系统安全加固实施方案
CentOS7.0系统安全加固手册目录一、用户帐号和环境...............................................................................................................2二、系统访问认证和授权.......................................................................................................3三、核心调整...........................................................................................................................5四、需要关闭的一些服务.......................................................................................................5五、SSH安全配置..................................................................................................................5六、封堵openssl的Heartbleed漏洞.....................................................................................6七、开启防火墙策略...............................................................................................................7八、启用系统审计服务...........................................................................................................8九、部署完整性检查工具软件.............................................................................................10十、部署系统监控环境.........................................................................................................11以下安全设置均是在CentOS7.0_x64环境下minimal安装进行的验证。一、用户帐号和环境检查项注释:1清除了operator、lp、shutdown、halt、games、gopher帐号删除的用户组有:lp、uucp、games、dip其它系统伪帐号均处于锁定SHELL登录的状态2验证是否有账号存在空口令的情况:awk-F:'($2==){print$1}'/etc/shadow3检查除了root以外是否还有其它账号的UID为0:awk-F:'($3==0){print$1}'/etc/passwd任何UID为0的账号在系统上都具有超级用户权限.4检查root用户的$PATH中是否有’.’或者所有用户/组用户可写的目录超级用户的$PATH设置中如果存在这些目录可能会导致超级用户误执行一个特洛伊木马5用户的home目录许可权限设置为700用户home目录的许可权限限制不严可能会导致恶意用户读/修改/删除其它用户的数据或取得其它用户的系统权限6是否有用户的点文件是所有用户可读写的:fordirin\`awk-F:'($3=500){print$6}'/etc/passwd`doforfilein$dir/.[A-Za-z0-9]*doif[-f$file];thenchmodo-w$filefidonedoneUnix/Linux下通常以”.”开头的文件是用户的配置文件,如果存在所有用户可读/写的配置文件可能会使恶意用户能读/写其它用户的数据或取得其它用户的系统权限7为用户设置合适的缺省umask值:cd/etcforfileinprofilecsh.logincsh.cshrcbashrcdoif[`grep-cumask$file`-eq0];thenechoumask022$filefi为用户设置缺省的umask值有助于防止用户建立所有用户可写的文件而危及用户的数据.chownroot:root$filechmod444$filedone8设备系统口令策略:修改/etc/login.defs文件将PASS_MIN_LEN最小密码长度设置为12位。10限制能够su为root的用户:#vi/etc/pam.d/su在文件头部添加下面这样的一行authrequiredpam_wheel.souse_uid这样,只有wheel组的用户可以su到root操作样例:#usermod-G10test将test用户加入到wheel组11修改别名文件/etc/aliases:#vi/etc/aliases注释掉不要的#games:root#ingres:root#system:root#toor:root#uucp:root#manager:root#dumper:root#operator:root#decode:root#root:marc修改后执行/usr/bin/newaliases13修改帐户TMOUT值,设置自动注销时间vi/etc/profile增加TMOUT=600无操作600秒后自动退出14设置Bash保留历史命令的条数#vi/etc/profile修改HISTSIZE=5即只保留最新执行的5条命令16防止IPSPOOF:#vi/etc/host.conf添加:nospoofon不允许服务器对IP地址进行欺骗17使用日志服务器:#vi/etc/rsyslog.conf照以下样式修改*.info;mail.none;authpriv.none;cron.none@192.168.10.199这里只是作为参考,需要根据实际决定怎么配置参数二、系统访问认证和授权检查项注释:1限制at/cron给授权的用户:cd/etc/rm-fcron.denyat.denyCron.allow和at.allow文件列出了允许允许crontab和at命令的用户名单,在多数系统上通常只有系统管理员echorootcron.allowechorootat.allowchownroot:rootcron.allowat.allowchmod400cron.allowat.allow才需要运行这些命令5Crontab文件限制访问权限:chownroot:root/etc/crontabchmod400/etc/crontabchown-Rroot:root/var/spool/cronchmod-Rgo-rwx/var/spool/cronchown-Rroot:root/etc/cron.*chmod-Rgo-rwx/etc/cron.*系统的crontab文件应该只能被cron守护进程(它以超级用户身份运行)来访问,一个普通用户可以修改crontab文件会导致他可以以超级用户身份执行任意程序6建立恰当的警告banner:echoAuthorizedusesonly.Allactivitymaybe\monitoredandreported./etc/motdchownroot:root/etc/motdchmod644/etc/motdechoAuthorizedusesonly.Allactivitymaybe\monitoredandreported./etc/issueechoAuthorizedusesonly.Allactivitymaybe\monitoredandreported./etc/issue.net改变登录banner可以隐藏操作系统类型和版本号和其它系统信息,这些信息可以会对攻击者有用.7限制root登录到系统控制台:catEND_FILE/etc/securettytty1tty2tty3tty4tty5tty6END_FILEchownroot:root/etc/securettychmod400/etc/securetty通常应该以普通用户身份访问系统,然后通过其它授权机制(比如su命令和sudo)来获得更高权限,这样做至少可以对登录事件进行跟踪8设置守护进程掩码vi/etc/rc.d/init.d/functions设置为umask022系统缺省的umask值应该设定为022以避免守护进程创建所有用户可写的文件三、核心调整设置项注释:1禁止coredump:catEND_ENTRIES/etc/security/limits.conf*softcore0*hardcore0END_ENTRIES允许coredump会耗费大量的磁盘空间.2chownroot:root/etc/sysctl.confchmod600/etc/sysctl.conflog_martians将进行ip假冒的ip包记录到/var/log/messages其它核心参数使用CentOS默认值。四、需要关闭的一些服务设置项注释:1关闭MailServerchkconfigpostfixoff多数Unix/Linux系统运行Sendmail作为邮件服务器,而该软件历史上出现过较多安全漏洞,如无必要,禁止该服务五、SSH安全配置设置项注释:1配置空闲登出的超时间隔:ClientAliveInterval300ClientAliveCountMax0Vi/etc/ssh/sshd_config2禁用.rhosts文件IgnoreRhostsyesVi/etc/ssh/sshd_config3禁用基于主机的认证HostbasedAuthenticationnoVi/etc/ssh/sshd_config4禁止root帐号通过SSH登录PermitRootLoginnoVi/etc/ssh/sshd_config5用警告的BannerBanner/etc/issueVi/etc/ssh/sshd_config6iptables防火墙处理SSH端口#64906-AINPUT-s192.168.1.0/24-mstate--stateNEW-ptcp--dport64906-jACCEPT-AINPUT-s202.54.1.5/29-mstate--stateNEW-ptcp--dport64906-jACCEPT这里仅作为参考,需根据实际需要调整参数7修改SSH端口和限制IP绑定:Port64906安装selinux管理命令yum-yinstallpolicycoreutils-python修改portcontexts(关键),需要对context进行修改semanageport-a-tssh_port_t-ptcp64906semanageport-l|grepssh----查看当前SElinux允许的ssh端口Vi/etc/ssh/sshd_config仅作为参考,需根据实际需要调整参数。8禁用空密码:PermitEmptyPasswordsno禁止帐号使用空密码进行远程登录SSH9记录日志:LogLevelINFO确保在sshd_config中将日志级别LogLevel设置为INFO或者DEBUG,可通过logwatchorlogcheck来阅读日志。10重启SSHsystemctlrestartsshd.service重启ssh六、封堵o
本文标题:CentOS7-系统安全加固实施方案
链接地址:https://www.777doc.com/doc-4114381 .html