业务安全 SUSE Linux 主机安全加固

更新时间:2024-06-12 04:55:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

业务安全 SUSE Linux 主机安全加固通用操作指导书

业务安全 SUSE Linux 主机安全

加固

通用操作指导书

目录

1 文档使用说明 ........................................................................................................... 4

1.1 适用范围 .............................................................................................................................. 4

2 实施前准备 ............................................................................................................... 4

2.2 系统检查 .............................................................................................................................. 5 2.3 业务检查 .............................................................................................................................. 5 2.4 备份 ...................................................................................................................................... 5

3 加固实施 ................................................................................................................... 7

3.1 帐号 ...................................................................................................................................... 8 3.1.1 SEC-SUSE-ACCT-01-设置专用维护帐号 .................................................................. 8 3.1.2 SEC-SUSE-ACCT-02-锁定/删除无用帐号 ................................................................. 9 3.1.3 SEC-SUSE-ACCT-03-用户帐号分组 ........................................................................ 11 3.2 口令 .................................................................................................................................... 12 3.2.1 SEC-SUSE-PWD-01-配置用户口令复杂度 ............................................................. 12 3.2.2 SEC-SUSE-PWD-02-配置用户口令期限 ................................................................. 13 3.2.3 SEC-SUSE-PWD-03-配置用户口令重复使用次数 ................................................. 15 3.2.4 SEC-SUSE-PWD-04-配置用户认证失败锁定策略 ................................................. 15 3.3 服务 .................................................................................................................................... 18 3.3.1 SEC-SUSE-SVC-01-查看开放系统服务端口 .......................................................... 18 3.3.2 SEC-SUSE-SVC-02-禁用无用inetd/xinetd服务 ..................................................... 19 3.3.3 SEC-SUSE-SVC-03-配置NTP时间同步 ................................................................. 20 3.3.4 SEC-SUSE-SVC-04-停用NFS服务 ......................................................................... 21 3.3.5 SEC-SUSE-SVC-05-禁用无关启动服务 .................................................................. 23 3.3.6 SEC-SUSE-SVC-06-修改SNMP默认团体名 .......................................................... 25 3.4 访问控制 ............................................................................................................................ 26 3.4.1 SEC-SUSE-AUTH-01-限制关键文件和目录访问权限 ........................................... 26

第1页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.4.2 SEC-SUSE-AUTH-02-设置用户文件默认访问权限 ............................................... 28 3.4.3 SEC-SUSE-AUTH-03-设置EEPROM密码 ............................................................. 29 3.4.4 SEC-SUSE-AUTH-04-使用SSH代替TELNET远程登陆 ..................................... 29 3.4.5 SEC-SUSE-AUTH-05-限制ROOT远程登录 .......................................................... 30 3.4.6 SEC-SUSE-AUTH-06-限制用户FTP登录 .............................................................. 32 3.4.7 SEC-SUSE-AUTH-07-限制FTP用户登录后能访问的目录 .................................. 33 3.4.8 SEC-SUSE-AUTH-08-设置终端超时退出时间 ....................................................... 34 3.4.9 SEC-SUSE-AUTH-09-设置图形界面超时退出时间 ............................................... 35 3.4.10 SEC-SUSE-AUTH-10-限制允许登录到设备的IP地址范围 ................................ 36 3.4.11 SEC-SUSE-AUTH-11-设置FTP用户登录后对文件、目录的存取权限 ............. 37 3.4.12 SEC-SUSE-AUTH-12-取消所有文件“系统文件”属性 ..................................... 39 3.4.13 SEC-SUSE-AUTH-13-禁止ctrl+alt+del ................................................................. 40 3.5 日志审计 ............................................................................................................................ 40 3.5.1 SEC-SUSE-LOG-01-记录用户登录信息 .................................................................. 40 3.5.2 SEC-SUSE-LOG-02-开启系统记帐功能 .................................................................. 41 3.5.3 SEC-SUSE-LOG-03-记录系统安全事件 .................................................................. 43 3.5.4 SEC-SUSE-LOG-04-日志集中存放 .......................................................................... 44 3.5.5 SEC-SUSE-LOG-05-记录用户SU命令操作 ........................................................... 46 3.5.6 SEC-SUSE-LOG-06-系统服务日志 .......................................................................... 46 3.6 登陆显示 ............................................................................................................................ 48 3.6.1 SEC-SUSE-BANNER-01-设置登录成功后警告Banner ......................................... 48 3.6.2 SEC-SUSE-BANNER-02-设置ssh警告Banner ...................................................... 48 3.6.3 SEC-SUSE-BANNER-03-更改telnet警告Banner .................................................. 49 3.6.4 SEC-SUSE-BANNER-04-更改ftp警告Banner ....................................................... 50 3.7 IP协议 ................................................................................................................................. 52 3.7.1 SEC-SUSE-IP-01-禁止ICMP重定向 ....................................................................... 52 3.7.2 SEC-SUSE-IP-02-关闭网络数据包转发 ................................................................... 53 3.8 内核参数 ............................................................................................................................ 54 3.8.1 SEC-SUSE-KERNEL-01-防止堆栈缓冲溢出 .......................................................... 54 3.9 补丁/软件 ........................................................................................................................... 54 3.9.1 SEC-SUSE-SW-01-安装OS补丁 ............................................................................. 54

4 实施后验证 ............................................................................................................. 55

4.1 系统检查 ............................................................................................................................ 55 4.2 启动双机和业务 ................................................................................................................. 56 4.3 业务检查 ............................................................................................................................ 56

5 风险回退 ................................................................................................................. 56

第2页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

5.1 故障信息收集: ................................................................................................................. 57 5.2 系统恢复: ........................................................................................................................ 59

第3页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

1 1.1 适用范围

1. 适用OS版本: SLES 9,SLES 10

SLES:SUSE Linux Enterprise Edition

文档使用说明

2. 适用人员:

一线维护工程师和安全专业服务工程师。要求使用人员熟悉Unix命令、系统管理和维护,熟悉安全加固流程。

