1 |
口令复杂度策略 |
1.确认账号现用密码; 2.查看配置文件/etc/pam.d/system-auth中相关参数。 |
1.密码长度不小于8位,至少包括数字、大写字母、小写字母、特殊字符中的三种字符,非常见弱密码,如Admin@123、1qaz@WSX等,非逻辑弱密码,如sdyc@123等; 2.如“difok=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 remember=5”符合要求。 |
1.建议静态密码长度至少8位,并包括数字、小写字母、大写字母和特殊符号四类中至少三类,5次以内不设置相同的密码。 2.参考配置: 在/etc/pam.d/system-auth文件中配置: 1.password requisite pam_cracklib.so difok=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 2.password sufficient pam_unix.so use_authtok md5 shadow remember=5 注: difok为新密码同旧密码最少不同字符个数; minlen为最小密码长度; ucredit为最少大写字母个数; lcredit为最少小写字母个数; dcredit为最少数字个数。 |
2 |
口令周期策略 |
查看配置文件/etc/login.defs中相关参数。 |
PASS_MAX_DAYS 90 PASS_WARN_AGE 15 |
建议静态密码90天更换,提前15天提示密码到期。参考配置: 使用命令“vi /etc/login.defs”修改配置文件。 PASS_MAX_DAYS 90 #密码最长使用天数 PASS_WARN_AGE 15 #密码到期提前提醒天数 |
3 |
root账号远程登录策略 |
查看配置文件/etc/ssh/sshd_config中相关参数。 |
PermitRootLogin no |
建议禁止直接root远程登录。参考配置: vi /etc/ssh/sshd_config #编辑配置文件 设置“PermitRootLogin”值为“no” #不允许root直接登录 service sshd restart #重启sshd服务 注意:修改此项前,应确保存在可登录的普通账号。 |
4 |
默认账号、无用账号删除或停用策略 |
cat /etc/passwd |
不存在可登录默认账号、无用账号。 |
建议删除或停用默认账号、无用账号,默认账号无法停用的建议修改其默认口令。参考配置: 修改/etc/passwd文件,将需要停用的账户的shell域后添加nologin; #vi /etc/passwd test❌1000💯 LINUX:/home/test:/bin/bash/nologin 注:一般情况下,LINUX系统需要停用deamon,bin,sys,adm,uucp, nuucp,printq,guest,nobody,lpd,sshd等内置默认账号,在实际操作中,还需与开发人员、运维人员共同确认无用账号。 |
5 |
三权分立策略 |
cat /etc/passwd #查看分配账号 getfacl 目录或文件 #查看目录或文件acl权限 |
具备管理、操作、审计三类独立权限账号,支持三权分立机制。 |
建议创建管理、操作、审计三类独立权限账号,支持三权分立机制。参考配置: 管理账号(root):拥有所有操作权限; 普通账号:具有基本操作权限; 审计账号:对各类日志及文件仅具有查看权限。 1.root账号安装时产生; 2.普通账号创建 useradd 账号名 #创建账号 passwd 密码 #设置密码 注:普通账号权限具体需要根据实际需求设置,一般已有的权限可以满足需求(通过sudo授权控制权限)。 3.审计账号:审计账号仅用于审计功能,其权限可在普通账号基础上进行修改。 1)创建审计账号(方法同普通账号); 2)修改审计账号权限使其仅具有查看功能: setfacl -m u:账号名:rx 目录或文件绝对路径 #设置权限控制 3)给审计账号授权,修改/etc/sudoers文件,在文件最下边添加如下内容 账号名 ALL = (root) NOPASSWD: /usr/bin/cat,/usr/bin/less,/usr/bin/more,/usr/bin/tail,/usr/bin/head |
6 |
禁止共享账号策略 |
cat /etc/passwd |
账号仅单人使用。 |
建议根据不同的用户需求创建相应账号,避免多人共用同一账号。 |
7 |
业务与主机权限分离策略 |
询问业务系统管理员与主机操作系统管理员是否为同一自然人。 |
非同一自然人。 |
建议业务系统管理员不具备主机操作系统管理员权限。 |
8 |
敏感目录和文件权限管理策略 |
使用ls -l,查看/etc/passwd、/etc/shadow、/etc/group等文件或目录权限。 |
/etc/passwd 644 /etc/shadow 000 /etc/group 644 |
建议对主机操作系统的目录、文件进行权限管理,避免普通账号修改、写入系统敏感目录和文件。参考配置: chmod 644 /etc/passwd chmod 000 /etc/shadow chmod 644 /etc/group |
9 |
缺省权限设置策略 |
umask |
umask值为027或077。 |
建议控制用户缺省访问权限,在创建新文件或目录时应屏蔽掉新文件或目录不应有的访问权限,防止同属于该组的其它用户及别的组的用户修改该用户的文件或更高限制。参考配置: 在/etc/profile中设置umask值,但具体看Linux的发行版本。 使用命令“vi /etc/profile”修改配置文件,添加行“umask 027”,即新创建的文件属主读写执行权限,同组用户读和执行权限,其他用户无权限。 source /etc/profile #使其立即生效。 |
10 |
账号锁定策略 |
查看配置文件/etc/pam.d/system-auth。 |
/etc/pam.d/system-auth文件中存在类似配置auth required pam_tally2.so deny=6 unlock_time=一定时间 注:输错密码6次锁定一定时间。 |
建议在/etc/pam.d/system-auth文件内容中添加如下配置auth required pam_tally2.so deny=6 unlock_time=一定时间 |
11 |
时钟同步策略 |
查看配置文件/etc/chrony.conf |
存在类似配置“server ntp服务器地址”。 |
建议配置时钟同步服务,与ntp服务器时间同步。参考配置: 以root账号登录系统,/etc/chrony.conf文件中配置ntp服务器。 保存退出后,执行开机自启动命令。 #chkconfig xntpd on 利用date命令查看系统当前时间,与监控终端时间比较,若相差超过1000s,利用ntpdate命令与时间服务器强制同步。 #ntpdate x.x.x.x 配置完成后,启动ntp服务。 #/etc/init.d/xntpd start |
12 |
日志审计策略 |
1.查看配置文件/etc/rsyslog.conf; 2.查看系统日志cat /var/log/messages; 查看安全日志cat /var/log/secure; 查看登录日志last -f /var/log/wtmp。 |
1.存在类似配置.info;mail.none;authpriv.none;cron.none /var/log/messages authpriv. /var/log/secure . @@192.168.0.1:10514 2.日志文件均存有日志。 |
建议设置审计策略。参考配置如下: vi /etc/rsyslog.conf #编辑配置文件 .info;mail.none;authpriv.none;cron.none /var/log/messages #记录所有日志类型的info级别以及大于info级别的信息到/var/log/messages,但mail邮件信息,authpriv验证方面信息和cron时间任务相关信息除外 authpriv. /var/log/secure #authpriv验证相关的所有信息存放在/var/log/secure . @@日志服务器IP:端口 #配置日志服务器及端口,@@表示通过TCP协议发送,@表示通过udp协议发送 注:部分系统可能使用syslog-ng日志,配置文件为:/etc/syslog-ng/syslog-ng.conf。 |
13 |
关闭无关服务、不必要端口 |
1.who -r #查看当前init级别 chkconfig --list #查看所有服务状态 建议关闭以下服务:telnet,shell, login, exec, talk, ntalk, imap, pop-2, pop-3, finger, auth,Anancron,Cups,Gpm,Isdn,Kudzu,Pcmcia,Rhnsd 2.netstat -an | grep “端口” #查看某一端口状态 建议关闭以下端口21、23、69 |
不存在无关服务、不必要的端口。 |
建议梳理开启的inetd服务,与有关人员进行确认,关闭无关服务、不必要端口。参考配置: chkconfig --level <init级别> <服务名> on|off|reset #设置服务在init级别下开机是否启动 注:关闭服务内容需与相关人员进行确认。 |
14 |
最小安装策略 |
rpm -qa yum list installed 查看已安装软件包。 |
不存在多余组件。 |
建议按照“最小安装”的原则,仅安装需要的组件,卸载多余组件。参考配置: rpm -e [软件包名称] #卸载已安装软件包 |
15 |
登录超时策略 |
查看配置文件/etc/profile中TMOUT参数。 |
根据实际应用设置TMOUT合理数值 |
建议设置合理的登录超时时间。参考配置: vi /etc/profile #编辑配置文件 按i键进入编辑模式,修改或添加“TMOUT=***”,修改完后,按esc键退出编辑模式,按shift+:键,输入wq保存退出。 |
16 |
远程登录IP地址限制策略 |
查看配置文件/etc/ssh/sshd_config。 |
AllowUsers 账号@IP |
建议编辑/etc/ssh/sshd_config配置文件,设置AllowUsers选项。参考配置: vi /etc/ssh/sshd_config #编辑文件AllowUsers 账号@IP #根据实际添加账号、IP service sshd restart #重启ssd服务 |
17 |
防火墙策略 |
systemctl status firewalld查看Active参数,active(running)是开启,inactive(dead)是关闭。 |
Active值为active(running)。 |
建议开启主机操作系统自带防火墙,并根据业务需要限定允许访问网络的应用程序。参考配置: systemctl start firewalld.service #开启防火墙服务 |