您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > CentOS6.5_系统安全加固实施方案
目录一、用户帐号和环境..................................................................2二、系统访问认证和授权..........................................................4三、核心调整..............................................................................5四、需要关闭的一些服务..........................................................5五、SSH安全配置......................................................................6六、封堵openssl的Heartbleed漏洞.........................................6七、开启防火墙策略..................................................................7八、启用系统审计服务..............................................................8九、部署完整性检查工具软件................................................10十、部署系统监控环境............................................................11以下安全设置均是在CentOS6.5_x86环境basicserver下进行的验证。一、用户帐号和环境检查项注释:1查看用户:awk-F:'{print$1}'/etc/passwd查看用户组:cat/etc/group删除用户:userdellp删除用户组:groupdellp用户列表文件:/etc/passwd用户组列表文件:/etc/group查看系统中有哪些用户:cut-d:-f1/etc/passwd查看可以登录系统的用户:cat/etc/passwd|grep-v/sbin/nologin|cut-d:-f1清除了uucp、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$filefichownroot:root$filechmod444$filedone为用户设置缺省的umask值有助于防止用户建立所有用户可写的文件而危及用户的数据.8设备系统口令策略:修改/etc/login.defs文件将PASS_MIN_LEN最小密码长度设置为12位。9设置系统口令复杂度:修改/etc/pam.d/system-auth文件下面这一行passwordrequisitepam_cracklib.sotry_first_passretry=3minlen=12dcredit=1ucredit=1lcredit=1ocredit=1这里限制的是普通用户修改自己口令时的复杂度。这个设置对root是无效的。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/newaliases12设置帐户锁定登录失败锁定次数、锁定时间Vi/etc/pam.d/system-auth并增加下面一行内容authrequiredpam_tally2.soonerr=faildeny=6unlock_time=300连续输入密码错误6次,则自动锁定5分钟。解锁用户faillog-u用户名-r13修改帐户TMOUT值,设置自动注销时间vi/etc/profile增加TMOUT=600无操作600秒后自动退出14设置Bash保留历史命令的条数#vi/etc/profile修改HISTSIZE=5即只保留最新执行的5条命令15防止误使用Ctrl+Alt+Del重启系统#vi/etc/init/control-alt-delete.conf注掉重启系统的相关命令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.denyechorootcron.allowechorootat.allowchownroot:rootcron.allowat.allowchmod400cron.allowat.allowCron.allow和at.allow文件列出了允许允许crontab和at命令的用户名单,在多数系统上通常只有系统管理员才需要运行这些命令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/securetty通常应该以普通用户身份访问系统,然后通过其它授权机制(比如su命令和sudo)来获得更高权限,这样做至少可以对登录事件进行跟踪chmod400/etc/securetty8设置守护进程掩码vi/etc/rc.d/init.d/functions设置为umask022系统缺省的umask值应该设定为022以避免守护进程创建所有用户可写的文件三、核心调整设置项注释:1禁止coredump:catEND_ENTRIES/etc/security/limits.conf*softcore0*hardcore0END_ENTRIES允许coredump会耗费大量的磁盘空间.2echo“1”/proc/sys/net/ipv4/conf/all/log_martianschownroot:root/etc/sysctl.confchmod600/etc/sysctl.conflog_martians将进行ip假冒的ip包记录到/var/log/messages其它核心参数使用CentOS默认值。四、需要关闭的一些服务设置项注释:1关闭NFS客户端进程:运行chkconfignfslockoffchkconfigautofsoff2禁止Netfs脚本chkconfignetfsoff如果不需要文件共享可禁止该脚本3关闭MailServerchkconfigpostfixoff多数Unix/Linux系统运行Sendmail作为邮件服务器,而该软件历史上出现过较多安全漏洞,如无必要,禁止该服务4关闭cpuspeedChkconfigcpuspeedoff调节cpu速度用来省电,常用在Laptop上,对服务器没用5关闭IPv6chkconfigip6tablesoff6关闭cupschkconfigcupsoff通用unix打印服务7关闭atdchkconfigatdoff在指定时间执行命令。建议使用crond五、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_config6防火墙处理SSH端口#22-AINPUT-s192.168.1.0/24-mstate--stateNEW-ptcp--dport22-jACCEPT-AINPUT-s202.54.1.5/29-mstate--stateNEW-ptcp--dport22-jACC
本文标题:CentOS6.5_系统安全加固实施方案
链接地址:https://www.777doc.com/doc-4049883 .html