1、检查是否设置SSH登录前警告Banner
理论依据:
横幅被用来警告用户连接特定站点的策略。为你的网站提供适当的警告横幅。
配置要求:
SSH登录时显示警告信息,在登录成功前不泄漏服务器信息。
检查步骤
查看文件/etc/ssh/sshd_config,检查是否存在如下配置:banner <file_path>,且<file_path>内容不为空。
合规标准
ssh服务器未启用或者服务启用但设置了ssh banner警示信息则合规,否则不合规。
加固方案
1、编辑文件/etc/ssh/sshd_config文件,修改Banner参数的值如下(如不存在则新增):
Banner /etc/ssh_banner
2、执行如下命令创建ssh banner警示信息文件:
touch /etc/ssh_banner
chmod 644 /etc/ssh_banner
echo "Authorized only. All activity will be monitored and reported" > /etc/ssh_banner
可根据实际需要修改该文件的内容。
3、重启sshd服务:
systemctl restart sshd
登录测试
修改前
修改后
2、检查密码重复使用次数限制
配置要求:
对于采用静态口令认证技术的设备,应配置设备,使用户不能重复使用最近5次(含5次)内已使用的口令。
检查步骤
查看文件/etc/pam.d/system-auth,是否有配置口令重复使用次数限
合规标准
口令重复使用次数限制不小于5次则合规,否则不合规。
加固方案
1、配置文件备份
cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth.bak
2、创建文件/etc/security/opasswd用于存储旧密码,并设置权限。
touch /etc/security/opasswd
chown root:root /etc/security/opasswd
chmod 600 /etc/security/opasswd
3、编辑文件/etc/pam.d/system-auth,找到类似行password sufficient pam_unix.so,在行末尾增加remember=5,中间以空格隔开.如果没有则新增。
password sufficient pam_unix.so remember=5
3、检查系统是否禁用Ctrl+Alt+Delete组合键
介绍:
Linux默认允许任何人按下Ctrl+Alt+Del来重启系统。但是在生产环境中,应该停用按下Ctrl-Alt-Del 重启系统的功能。
检查步骤
查看文件找Ctrl+Alt+Del组合键配置:
cat /etc/inittab //提示在/usr/lib/systemd/system/ctrl-alt-del.target中配置
删除ctrl-alt-del.target文件
rm /usr/lib/systemd/system/ctrl-alt-del.target
执行init q
合规标准
禁用了使用组合键Ctrl+Alt+Delete重启系统则合规,否则不合规。
加固方案
1.备份文件: cp /usr/lib/systemd/system/ctrl-alt-del.target /usr/lib/systemd/system/ctrl-alt-del.target.bat
2.删除文件: rm /usr/lib/systemd/system/ctrl-alt-del.target
3.执行命令 init q
注:如果要开启这个功能,方法就是ln -s把软链接创建回去(或将备份文件去掉.bat后缀),再init q 重新reload一下配置文件。 ln -s /usr/lib/systemd/system/reboot.target /usr/lib/systemd/system/ctrl-alt-del.target
4、检查是否按用户分配账号
配置要求:
应按照不同的用户分配不同的账号,避免不同用户间共享账号,避免用户账号和设备间通信使用的账号共享。
检查步骤
1、使用如下命令查看文件/etc/login.defs,确认文件中变量UID_MIN和UID_MAX的值:
#grep -v ^# /etc/login.defs |grep "^UID_MIN"|awk '($1="UID_MIN"){print $2}'
#grep -v ^# /etc/login.defs |grep "^UID_MAX"|awk '($1="UID_MAX"){print $2}'
2、使用以下命令查看系统中是否存在用户id>=UID_MIN且<=UID_MAX的用户:
#up_uidmin=`(grep -v ^# /etc/login.defs |grep "^UID_MIN"|awk '($1="UID_MIN"){print $2}')`
#up_uidmax=`(grep -v ^# /etc/login.defs |grep "^UID_MAX"|awk '($1="UID_MAX"){print $2}')`
#echo "users="`cat /etc/passwd|awk -F: '{if( $3>='$up_uidmin' && $3<='$up_uidmax' ) {print $1":"$3}}'`
合规标准
存在用户id>=UID_MIN且<=UID_MAX的用户则合规,否则不合规。
加固方案
创建用户
#useradd username #创建账号
#passwd username #设置密码修改权限
5、检查重要目录或文件权限设置
配置要求:
在设备权限配置能力内,根据用户的业务需要,配置其所需的最小权限。
检查步骤
使用以下命令查看如下文件的权限设置:
#ls -lL /etc/passwd 2>/dev/null
#ls -lL /etc/shadow 2>/dev/null
#ls -lL /etc/group 2>/dev/null
合规标准
1、/etc/passwd文件的权限小于等于644
2、/etc/shadow文件的权限小于等于400
3、/etc/group文件的权限小于等于644
以上条件同时满足则合规,否则不合规。
加固方案
1、赋予用户相关账号文件最小权限
#chmod 644 /etc/passwd
#chmod 400 /etc/shadow
#chmod 644 /etc/group