2 1. 预计操作时间: 30分钟,可提前完成 2. 操作人员:

实施前准备

华为办事处业务维护工程师、华为专业安全服务工程师或交付合作方

第4页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3. 操作影响: 无影响

1) 现网设备加固需要提前提交现网施工申请,一般要求凌晨0:00后才

能开始实施。 2) 加固前一定要对机器作健康检查,确认无软硬件故障、重启正常、双

机切换正常和业务运行正常后,才能对主机进行加固操作。否则建议修复后再加固。 3) 双机加固应该严格按照如下顺序执行:双机切换-》备机重启-》备

机检查-》备机加固-》备机重启-》加固后检查-》备机启动业务-》双机切换-》业务测试-》加固当前备机。

2.2 系统检查

步骤 1 执行# dmesg查看系统硬件配置。

步骤 2 执行#more /var/log/messages检查是否有错误日志。 步骤 3 检查系统性能情况。

# top # vmstat 5 10 # sar 5 10

并把相关结果记录下来

2.3 业务检查

根据业务加固策略要求,检查业务运行状态,详细请参考对应产品的主机安全加固项目交付指导书。

2.4 备份(需要具体步骤及相应执行命令)

步骤 1 对操作系统进行全备份

可以使用YAST工具中的系统备份功能实现。 # yast

System -> System Backup 根据提示进行系统备份

步骤 2 对数据库进行备份

第5页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

根据业务备份要求备份数据库。

步骤 3 对实施过程需修改的安全配置文件进行备份

加固过程中可能会修改如下文件: /etc/passwd /etc/shadow /etc/group

