Linux系统安全配置ITSS标准
20150709 淡然
文档名称: Linux系统安全配置标准 |
文档编号: WM-系统部-Linux系统安全配置标准-20071227 |
文档类型: 政策规范类 |
版本: V1.0 |
更新日期: 2007.12.27 |
流程负责人: *** |
流程负责人签字: |
政策制定及实施部门: 系统部 |
管理层审批: |
Perfect World 2007 |
序号 | 版本号 | 修订日期 | 修订概述 | 修订人 | 审核人 | 批准人 | 备注 |
本文件中出现的全部内容,除另有特别注明,版权均属某公司(以下简称公司)所有。任何监控室、机构未经某公司的书面授权许可,不得以任何方式复制或引用文件的任何片断。某公司IT运维服务部安全组负责对本文档的最终解释权。 ITSS培训
本文件包含了来自某公司的可靠、权威的信息,以及内部网络系统的敏感信息,接受这份文件表示同意对其内容保密并且未经某公司书面请求和书面认可,不得复制,泄露或散布这份文件。如果你不是有意接受者,请注意对这份文件内容的任何形式的泄露、复制或散布都是被禁止。
为保证公司IT系统有效、安全地运行,保障公司的系统安全。特制订本规定,以规范公司系统安全配置和安全管理。
本标准适用于我公司所有在生产环境和办公环境中使用的Linux系统。
1、 主机的操作人:
l 按照以下规范安装主机的系统,安装相应的安全软件;
l 安装以下规定设置主机安全配置;
l 及时上报发现的安全隐患;
l 配合安全管理人员进行安全操作,保证公司的信息系统安全;
l 根据实际使用情况,提出对于本管理规定的修改意见;
2、 安全管理人员
l 制订、维护、修改本管理规定,定期更新相关的安全设置,保证主机能够防范目前的安全威胁;
l 定期对客户端进行检查,确保用户按照管理规定设置系统安全;
l 定期对公司网络进行整网检查,及时发现安全隐患;
l 对突发的安全事故的及时相应;
l 对用户发现的安全隐患进行确认、审计、应急响应等操作;
3、 部门总监
l 负责本制度的审核、审批;
4.1.安装时的安全标准
1) 系统自定义安装(去除所有不必要的软件包)或最小安装
2) 如无需要禁止安装x-win
3) 必须安装比较新的稳定发行版本
4) 必须设置bios密码
5) Grub设置timeout=0
6) 默认启动init 3
7) 操作完成或离开座位必须退出终端
8) 如果是xwin必须设置5分钟自动锁屏
4.2.用户帐户设置
1) UID-用户ID基本要求
系统值/参数 | 描述 | 设置要求 |
UID | 适用于所有的UID | 每个UID必须只能用一次,并唯一对应一个操作系统用户帐号。 |
Root安全标准
对于系统Root帐户必须满足以下要求:
Root帐户的UID必须是唯一的0;
Root帐户是root组的唯一用户;
Root帐户必须在每个系统本地有相关定义;
Root帐户和目录下不能存在/root/.rhosts或/root/.netrc文件,如果存在也必须为空,而且文件所有者和所有组必须为root和root组。其相关权限为r-------;
Root的登录脚本中不能使用到非root帐户拥有的文件或拥有全局读写权限的文件。
Root的cron jobs中不能使用到非root帐户拥有的文件或拥有全局读写权限的文件。
对于root所运行的命令必须使用全路径. (例如. /bin/su),或对于root的$PATH环境变量中不能含有相对当前目录(.), 相对子目录(./)和相对父目录(..)定义;
# vi /etc/profile
去除“:.”部分
防止root执行恶意特洛伊木马,减少安全隐患
root 帐号不允许进行远程登录操作
可以通过在/etc/securetty配置文件实现root的登录控制,/etc/securetty文件中包含了所有的可供root登录的TTY端口,这个配置文件在默认的状态下只包括了物理终端console TTY必须有相应的日志记录来跟踪成功或失败的su尝试。这个功能可以通过使用pam_wheel模块来实现。在/etc/pam.d/su添加如下两行:
auth sufficient /lib/security/pam_rootok.so
auth required /lib/security/pam_wheel.so debug group=wheel
配置信息来确保只有在wheel系统组的成员帐号才可以使用/bin/su命令切换到root。要添加一个用户到这个系统组,可以使用如下命令来实现:
#usermod -G wheel userid (userid=the userid)
2) 默认系统帐户安全标准
对于UID从1到99必须保留给默认系统帐号或应用系统帐号使用,通常对于这些用户不需要登录访问,故此可以通过在/etc/shadow文件相关的口令字段中设置“*”号来实现。
对于安装过程会建立许多通常不需要使用的系统帐号。对于下列的系统用户帐号可以锁定或删除(如没有相关的使用需求)。
nfsnobody
games
rpc
postgres
nscd
news
gopher
named
rpcuser
lp
uucp
对于默认的系统帐号只能是使用如下的UID:
root:0
bin:1
adm:4
daemon:2
sys:3
nobody:99
如下的默认系统帐号已经被通过在/etc/shadow文件中的“*”的定义来限制其相关的登录访问权限。
bin:*:13416::::::
daemon:*:13416::::::
sys:*:13416::::::
adm:*:13416::::::
nobody:*:13416::::::
3) 密码要求
密码的强度要求,具体要求如下:相关配置文件/etc/login.defs。
系统值/参数 | 描述 | 设置要求 |
PASS_MAX_DAYS | 密码有效期限的最大天数 (Maximum number of days a password may be used.) | 91 |
PASS_MIN_DAYS | 密码有效期限的最少天数 (Minimum number of days allowed between password changes.) | 0 |
PASS_MIN_LEN | 密码最小长度 (Minimum acceptable password length.) | 8 |
PASS_WARN_AGE | 在密码过期前的显示警告信息 (Number of days warning given before a password expires.) | 14 |
禁止重复使用密码次数(Number of previous password that can not be used)
在/etc/pam.d/system-auth,/etc/pam.d/passwd和/etc/pam.d/login,添加如下定义
password required /lib/security/pam_unix.so nullok remember=4 use_authtok md5 shadow
或
password sufficient /lib/security/pam_unix.so nullok remember=4 use_authtok md5 shadow
之后要运行如下命令:
# toucetc/security/opasswd 4
4) 密码保护
对于Redhat Linux系统有如下要求:
系统值/参数 | 描述 | 设置要求 ITSS认证 |
/etc/passwd | 包含userid, uid, gid, 和misc | 必须不能包含密码 |
/etc/shadow | 包含有经过加密保护的密码信息 | 此文件和其相关的拷贝文件只能由所有者root拥有读或写的权限 |
5) 限制登陆失败次数
Redhat Linux系统具体要求:
可以通过/etc/pam.d/system-auth配置文件中添加"auth required /lib/security/pam_tally.so onerr=fail no_magic_root"
"account required /lib/security/pam_tally.so deny=5 reset no_magic_root per_user"来实现。
6) GID-组ID的基本要求
系统值/参数 | 描述 | 设置要求 |
GID | 适用于所有的GID | 每个GID必须只能用一次,并唯一对应一个操作系统用户组。 |
0-99 | GID的使用 | 使用于0-99的GID保留给默认系统组或应用程序组使用 |
4.3.网络服务安全设置标准
禁止运行网络管理相关服务,只允许运行如下服务:
Syslog
Network
Crond
Iptables
严禁运行sshd等服务,必须运行操作log记录程序:MonTty.pl
4.4.权限控制
1) 用户文件和HOME目录属性
系统值/参数 描述 设置要求
系统默认UMASK 用户文件创建时缺省值
至少X27或027;
建议使用下x77或077。
添加umask=027到/root/.bash_profile文件;
$HOME 除root用户之外, 用户缺省的home目录 x00或700
2) 操作系统资源
系统值/参数 描述 设置要求
/etc
/bin
/usr/sbin
/usr/bin
/usr/etc 操作系统资源 通常的所有者为root并属于系统组。
可执行
*.a
*.o
*.so
*.cf
*.conf
*.cfg 操作系统资源文件类型 Other必须设置为r-x或更严格
/tmp和/var/tmp 临时空间 (t) Sticky 位必须设置
(缺省)
/etc/snmpd.conf SNMP配置文件 必须设置为640或更严格
/etc/services 服务设置文件 必须设置为644
3) 例外情况:
系统值/参数 设置要求
/etc/locks 该目录下可以包含world-writeable 文件
socket (s)
named pipe (p)
block special file (b)
character special file (c)
symbolic links (l) 可以是world-writeable 文件
4.5.审计策略
1) 系统访问日志
必须启用syslog进程来记录任何成功或失败的访问行为,特别是对于用户认证。在/etc/syslog.conf配置文件中必须定义记录优先级为“info”或高于其的相关信息。
2) 日志记录保存期限
对于日志记录必须保存至少60天。并做远程永久备份。
3) Sudo日志记录
对于所有Linux服务器中的sudo命令的运行必须有相应的日志记录。可以通过在/etc/syslog.conf文件中添加如下配置行来实现。
authpriv.debug /var/log/messages
注意: 必须通过重新启动syslog进程来使得相关配置生效。
4) Log设置必须做远程log服务器设置
在/etc/syslog.conf里面
*.* @192.168.253.60
5) 操作log记录程序所生成的日志文件必须上传到远程服务器保留备份
rsync -azurltopg --progress --password-file='/etc/rsync.secrets' /var/log/*.gz
4.6.防火墙规则
禁止远程任何ip连接,只运行连接192.168.253网段服务器。
由内部审计组每季度对客户机进行抽查,抽查方式和内容包括
1. Linux系统是否按照安全配置标准的要求进行配置。
2. 定期抽查系统审计日志,确认没有异常的远程连接和远程登陆;
3. 对root用户的口令强度进行检查,确认是否符合规定的要求;
4. 对用户进行访谈,结合系统日志,确认是否定期更换root密码。
对用户的异常行为处罚,一经查到会相应的进行处理和惩罚,具体如下:
1. 第一次知会本人,要求本人限期整改,同时主机断网,直至整改完成;
2. 第二次通报批评并书面知会直接行政主管,由主管在规定期限内监督用户整改,同时主机断网,直至整改完成;
3. 第三次及以后每次对直接责任人处以通报批评、罚款同时主机断网,直至整改完成;
4. 对违反以上规定造成公司的重大损失者,将根据情节给予降薪或建议人力资源部门做辞退处理;
系统名称 | IP地址 | ||
检查人 | 检查日期 | ||
序号 | 安全配置要求 | 执行情况 | 备注 |
1 | 对于新安装的Linux系统应使用稳定版本较新的系统核心,以后应定期检查和更新安全修补程序。 | ||
2 | 所有对Linux服务器控制台进行的访问必须经过严格的身份鉴别与验证,对每个被授权访问的用户必须采取用户名及密码的认证手段,或者采取其他有效的身份鉴别与验证手段。 | ||
3 | 管理员帐号与普通用户帐号权限划分。 | ||
4 | 操作系统密码设置必须符合公司的密码管理制度中的要求。 | ||
5 | 服务器远程登陆密码使用加密设置,并防止存储在密码文件中的加密密码被非授权访问。 | ||
6 | 删除或者锁定系统中不用的用户和组帐号。 | ||
7 | 取消普通用户的控制台访问权限,比如shutdown、reboot、halt等命令。 | ||
8 | Linux服务器上只能安装经授权的服务器程序。 | ||
9 | 确保Linux服务器的时间设置准确。 | ||
10 | 对Linux服务器的远程管理访问必须经过授权和验证。 | ||
11 | 关闭不需要的服务程序和端口。 | ||
12 | 对特殊目录和文件的访问应进行安全设置。 | ||
13 | 启动服务器端防火墙(iptables)对应用程序管理端口进行访问控制。 | ||
14 | 操作系统和应用程序的帐号禁止设置成可获得本地shell的登录方式,尽量使用特定的非管理员远程登陆帐号运行程序。 | ITSS考试 | |
15 | 所有Linux系统都应记录登陆日志和系统日志,并定期检查登陆日志和系统日志。 | ||
部门总监签字 | 日期 |