Linux 系统安全配置基线中国移动通信有限公司管理信息系统部2009年 3月版本版本控制信息更新日期更新人审批人V1.0 创建2009年1月备注:1.若此文档需要日后更新,请创建人填写版本控制表格,否则删除版本控制表格。
目录第1章概述 (1)1.1目的 .......................................................................................................... 错误!未定义书签。
1.2适用范围 .................................................................................................. 错误!未定义书签。
1.3适用版本 .................................................................................................. 错误!未定义书签。
1.4实施 .......................................................................................................... 错误!未定义书签。
1.5例外条款 .................................................................................................. 错误!未定义书签。
第2章账号管理、认证授权 . (2)2.1账号 (2)2.1.1用户口令设置 (2)2.1.2root用户远程登录限制 (2)2.1.3检查是否存在除root之外UID为0的用户 (3)2.1.4root用户环境变量的安全性 (3)2.2认证 (4)2.2.1远程连接的安全性配置 (4)2.2.2用户的umask安全配置 (4)2.2.3重要目录和文件的权限设置 (4)2.2.4查找未授权的SUID/SGID文件 (5)2.2.5检查任何人都有写权限的目录 (6)2.2.6查找任何人都有写权限的文件 (6)2.2.7检查没有属主的文件 (7)2.2.8检查异常隐含文件 (7)第3章日志审计 (9)3.1日志 (9)3.1.1syslog登录事件记录 (9)3.2审计 (9)3.2.1Syslog.conf的配置审核 (9)第4章系统文件 (11)4.1系统状态 (11)4.1.1系统core dump状态 (11)第5章评审与修订 (12)第1章概述1.1 目的本文档规定了中国移动通信有限公司管理信息系统部门所维护管理的LINUX 操作系统的主机应当遵循的操作系统安全性设置标准,本文档旨在指导系统管理人员或安全检查人员进行LINUX 操作系统的安全合规性检查和配置。
1.2 适用范围本配置标准的使用者包括:服务器系统管理员、应用管理员、网络安全管理员。
本配置标准适用的范围包括:中国移动总部和各省公司信息化部门维护管理的LINUX 服务器系统。
1.3 适用版本LINUX系列服务器;1.4 实施本标准的解释权和修改权属于中国移动集团管理信息系统部,在本标准的执行过程中若有任何疑问或建议,应及时反馈。
本标准发布之日起生效。
1.5 例外条款欲申请本标准的例外条款,申请人必须准备书面申请文件,说明业务需求和原因,送交中国移动通信有限公司管理信息系统部进行审批备案。
第2章账号管理、认证授权2.1 账号2.1.1用户口令设置安全基线项目名称操作系统Linux用户口令安全基线要求项安全基线编号SBL-Linux-02-01-01安全基线项说明帐号与口令-用户口令设置检测操作步骤1、询问管理员是否存在如下类似的简单用户密码配置,比如:root/root, test/test, root/root12342、执行:more /etc/login,检查PASS_MAX_DAYS/PASS_MIN_LEN/PASS_MIN_DAYS/PASS_W ARN_AGE参数3、执行:awk -F: '($2 == "") { print $1 }' /etc/shadow, 检查是否存在空口令账号基线符合性判定依据建议在/etc/login文件中配置:PASS_MIN_LEN=6不允许存在简单密码,密码设置符合策略,如长度至少为6 不存在空口令账号备注2.1.2root用户远程登录限制安全基线项目名称操作系统Linux远程登录安全基线要求项安全基线编号SBL-Linux-02-01-02安全基线项说明帐号与口令-root用户远程登录限制检测操作步执行:more /etc/securetty,检查Console参数骤基线符合性建议在/etc/securetty文件中配置:CONSOLE = /dev/tty01判定依据备注2.1.3检查是否存在除root之外UID为0的用户安全基线项操作系统Linux超级用户策略安全基线要求项目名称安全基线编SBL-Linux-02-01-03号安全基线项帐号与口令-检查是否存在除root之外UID为0的用户说明检测操作步执行:awk -F: '($3 == 0) { print $1 }' /etc/passwd骤基线符合性返回值包括“root”以外的条目,则低于安全要求;判定依据备注补充操作说明UID为0的任何用户都拥有系统的最高特权,保证只有root用户的UID为0 2.1.4root用户环境变量的安全性安全基线项操作系统Linux超级用户环境变量安全基线要求项目名称安全基线编SBL-Linux-02-01-04号安全基线项帐号与口令-root用户环境变量的安全性说明检测操作步执行:echo $PATH | egrep '(^|:)(\.|:|$)',检查是否包含父目录,骤执行:find `echo $PATH | tr ':' ' '` -type d \( -perm -002 -o -perm -020 \) -ls,检查是否包含组目录权限为777的目录基线符合性返回值包含以上条件,则低于安全要求;判定依据备注补充操作说明确保root用户的系统路径中不包含父目录,在非必要的情况下,不应包含组权限为777的目录2.2 认证2.2.1远程连接的安全性配置安全基线项操作系统Linux远程连接安全基线要求项目名称安全基线编SBL-Linux-02-02-01号安全基线项帐号与口令-远程连接的安全性配置说明检测操作步执行:find / -name .netrc,检查系统中是否有.netrc文件,骤执行:find / -name .rhosts ,检查系统中是否有.rhosts文件基线符合性返回值包含以上条件,则低于安全要求;判定依据备注补充操作说明如无必要,删除这两个文件2.2.2用户的umask安全配置安全基线项操作系统Linux用户umask安全基线要求项目名称安全基线编SBL-Linux-02-02-02号安全基线项帐号与口令-用户的umask安全配置说明检测操作步执行:more /etc/profile more /etc/csh.login more /etc/csh.cshrc more 骤/etc/bashrc检查是否包含umask值基线符合性umask值是默认的,则低于安全要求判定依据备注补充操作说明建议设置用户的默认umask=0772.2.3重要目录和文件的权限设置安全基线项操作系统Linux目录文件权限安全基线要求项目名称安全基线编SBL-Linux-02-02-03号安全基线项文件系统-重要目录和文件的权限设置说明检测操作步执行以下命令检查目录和文件的权限设置情况:骤ls –l /etc/ls –l /etc/rc.d/init.d/ls –l /tmpls –l /etc/inetd.confls –l /etc/passwdls –l /etc/shadowls –l /etc/groupls –l /etc/securityls –l /etc/servicesls -l /etc/rc*.d基线符合性若权限过低,则低于安全要求;判定依据备注补充操作说明对于重要目录,建议执行如下类似操作:# chmod -R 750 /etc/rc.d/init.d/*这样只有root可以读、写和执行这个目录下的脚本。
2.2.4查找未授权的SUID/SGID文件安全基线项操作系统Linux SUID/SGID文件安全基线要求项目名称安全基线编SBL-Linux-02-02-04号安全基线项文件系统-查找未授权的SUID/SGID文件说明检测操作步用下面的命令查找系统中所有的SUID和SGID程序,执行:骤for PART in `grep -v ^# /etc/fstab | awk '($6 != "0") {print $2 }'`; dofind $PART \( -perm -04000 -o -perm -02000 \) -type f -xdev -printDone基线符合性若存在未授权的文件,则低于安全要求;判定依据备注补充操作说明建议经常性的对比suid/sgid文件列表,以便能够及时发现可疑的后门程序2.2.5检查任何人都有写权限的目录安全基线项操作系统Linux目录写权限安全基线要求项目名称安全基线编SBL-Linux-02-02-05号安全基线项文件系统-检查任何人都有写权限的目录说明检测操作步在系统中定位任何人都有写权限的目录用下面的命令:骤for PART in `awk '($3 == "ext2" || $3 == "ext3") \{ print $2 }' /etc/fstab`; dofind $PART -xdev -type d \( -perm -0002 -a ! -perm -1000 \) -printDone基线符合性若返回值非空,则低于安全要求;判定依据备注2.2.6查找任何人都有写权限的文件安全基线项操作系统Linux文件写权限安全基线要求项目名称安全基线编SBL-Linux-02-02-06号安全基线项文件系统-查找任何人都有写权限的文件说明检测操作步在系统中定位任何人都有写权限的文件用下面的命令:骤for PART in `grep -v ^# /etc/fstab | awk '($6 != "0") {print $2 }'`; dofind $PART -xdev -type f \( -perm -0002 -a ! -perm -1000 \) -printDone基线符合性若返回值非空,则低于安全要求;判定依据备注2.2.7检查没有属主的文件安全基线项操作系统Linux文件所有权安全基线要求项目名称安全基线编SBL-Linux-02-02-07号安全基线项文件系统-检查没有属主的文件说明检测操作步定位系统中没有属主的文件用下面的命令:骤for PART in `grep -v ^# /etc/fstab | awk '($6 != "0") {print $2 }'`; dofind $PART -nouser -o -nogroup -printdone注意:不用管“/dev”目录下的那些文件。