目录
Linux安全加固——账户管理
1、口令锁定策略
查看配置文件:more /etc/pam.d/password-auth
auth required pam_tally2.so deny=5 onerr=fail unlock_time=300 even_deny_root=5 root_unlock_time=600
普通账户五次密码错误,300s后重试。root账户五次密码错误后,300s后重试
pam_tally2 -u 查看因为系统密码策略而被锁定的账户
pam_tally2 -u king -r 解除king这个账户因为账户策略被锁定的状态
PAM通过提供一些动态链接库的一套统一的API,将系统提供的服务和该服务的认证方式分开,使得系统管理员可以灵活的根据需要给不同的服务配置不同的认证方式而无需更改服务程序,同时也便于向系统中添加新的认证手段。
2、口令生存期:
查看配置文件:more /etc/login.defs
编辑:PASS_MAX_DAYS 90(口令生存时间) PASS_WARN_AGE 7(过期警告天数,就是最后七天警告)
对文件编辑后,只对之后创建的用户生效,在这之前创建的用户不生效
执行命令:chage -M 90 -W 7 king 修改已有用户king的口令生存期和过期警告天数
3、口令复杂度:
执行命令:grep -E “^minlen|^minclass” /etc/security/pwquality.conf (查看是否有返回结果)
authconfig –passminlen=8 –passminclass=3 –update
passminlen密码长度,passminclass密码种类:数字,字母,特殊字符三项
chage -d 0 king 强制指定的用户下次登录修改密码
4、检查密码重用是否受限制
查看配置文件:cat /etc/pam.d/system-auth
检查password sufficient pam_unix.so 这项是否有remember参数(已经使用过的密码会保存在/etc/security/opasswd 下面)
Linux安全加固-服务管理
1、检查是否存在除root用户之外的UID为0的用户
执行命令:awk -F:'($3==0){print $1}’ /etc/passwd 查看是否存在UID为0的用户
如果存在则将用户删除或者更改用户UID:usermod -u uid username 为用户重新分配UID
2、禁止SSH空密码用户登录
more /etc/ssh/sshd_config 查看PermitEmptyPasswords配置情况,设置为no即为禁止
systemctl restart sshd重启服务使配置生效
3、设置SSH多次登录失败后锁定用户
执行命令查看:more /etc/pam.d/sshd 查看是否存在auth required pam_tally2.so deny=5 unlock_time=300的内容如果要对root也进行限制则在后面加上even_deny_root=5 root_unlock_time=300即可
限制root用户远程登录
执行命令查看:more /etc/ssh/sshd_config 查看PermitRootLogin参数的值
重启服务使其立即生效:systemctl restart sshd
4、检查ssh使用的端口
执行命令查看:more /etc/ssh/sshd_config 查看Port参数的值
执行命令:semanage port -a -t ssh_port_t -p tcp 修改后的端口号:(将修改后的端口添加到SELinux开放给ssh使用的端口)
执行命令:firewall -cmd –zone=pulic –add-port=ssh 端口号/tcp –permanent:防火墙放行刚 刚修改过的ssh端口号。
执行命令:systemctl restart sshd : systemctl restart firewalld:重启ssh和防火墙,使配置生效
5、设置登录超时时自动注销
查看配置:more /etc/profile 在后面添加export TMOUT=180
180s后无操作自动注销
Linux安全加固-权限管理
1、检查默认umask值
umask值:拿走对应的权限(文件默认权限644,目录默认权限755)
umask值在/etc/profile文件中修改
source /etc/profile
2、检查重要目录和文件的权限设置
/etc/passwd /etc/shadow /etc/gshadow /etc/group /etc/hosts.deny /etc/hosts.allow /etc/services /etc/ssh/sshd_config
3、限制可以su为root的用户
执行命令:more /etc/pam.d/su 找到auth required pam_wheel.so use_uid
将需要su为root的用户使用命令:usermod -G wheel username 加入wheel组,该用户即可su为root用户。
如果需要将某个用户移除wheel组,可使用命令:gpasswd – d username wheel
Linux安全加固-日志管理
1、检查rsyslog服务启用状况以及对登录事件的记录执行命令:more /etc/rsyslog.conf查看authpriv的值
/etc/rsyslog.conf文件中每一行代表一跳设置值,每一条设置值的语法为:消息类型 执行动作
“消息类型”指定哪些消息需要记录,“执行动作”则告诉系统日志服务该如何处理这些消息
“消息类型”格式:消息来源.优先级 的格式指定消息的种类
执行命令:systemctl stauts rsyslog.service 查看rsyslog.service是否启动
执行命令:systemctl enable rsyslog 添加开机自启动
执行命令:systemctl start rsyslog 启动服务
执行命令:vim /etc/rsyslog.conf查看authpriv值,将其设置为authpriv.* /var/log/secure(将authpriv的任何级别的信息记录到var/log/secure文件中)
执行命令:systemctl restart rsyslog
启用记录定时任务行为日志功能,并将其设置为corn.* /var/log/cron
2、查看SSH LogLevel设置是否为INFO
执行命令:vim etc/ssh/sshd_config 找到LogLevel并设置其级别为INFO
重启ssh服务使其生效:systemctl restart sshd
3、是否将 /var/log/messages文件设置为只可追加(该文件用来存放系统日志信息的文件,不允许用户随便修改查看,需要加固)
lsattr /var/log/messages 查看隐藏属性是否含有a属性
今天的文章Linux安全加固分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/23711.html