/etc/security/pam_pwcheck.conf /etc/pam.d/passwd /etc/login.defs /etc/default/useradd /etc/pam.d/login /etc/pam.d/sshd /etc/ssh/sshd_config /etc/xinetd.d/* /etc/ntp.conf /etc/fstab

/etc/exports (may no exist) /etc/snmpd.conf (SUSE 9) /etc/snmp/snmpd.conf (SUSE 10) /etc/profile

$home/.profile(或.bash_profile) #即用户家目录下的.profile文件或者.bash_profile文件 /etc/securetty /etc/pam.d/su /etc/ftpusers /etc/vsftpd.conf

/etc/pure-ftpd/pure-ftpd.conf /etc/hosts.allow /etc/hosts.deny /etc/inittab

/etc/syslog.conf (SUSE 9)

第6页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

/etc/syslog-ng/syslog-ng.conf (SUSE 10) /etc/motd

/etc/sshbanner (may no exist) /etc/ssh/sshd_config /etc/issue /etc/issue.net /etc/sysctl.conf 备份相关系统文件:

#cp –p 系统文件 备份文件 //其中参数-p表示拷贝文件权限。

3 1. 预计操作时间: 60分钟 2. 操作人员:

华为专业安全服务工程师或交付合作方 3. 操作影响: 4. 其他约定:

加固实施

部分策略实施可能会造成业务中断, 在双机系统中,实施时需先实施备机,确保备机没问题后,再实施主机。

如果没有特殊说明,文中的操作均以root用户完成。

第7页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.1 帐号

3.1.1 SEC-SUSE-ACCT-01-设置专用维护帐号

安全要求:

应按照不同的用户分配不同的账号,避免不同用户间共享账号,避免用户账号和设备间通信使用的账号共享。

通用策略:

需要按维护人员角色新增维护帐号,利用工号等唯一标志做识别,需询问客户意见。通常华为业务系统上需新增两个华为方维护帐号:maintain和admin_hw。

风险说明:

操作方法:

步骤 1 创建帐号

# useradd [-d homedir] [-G group,...] [-g gid] [-m] [-p password] [-u uid] [-s shell] account 参数说明: d表示帐号主目录 G表示帐号所属组的列表 g表示帐号主所属组ID

m表示帐号组目录不存在时是否创建 p表示密码 u表示帐号ID s表示Shell类型

步骤 2 设置密码:

# passwd account 修改权限: # chmod 755 homedir

第8页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

其中755为设置的权限,可根据实际情况设置相应的权限,homedir是要更改权限的目录

步骤 3 修改帐号

# usermod [-d homedir] [-G group,...] [-g gid] [-m] [-p password] [-u uid] [-s shell] [-L] [-U] account 参数说明: d表示帐号主目录 G表示帐号所属组的列表 g表示帐号主所属组ID

m表示帐号组目录改变时是否移动原目录中文件 p表示密码 u表示帐号ID s表示Shell类型 L表示锁定帐号 U表示解除锁定帐号

步骤 4 删除帐号

# userdel [-r[-f]] account 参数说明:

r表示是否删除帐号主目录

f表示当帐号主目录存在其他帐号所有文件时是否强制删除

操作验证:

1. 验证方法: # more /etc/passwd 2. 预期结果:

不同用户使用各自不同帐号。

3.1.2 SEC-SUSE-ACCT-02-锁定/删除无用帐号

安全要求:

锁定/删除与设备运行、维护等工作无关的账号。 被锁定的账号无法使用交互式登陆。

第9页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

通用策略:

根据业务加固策略确定系统账号、业务账号的锁定/删除操作,根据客户意见确定维护账号的锁定/删除操作。

建议锁定的系统账号:bin daemon ftp nobody nobody4 lp games named at irc mysql ldap postfix postgres wwwrun mail pop snort squid mail man news uucp

在实际加固过程中,对于系统帐号,建议只锁定,不删除。

风险说明:

1. 可能有第三方系统使用了被锁定的帐号,造成第三方系统不可用,

请在实施方案制定时,收集第三方系统对账号加固的要求。 2. 锁定的用户不能直接登录系统,需经管理员帐号解锁后方可登录。

操作方法:

步骤 1 锁定用户:

# passwd -l username

步骤 2 更改帐号默认登陆SHELL:

#usermod –s /bin/false username

步骤 3 删除用户:

# userdel [-r[-f]] account 参数说明:

r表示是否删除帐号主目录

f表示当帐号主目录存在其他帐号所有文件时是否强制删除

步骤 4 解除对帐号的锁定:

# passwd -u username

操作验证:

1. 验证方法:

使用已经锁定的帐号尝试登陆 2. 预期结果:

已经锁定的帐号无法登陆,系统提示: Login incorrect

第10页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.1.3 SEC-SUSE-ACCT-03-用户帐号分组

要求内容:

根据系统要求及用户的业务需求,建立多帐户组,将用户账号分配到相应的帐户组。

通用策略:

1. 主要区分数据库用户组、业务维护帐号组、业务运行帐号和业务维

护帐号。 2. 实施时根据业务加固策略判断是否需要创建用户组,并且帐号修改

为对应组。

风险说明:

1. 尽量避免一个帐号属于多个组,避免额外授权造成安全隐患。 2. 更改业务安装运行帐号组可能造成业务不可用。请参考产品加固策

略制定实施方案,确定哪些帐号需要进行例外设置。

操作方法:

步骤 1 创建帐户组:

#groupadd –g GID groupname #创建一个组,并为其设置GID号,若不设GID,系统会自动为该组分配一个GID号;

#usermod –g groupname username #改变用户的组id为groupname #groupmod –A username groupname #将用户username分配到groupname组中。

查询被分配到的组的GID:#id username 可以根据实际需求使用如上命令进行设置。

步骤 2 可以使用 -g 选项设定新组的 GID。0 到 499 之间的值留给 root、bin、

mail 这样的系统账号,因此最好指定该值大于 499。如果新组名或者 GID 已经存在,则返回错误信息。

当用户希望以其他用户组成员身份出现时,需要使用newgrp命令进行更改,如#newgrp sys 即把当前用户以sys组身份运行;

操作验证:

1. 验证方法:

查看组文件:#cat /etc/group 2. 预期结果:

第11页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

可以查看到用户账号分配到相应的帐户组中; 或都通过命令检查账号是否属于应有的组: #id username

3.2 口令

3.2.1 SEC-SUSE-PWD-01-配置用户口令复杂度

安全要求:

对于采用静态口令认证技术的设备,口令长度至少6位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类。

通用策略:

该操作立即生效,对所有修改密码的命令有效。可根据现场需求设置密码复杂度,一般设置为最短长度6个字符,至少包含两个字母,一个特殊字符。

风险说明:

对于存在密码关联的用户,修改密码时须注意同步修改业务相关配置文件,否则会造成业务不可用。

操作方法:

设置密码规则:至少各有一个字符来自这些字符集a-z、A-Z、标点符号、0-9

步骤 1 修改/etc/security/pam_pwcheck.conf 文件:

#vi /etc/security/pam_pwcheck.conf 确保下面行未被注释,如没有,请添加: password: nullok use_cracklib

步骤 2 修改/etc/pam.d/passwd文件:

#vi /etc/pam.d/passwd

确保下面行未被注释,如没有,请添加: auth required pam_unix2.so nullok account required pam_unix2.so

password required pam_pwcheck.so nullok

password requisite pam_cracklib.so minlen=6 lcredit=-2 ocredit=-1 use_authtok

password required pam_unix2.so nullok use_first_pass use_authtok session required pam_unix2.so

第12页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

操作验证:

1. 验证方法:

创建一个普通账号,为用户配置与用户名相同的口令、只包含字符或数字的简单口令以及长度短于6位的口令,查看系统是否对口令强度要求进行提示;输入带有特殊符号的复杂口令、普通复杂口令,查看系统是否可以成功设置。

root使用passwd命令修改其它用户的密码时不受密码复杂度的限制。

2. 预期结果:

不符合密码强度的时候,系统对口令强度要求进行提示; 符合密码强度的时候,可以成功设置

3.2.2 SEC-SUSE-PWD-02-配置用户口令期限

安全要求:

对于采用静态口令认证技术的设备,帐户口令的生存期不长于90天。

通用策略:

一般对维护帐号和系统帐号启用口令过期策略,实施时根据业务加固策略决定业务帐号和数据库帐号是否能够配置口令期限。

风险说明:

1. 如果口令在过期前不及时修改,密码会失效锁定,帐号不能使用,

可能造成业务中断。请参考产品加固策略制定实施方案,确定哪些帐号需要进行例外设置。 2. 如果存在关联密码的情况,在修改密码时没同步修改业务相关配置

文件,会导致业务不可用。 3. 有些openssh版本不能正确提示密码即将到期,可能错过更改密码的

时机,导致用户被锁定。

操作方法:

1. 设置密码最大有效期限为90天 修改/etc/login.defs,添加或修改如下内容: #vi /etc/login.defs PASS_MAX_DAYS 90

第13页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

对系统已经存在帐号进行设置: # passwd –x 90 account

2. 设置在密码过期之前7天内发出报警信息。 修改/etc/login.defs,添加或修改如下内容: #vi /etc/login.defs PASS_WARN_AGE 7

对系统已经存在帐号进行设置: # passwd –w 7 account

3. 设置密码过期7天未修改则锁定帐号: 编辑文件/etc/default/useradd #vi /etc/default/useradd 添加或修改行: INACTIVE=7

对系统已经存在帐号进行设置: # passwd –i 7 account

4. 查看帐号密码策略: #passwd -aS

操作验证:

1. 验证方法:

使用密码过期的帐户尝试登录系统; 使用密码即将到期的账号尝试登陆系统; 使用密码过期7天以上的账号尝试登陆系统。 2. 预期结果: 登录不成功; 系统提示修改密码;

系统不再提示修改密码,直接拒绝登陆。

第14页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.2.3 SEC-SUSE-PWD-03-配置用户口令重复使用次数

安全要求:

对于采用静态口令认证技术的设备,应配置设备,使用户不能重复使用最近5次(含5次)内已使用的口令。

通用策略:

实施时根据业务加固策略决定是否允许设置此项。

风险说明:

操作方法:

禁止使用最近5次使用的密码 修改/etc/pam.d/passwd,添加如下内容 #vi /etc/pam.d/passwd

password required pam_unix.so remember=5 use_authtok md5 shadow

操作验证:

1. 验证方法:

使用用户帐号修改自己的密码,设置新密码与最近几次的旧密码相同; 2. 预期结果:

如果设置的新密码与最近5次的旧密码相同,系统不接受该新密码。

root使用passwd命令修改其它用户的密码时不受密码复杂度的限制。

3.2.4 SEC-SUSE-PWD-04-配置用户认证失败锁定策略

安全要求:

对于采用静态口令认证技术的设备,应配置当用户连续认证失败次数超过6次(不含6次),锁定该用户使用的账号。

第15页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

通用策略:

实施时根据现场需求决定业务帐号和数据库帐号是否不允许设置认证失败次数。

Pam模块根据系统版本不同,可能配置的方法也不一样,需要参考实际情况来进行配置,以下两种配置方法可以解决绝大多数系统的配置问题。需要注意的是:某些SUSE 9系统中,使用telnet错误登录一次,FAILLOG里计数器会计两次数,设置次数时需要根据实际情况进行设置。

风险说明:

1. 如果业务帐号被锁定,帐号不能使用,可能造成业务中断。请参考

产品加固策略制定实施方案,确定哪些帐号需要进行例外设置。 2. 帐号可能被恶意重试导致被锁定。需要询问客户决定是否实施。

操作方法:

1. 终端登录:

步骤 1 设置登录时连续认证失败6次后断开会话:

修改/etc/login.defs文件,进行如下设置: #vi /etc/login.defs LOGIN_RETRIES 6

步骤 2 设置连续登陆6次后帐号锁定:

SUSE 9:

修改/etc/pam.d/login文件,添加如下两行: #vi /etc/pam.d/login

auth required pam_tally.so no_magic_root account required pam_tally.so deny=6 no_magic_root SUSE 10:

修改/etc/pam.d/login文件,添加如下两行: #vi /etc/pam.d/login

auth required pam_tally.so deny=6 account required pam_tally.so

第16页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

2. SSH登录: SUSE 9:

步骤 1 设置连续登陆6次后帐号锁定:

修改/etc/pam.d/sshd文件,添加如下两行: #vi /etc/pam.d/sshd

auth required pam_tally.so no_magic_root #此行的位置需要在该文件的第一行。

account required pam_tally.so deny=6 no_magic_root

步骤 2 重启sshd服务:

#/etc/init.d/sshd restart SUSE 10:

步骤 1 设置登录时连续认证失败6次后断开会话:

修改/etc/ssh/sshd_config文件,进行如下设置: #vi /etc/ssh/sshd_config MaxAuthTries 6

步骤 2 设置连续登陆6次后帐号锁定:

修改/etc/pam.d/sshd文件,添加如下两行: #vi /etc/pam.d/sshd

auth required pam_tally.so deny=6 account required pam_tally.so

步骤 3 重启sshd服务:

#/etc/init.d/sshd restart 3. 解锁方法:

以管理员用户登录,执行如下操作:

步骤 1 查看哪些用户被锁定:

#pam_tally

步骤 2 为用户解锁:

# pam_tally --user username --reset=0

操作验证:

1. 验证方法:

第17页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

以任一普通账号通过错误的口令进行系统登录6次以上; 2. 预期结果:

帐户被锁定,需要联系系统管理员解锁

3.3 服务

3.3.1 SEC-SUSE-SVC-01-查看开放系统服务端口

安全要求:

设备应支持列出对外开放的IP服务端口和设备内部进程的对应表。

通用策略:

此项是对操作系统本身的要求,SUSE系统均满足此项要求。

风险说明:

操作方法:

步骤 1 查看已使用服务列表:

# chkconfig --list

步骤 2 查看开放的端口列表:

# netstat -an

步骤 3 服务端口和进程对应表:

# more /etc/services

操作验证:

1. 验证方法:

步骤 1 # chkconfig - - list 步骤 2 # netstat -an 步骤 3 # more /etc/services

2. 预期结果:

第18页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

步骤 1 能够列出开放的服务列表 步骤 2 能够列出开放的端口列表

步骤 3 可以看到详细的服务端口和进程对应表

3.3.2 SEC-SUSE-SVC-02-禁用无用inetd/xinetd服务

安全要求:

列出所需要服务的列表(包括所需的系统服务),不在此列表的服务需关闭。

通用策略:

仅关闭产品确认的可以关闭的服务。

建议关闭的服务(需要根据各产品线加固策略决定是否关闭):

chargen、chargen-udp、cups-lpd、cvs、daytime、daytime-udp、echo、echo-udp、fam、netstat、rsync、servers、services、systat、time、time-udp 请根据需要开启相应的服务

风险说明:

1. 第三方系统可能需要使用这里禁用的服务。

2. Unix/Linux上的很多软件对系统服务具有依赖性,服务之间也具有依

赖性。关闭服务可能造成软件或者服务不能正常运行。 3. 禁用服务可能影响以后的业务升级和新业务的上线。

操作方法:

步骤 1 关闭inetd服务

# chkconfig 服务名 off

步骤 2 关闭xinetd服务

修改其配置文件,在其属性中修改Disable 为yes,如没有,请添加 #vi /etc/xinetd.d/服务名 disable = yes

步骤 3 重启inetd服务

# /etc/init.d/xinetd restart

第19页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

操作验证:

1. 验证方法: # chkconfig -l 2. 预期结果:

仅有允许的服务处于开启状态

3.3.3 SEC-SUSE-SVC-03-配置NTP时间同步

安全要求:

如果网络中存在信任的NTP服务器,应该配置系统使用NTP服务保持时间同步。

通用策略:

实施时根据业务加固策略确定是否需要接入ntp服务器

风险说明:

1. 需要有正确的时间同步服务器支撑,否则会导致日后审计困难(尤

其是双机); 2. 业务软件的功能逻辑可能与时间强相关,时间同步可能引起逻辑紊

乱; 3. Oracle等数据库对时间的要求也比较严格,如果主机时间往回跳,

Oracle可能无法启动,逻辑备份也会失效。

操作方法:

如果产品本身有ntp时间同步要求的,请按照产品发布的ntp时间同步方案实施。

步骤 1 修改ntp的配置文件:

# vi /etc/ntp.conf

server IP地址(提供ntp服务的机器)

步骤 2 打开服务

SUSE 9:

#chkconfig xntpd on SUSE 10:

第20页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

# chkconfig ntp on

步骤 3 启动服务

SUSE 9

# /etc/rc.d/xntpd start SUSE 10 # /etc/rc.d/ntp start

步骤 4 停止服务

SUSE 9

# /etc/rc.d/xntpd stop SUSE 10 # /etc/rc.d/ntp stop

操作验证:

1. 验证方法:

查看ntp 的配置文件:# more /etc/ntp.conf 查看ntp进程: SUSE 9: #ps –elf | grep xntpd SUSE 10: # ps –elf | grep ntp 查看当前时间:# date 2. 预期结果:

与NTP服务器保持时间同步。

3.3.4 SEC-SUSE-SVC-04-停用NFS服务

安全要求:

NFS服务:如果没有必要,需要停止NFS服务;如果需要NFS服务,需要限制能够访问NFS服务的IP范围。

通用策略:

实施时根据业务加固策略确定是否能够禁用NFS服务。如果确实需要开启NFS服务,需要限制能访问本机NFS服务的客户端IP。

第21页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

Suse 10 中没有nfslock服务

风险说明:

如果限制IP错误,NFS客户端将无法访问共享目录。需要事先确定能使用本机NFS服务的客户端及其读写权限。

操作方法:

1. 需要停止NFS服务:

步骤 2 关闭NFS服务:

#chkconfig nfs off #chkconfig nfsserver off #chkconfig nfsboot off #chkconfig nfslock off #/etc/init.d/nfs stop #/etc/init.d/nfsserver stop #/etc/init.d/nfsboot stop #/etc/init.d/nfslock stop

步骤 3 配置/etc/fstab文件:

#vi /etc/fstab

/etc/fstab的格式如下:

fs_spec fs_file fs_type fs_options fs_dump fs_pass

上述格式为该文件中的六个字段的名称,如fs_type即表示文件系统类型。

注释掉里面fs_spec字段或fs_type字段中含有NFS字样的行。

步骤 4 删除NFS目录文件:

#rm /etc/exports

2. 需要开启NFS服务:

步骤 1 如果需要NFS服务,需要限制能够访问NFS服务的IP范围:

编辑/etc/exports文件: #vi /etc/exports

第22页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

添加如下行:

/dir/work 192.168.1.12(ro,root_squash) 其中/dir/work为欲分享的目录;

192.168.1.12为登录此目录的主机IP(也可以是主机名),这里可以是一个IP段;

ro表示是只读模式;

root_squash表示禁止root写入该目录。

步骤 2 配置完成后执行#exportfs –a命令使改动立刻生效。

步骤 3 通过限制允许访问NFS服务端的主机IP来限制对NFS的访问,具体请

参照3.4.10节“SEC-SUSE-AUTH-10-限制允许登录到设备的IP地址”。

操作验证:

1. 验证方法:

步骤 1 查看nfs服务是否关闭

#chkconfig nfs #chkconfig nfsserver #chkconfig nfsboot

#chkconfig nfslock(suse 10下不用检查此服务)

步骤 2 若nfs服务状态为开启,则查看/etc/exports文件,通过不在文件允许范围的主机访问该服务端共享的目录

2. 预期结果:

步骤 1 nfs服务为关闭状态;

步骤 2 若nfs服务为开启状态,通过不在/etc/exports文件允许范围的主机访问该

服务端共享的目录失败。

3.3.5 SEC-SUSE-SVC-05-禁用无关启动服务

安全要求:

列出系统启动时自动加载的进程和服务列表,不在此列表的需关闭。

通用策略:

仅关闭产品确认的允许关闭的服务。

在SUSE Linux系统中以下系统服务必须启动:

第23页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

auditd、cron、haldaemon、kbd、network、portmap、random、resmgr、running-kernel、syslog

建议关闭以下服务(需根据各产品线实际加固策略实施,某些服务如vsftp、pure-ftp等等关闭可能会影响业务): Makefile、SuSEfirewall2_init、SuSEfirewall2_setup、aaeventd、acpid、alsasound、apache2、atd、autofs、autoyast、boot.apparmor、boot.evms、boot.multipath、boot.sched、boot.scsidev、chargen、chargen-udp、cups、cups-lpd、cupsrenice、daytime、daytime-udp、drbd、earlykbd、echo、echo-udp、esound、evms、fam、gpm、gssd、heartbeat、idmapd、ipmi、ipvsadm、iscsitarget、joystick、ksysguardd、ldap、ldirectord、lm_sensors、mdadmd、microcode、multipathd、netstat、nfsserver、novell-zmd、nscd、ntp、o2cb、ocfs2、open-iscsi、openct、oracle、owcimomd、pcscd、postfix、powerd、powersaved、pure-ftpd、rexec、rlogin、rpasswdd、rpmconfigcheck、rsh、rsync、rsyncd、sapinit、saslauthd、servers、services、skeleton.compat、slurpd、smartd、smbfs、smpppd、snmpd、splash、splash_early、suseRegister、svcgssd、systat、time、time-udp、vsftpd、xend、xendomains、xfs、ypbind

风险说明:

1. 第三方系统可能需要使用这里禁用的服务。

2. Unix/Linux上的很多软件对系统服务具有依赖性,服务之间也具有依

赖性。关闭服务可能造成软件或者服务不能正常运行。 3. 禁用服务可能影响以后的业务升级和新业务的上线。

操作方法:

步骤 1 服务关闭方法:

# chkconfig 服务名 off

步骤 2 停止系统启动服务:

将/etc/rcn.d下的不需要启动的服务改名成不以S打头(其中n=0~6)。

操作验证:

1. 验证方法: # chkconfig -l 2. 预期结果:

仅有允许的服务处于开启状态

第24页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.3.6 SEC-SUSE-SVC-06-修改SNMP默认团体名

安全要求:

如果没有必要,需要停止SNMP服务;如果确实需要使用NFS服务,需要修改SNMP Community。

通用策略:

网管软件可能使用snmp协议获取网元信息,I2000网管的UOA组件实现了snmp代理功能,不使用系统自带的snmpd服务,这种情况只需要停止系统snmpd服务即可,关闭方法参照3.3.5节“SEC-SUSE-SVC-05-禁用无关启动服务”。在实施时需要先了解现网是否使用了SUSE系统自带的snmpd服务。

修改默认团体名后,请务必同步修改snmp客户端上的对应信息,否则snmp客户端将无法连接snmpd服务。

风险说明:

修改默认团体名后,请务必同步修改snmp客户端如I2000上的对应信息,否则snmp客户端将无法连接snmpd服务。

操作方法:

SUSE 9:

步骤 1 修改snmp配置文件:

#vi /etc/snmpd.conf

找到以rocommunity或rwcommunity开头的行,如: rocommunity public 127.0.0.1

其中的第二个字段(public)即为团体名,用新的团体名称替换该字段: rocommunity community_name 127.0.0.1

步骤 2 重启snmp服务:

#rcsnmpd restart

SUSE 10:

第25页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

步骤 1 修改snmp配置文件:

#vi /etc/snmp/snmpd.conf

找到以rocommunity或rwcommunity开头的行,如: rocommunity public 127.0.0.1

其中的第二个字段(public)即为团体名,用新的团体名称替换该字段: rocommunity community_name 127.0.0.1

步骤 2 重启snmp服务:

#rcsnmpd restart

操作验证:

1. 验证方法:

步骤 1 查看snmpd服务状态:

#chkconfig snmpd

步骤 2 若snmpd服务状态为开启状态,则检查其团体名称是否修改:

snmp客户端不修改对应团体名,重新连接snmpd服务; snmp客户端修改对应的团体名,重新连接snmpd服务。 2. 预期结果:

步骤 1 Snmpd服务状态为off 步骤 2 若Snmpd服务状态为on:

snmp客户端不修改对应团体名,重新连接snmpd服务,无法查询系统信息;

snmp客户端修改对应的团体名,重新连接snmpd服务,能够正常查询系统信息。

3.4 访问控制

3.4.1 SEC-SUSE-AUTH-01-限制关键文件和目录访问权限

安全要求:

在设备权限配置能力内,根据用户的业务需要,配置其所需的最小权限。 涉及账号、账号组、口令、服务等的重要文件和目录的权限设置不能被任意人员删除,修改。

第26页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

通用策略:

实施时根据业务加固策略决定对业务业务系统的哪些重要文件和目录需要加强权限。

风险说明:

1. 对Oracle文件权限加固后,可能出现NBU备份软件不能正常备份等

现象。 2、如果业务系统目录内存在非业务用户的文件,业务用户将无法使用。

操作方法:

/etc/passwd 必须所有用户都可读,root用户可写 –rw-r—r— /etc/group 必须所有用户都可读,root用户可写 –rw-r—r— /etc/shadow 只有root可读 –r-------- 使用如下命令设置: # chmod 644 /etc/passwd # chmod 644 /etc/group # chmod 400 /etc/shadow

如果是有写权限,就需移去组及其它用户对/etc的写权限(特殊情况除外) 执行命令: # chmod -R go-w /etc

操作验证:

1. 验证方法: # ls -la /etc/passwd # ls -la /etc/group # ls -la /etc/shadow # ls -la /etc 2. 预期结果:

文件和目录属性符合预期设置

第27页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.4.2 SEC-SUSE-AUTH-02-设置用户文件默认访问权限

安全要求:

控制用户缺省访问权限,当在创建新文件或目录时 应屏蔽掉新文件或目录不应有的访问允许权限。防止同属于该组的其它用户及别的组的用户修改该用户的文件或更高限制。

通用策略:

默认UMASK值建议设置为027,需要根据产品安全策略设置相应UMASK值。

风险说明:

有些产品用会使用一个帐号创建话单文件,另一个用户通过ftp取话单,如果设置umask值为027,取话单会失败。这种情况下建议设置umask值为022。

操作方法:

步骤 1 设置全局默认权限:

在/etc/profile末尾增加umask 027 #vi /etc/profile umask 027

步骤 2 设置单个用户默认权限:

如果用户需要使用一个不同于默认全局系统设置的umask,可以编辑其家目录下的.profile文件或.bash_profile文件: #vi $home/.profile (或.bash_profile)

在里面修改或者添加UMASK 022 #具体值可以根据实际需要进行设置

操作验证:

1. 验证方法: 尝试新建目录或文件 2. 预期结果:

用户新建目录或文件属性符合预期设置

第28页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.4.3 SEC-SUSE-AUTH-03-设置EEPROM密码

安全要求:

设置eeprom 安全密码,硬件启动要求输入密码才能启动。

通用策略:

SUSE系统不涉及操作系统EEPROM密码,一般通过设置硬件启动密码来满足此安全需求

目前SUSE系统所在的硬件环境以ATAE单板、IBM PC服务器及HP PC服务器居多,其中ATAE单板不能设置硬件启动密码。

风险说明:

忘记eeprom密码将无法开机。

操作方法:

计算机开启时,按照提示进入BIOS界面,参照主板说明进行BIOS密码设置,注意设置密码应尽量复杂。

操作验证:

1. 验证方法: 重启主机 2. 预期结果: 启动硬件时需要输入密码

3.4.4 SEC-SUSE-AUTH-04-使用SSH代替TELNET远程登陆

安全要求:

对于使用IP协议进行远程维护的设备,设备应配置使用SSH等加密协议。

通用策略:

如果系统已经安装ssh,启动ssh服务即可。如果没有安装ssh软件,请联系总部技术支持先安装ssh,再启动服务。

第29页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

风险说明:

操作方法:

步骤 1 打开ssh服务:

#chkconfig sshd on 启动ssh 服务: #/etc/init.d/sshd start

步骤 2 查看SSH服务状态:

# /etc/init.d/sshd status 若为running,即为生效。

操作验证:

1. 验证方法: 查看SSH服务状态: # /etc/init.d/sshd status 2. 预期结果: 显示SSH正在运行

3.4.5 SEC-SUSE-AUTH-05-限制ROOT远程登录

安全要求:

1. 对于具备console台的设备,限制root用户只能从console台本地登

录。 2. 远程执行管理员权限操作,应先以普通权限用户远程登录后,再切

换到超级管理员权限账号后执行相应操作。

通用策略:

现场实施时根据业务需要选择可以切换到管理员权限的用户,集中划入wheel组

风险说明:

1. 如果业务直接以root身份运行,限制root远程登录可能对业务正常

使用造成影响。 2. 需要以root直接登录进行操作的工具(如巡检工具)会失效。

第30页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3. 要求转变维护习惯。需要询问客户后确定是否实施。

4. 如果主机上没有维护帐号或者该帐号没有添加到wheel组,限制root

远程登录后将无法远程登录主机,须到控制台上操作。

操作方法:

限制管理员帐号Telnet登录:

步骤 1 修改/etc/pam.d/login文件

# vi /etc/pam.d/login

添加以下内容,如果已经存在请确保未被注释 auth required pam_securetty.so

步骤 2 修改/etc/securetty文件

#vi /etc/securetty 注释掉以下内容: pts/1 pts/2 ......... ptsn

步骤 3 限制管理员帐号SSH登录:

修改/etc/ssh/sshd_config文件 #vi /etc/ssh/sshd_config 将

PermitRootLogin yes 改为

PermitRootLogin no 重启sshd服务: # rcsshd restart

步骤 4 限制可以通过su切换到root的用户:

#vi /etc/pam.d/su

在文件的头部加入下面三行:

第31页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

auth sufficient pam_rootok.so auth required pam_wheel.so auth required pam_unix.so 把可以执行su的账号放入wheel组 # usermod –G 10 username

操作验证:

1. 验证方法:

Root用户使用telnet、SSH登录; 普通用户使用telnet、SSH登录;

普通用户登录后使用su切换到root用户(需要输入管理员口令)。 2. 预期结果: root无法登录 普通用户无法登录

Wheel组里的用户可以成功切换到root用户(需要输入管理员口令)

3.4.6 SEC-SUSE-AUTH-06-限制用户FTP登录

安全要求:

控制FTP进程缺省访问权限,当通过FTP服务创建新文件或目录时应屏蔽掉新文件或目录不应有的访问允许权限。

通用策略:

以下用户名不允许ftp登陆:

root daemon bin sys adm lp uucp nuucp listen nobody noaccess nobody4 根据实际情况添加修改不能登录的用户帐号。

风险说明:

有些局点直接使用root用户ftp登录取话单,禁用root ftp登录后,可能无法正常取话单。

操作方法:

通过修改ftpusers文件,增加不能登录的用户 # vi /etc/ftpusers

第32页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

操作验证:

1. 验证方法:

使用列表中的帐号登录ftp 2. 预期结果:

列表中的帐号无法登录ftp

3.4.7 SEC-SUSE-AUTH-07-限制FTP用户登录后能访问的目录

安全要求:

应该从应用层面进行必要的安全访问控制,比如FTP服务器应该限制ftp可以使用的目录范围。

通用策略:

全局生效,对所有用户有效。 加固后ftp仅能在家目录下活动。

风险说明:

用户ftp登录后,通常并不只需要在自己的家目录下活动,限制后业务可能无法正常运行,如不能正常取话单文件。

操作方法:

步骤 1 vsftp

修改/etc/vsftpd.conf # vi /etc/vsftpd.conf

确保以下行未被注释掉,如果没有该行,请添加: chroot_local_user=YES 重启网络服务 # rcxinetd restart

步骤 2 pure-ftp

修改/etc/pure-ftpd/pure-ftpd.conf # vi /etc/pure-ftpd/pure-ftpd.conf

第33页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

确保以下行未被注释掉(并且值为以下值),如果没有该行,请添加: ChrootEveryone yes AllowUserFXP no AllowAnonymousFXP no 重启ftp服务

# /etc/init.d/pure-ftpd restart

由于安装时pure-ftp可能落在xinetd服务里,pure-ftpd服务由xinetd服务拉起,重启ftp服务时可能会出现失败现象,这时可以修改

/etc/xinetd.d/pure-ftpd文件中的disable值为yes,然后再重启服务。

操作验证:

1. 验证方法:

登录ftp后尝试切换到上级目录 2. 预期结果:

用户登陆后只能在自己当前目录以及子目录下活动。

3.4.8 SEC-SUSE-AUTH-08-设置终端超时退出时间

要求内容:

对于具备字符交互界面的设备,应配置定时帐户自动登出。

通用策略:

可根据实际要求设置超时退出时间,一般情况下设置为180秒

风险说明:

设置shell会话超时退出时间后,用户在本次会话中没有用nohup启动的用户进程可能会随会话自动退出。

操作方法:

编辑文件/etc/profile

第34页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

#vi /etc/profile 增加如下行: TMOUT=180 export TMOUT

改变这项设置后,重新登录才能有效。

操作验证:

1. 验证方法:

用root帐户登录后,在设定时间内不进行任何操作,检查帐户是否登出。 2. 预期结果:

若在设定时间内没有操作动作,能够自动退出,即为符合;

3.4.9 SEC-SUSE-AUTH-09-设置图形界面超时退出时间

要求内容:

对于具备图形界面(含WEB界面)的设备,应配置定时自动屏幕锁定。

通用策略:

如无必要,建议不要使用GUI。

风险说明:

操作方法:

方案一:禁用GUI服务设置: #/etc/init.d/xdm stop #chkconfig xdm off

方案二:自动屏幕锁定设置:

步骤 1 KDE

在屏幕保护中设置,Console对所有用户生效,Terminate对除root外其他用户生效。

第35页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

在桌面空白处单击鼠标右键,选择“configure desktop…”—>“Screen saver”,在右栏设置自动锁屏时间并选中“Require password to stop screen saver”。

步骤 2 GNOME

在屏幕保护中设置,Console、Terminate均对除root外其他用户生效。 在桌面菜单单击“Applications”—>“Desktop Preferences”—>“Advanced”—>“Screensaver”,在弹出的对话框中选中“Lock Screen After ? minutes”并设置好自动锁屏时间。

操作验证:

1. 验证方法:

以普通用户登录图形界面,不做任何操作 2. 预期结果:

如果GUI被禁用,则无法进入图形界面;

如果GUI启用,在设定的时间内不做任何操作,会进入屏保状态,重新登入时需要输入口令。

3.4.10 SEC-SUSE-AUTH-10-限制允许登录到设备的IP地址范围

安全要求:

对于通过IP协议进行远程维护的设备,设备应支持控制访问该设备特定服务的IP地址范围。

通用策略:

使用tcpd程序可以控制以下服务的IP地址范围: telnet, ssh, ftp, exec, rsh, rlogin, tftp, finger, talk, comsat 需研发给出网元访问关系。

风险说明:

1. 容易造成网络连通性问题,建议通过硬件防火墙来统一控制。 2. 维护比较麻烦,需询问客户后确定是否实施。

操作方法:

编辑文件/etc/hosts.allow,设置允许访问的范围

第36页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

# vi /etc/hosts.allow 增加一行

: 允许访问的IP 举例如下:

all:192.168.4.44 : ALLOW #允许单个IP;

sshd:192.168.1. : ALLOW #允许192.168.1的整个网段 in.telnetd : ALL : ALLOW #允许所有 编辑文件/etc/hosts.deny,设置拒绝访问的范围 # vi /etc/hosts.deny 增加一行 ALL : ALL

操作验证:

1. 验证方法:

查看/etc/hosts.allow和/etc/hosts.deny两个文件 使用受限制的IP访问 2. 预期结果:

受限制的IP无法访问上述服务

3.4.11 SEC-SUSE-AUTH-11-设置FTP用户登录后对文件、目录的存取权限

安全要求:

设置ftp用户登录后对文件目录的存取权限

通用策略:

全局生效,对所有用户有效。

如果以下不设置,默认情况下vsftp上传之后文件的权限是600,目录权限是700。

风险说明:

第37页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

操作方法:

步骤 1 vsftp

修改/etc/vsftpd.conf # vi /etc/vsftpd.conf

确保以下行未被注释掉,如果没有该行,请添加: write_enable=YES //允许上传 ls_recurse_enable=YES

local_umask=022 //设置用户上传文件的属性为755 anon_umask=022 //匿名用户上传文件(包括目录)的 umask 重启网络服务 # rcxinetd restart

步骤 2 pure-ftp

修改/etc/pure-ftpd/pure-ftpd.conf # vi /etc/pure-ftpd/pure-ftpd.conf

确保以下行未被注释掉,如果没有该行,请添加:

Umask 177:077

重启ftp服务

#/etc/init.d/pure-ftpd restart

由于安装时pure-ftp可能落在xinetd服务里,pure-ftpd服务由xinetd服务拉起,重启ftp服务时可能会出现失败现象,这时可以修改

/etc/xinetd.d/pure-ftpd文件中的disable值为yes,然后再重启服务。

文件创建或者上传时的权限默认去除了可执行权限。即如果上面的UMASK值设置为022,实际创建或者上传的文件权限为644。

第38页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

操作验证:

1. 验证方法: 登录FTP后上传文件 2. 预期结果:

用户行为受到控制,文件权限符合预期设置。

3.4.12 SEC-SUSE-AUTH-12-取消所有文件“系统文件”属性

安全要求:

去掉所有文件“系统文件”属性,防止用户滥用及提升权限的可能性

通用策略:

如无特殊需求,建议取消文件的SUID、SGID属性。

改变文件的SUID、SGID属性前,先备份该文件(带权限): # cp -p /dir/filename /dir/filename.bak

风险说明:

某些文件的执行需要使用属主或属组权限,如果去除,可能会造成对执行结果有影响甚至影响业务,需与客户沟通确认后执行。

操作方法:

找出系统中所有含有“s”属性的文件,把不必要的“s”属性去掉,或者把不用的直接删除。

# find / -type f \\( -perm -04000 -o -perm -02000 \\) -exec ls -lg {} \\; # chmod a-s filename

操作验证:

1. 验证方法:

再次使用以下命令查找含有“s”属性的文件

# find / -type f \\( -perm -04000 -o -perm -02000 \\) -exec ls -lg {} \\; 2. 预期结果:

无法再次找到含有“s”属性的文件

第39页, 共60页

业务安全 SUSE Linux 主机安全加固通用操作指导书

3.4.13 SEC-SUSE-AUTH-13-禁止ctrl+alt+del

安全要求:

禁止ctrl+alt+del,防止非法重新启动服务器。

通用策略:

风险说明:

操作方法:

# vi /etc/inittab 将以下行

ca::ctrlaltdel:/sbin/shutdown -r -t 4 now 修改为:

ca::ctrlaltdel:/bin/true

操作验证:

1. 验证方法: 按键盘ctrl+alt+del 2. 预期结果: 服务器没有任何反应

3.5 日志审计

3.5.1 SEC-SUSE-LOG-01-记录用户登录信息

安全要求:

设备应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号,登录是否成功、登录时间、以及远程登录时、用户使用的IP地址

第40页, 共60页

本文来源:https://www.bwwdw.com/article/htp6.html

Top