当前位置: 首页 > news >正文

Linux服务器安全配置基线

基线要求:

安全类别

检查项

检查要求

检查步骤

备注

账户及口令安全

1.1 检查是否设置口令生存周期

应配置口令生存周期,密码最长使用期限应小于等于90天,密码最短使用期限应非0。

执行:cat /etc/login.defs,检查是否配置了以下参数。
PASS_MAX_DAYS 配置项决定密码最长使用期限;
PASS_MIN_DAYS 配置项决定密码最短使用期限;
要求:PASS_MAX_DAYS为小于等于90。
           PASS_MIN_DAYS为非0。

针对程序帐号之类的不能完全使用上述策略的帐号口令应予以原因说明。

1.2 检查是否设置口令复杂度策略

最短密码长度8个字符,启用本机组策略中密码必须符合复杂性要求的策略。即密码至少包含以下四种类别的字符中的三种:
·英语大写字母 A, B, C, … Z
·英语小写字母 a, b, c, … z
·西方阿拉伯数字 0, 1, 2, … 9
·非字母数字字符,如标点符号,@, #, $, %, &, *等

1、执行:cat /etc/login.defs,检查是否配置了以下参数。
     PASS_MIN_LEN 配置项决定密码最小长度。
     要求:PASS_MIN_LEN为8。
2、执行:cat /etc/pam.d/system-auth,检查是否配置了以下参数。
password requisite pam_cracklib.so minlen=8 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
或者为pam_pwquality.so模块,最早之前使用的是 pam_cracklib.so ,后来改成 pam_pwquality.so 这个模块,但此模块完全兼容于 pam_cracklib.so
minlen 配置项决定了新密码最短长度。
ucredit 配置项限定了新密码中至少有多少个大写字符。
lcredit 配置项限定了新密码中至少有多少个小写字符。
dcredit 配置项限定了新密码中至少有多少个数字。
ocredit 配置项限定了新密码中至少有多少个其他字符。

针对程序帐号之类的不能完全使用上述策略的帐号口令应予以原因说明。

1.3 检查是否设置口令失效提示

应设置口令在失效前7天进行提示。

执行:cat /etc/login.defs,检查是否配置了以下参数。
PASS_WARN_AGE 配置项决定密码到期提醒时间。
要求:PASS_WARN_AGE为7。

针对程序帐号之类的不能完全使用上述策略的帐号口令应予以原因说明。

1.4 检查是否设置口令重复使用次数

不能复用近期使用过的5个密码

执行:cat /etc/pam.d/system-auth以及cat /etc/pam.d/passwd,检查是否配置了以下参数。
   password required pam_unix.so remember=5
   remember 指新密码不能和之前的5个密码相同。
要求:remember为5


 

1.5 检查是否存在空口令账号

应不存在空口令的账号。

执行:awk -F: '($2 == "") { print $1 }' /etc/shadow,检查是否有输出账号,若有输出则该账号为空口令账号。


 

1.6 检查除root账户以外是否存在uid为0的账户

uid为0的账户应只有root。

执行:awk -F: '($3 == 0) { print $1 }' /etc/passwd,检查是否输出条目是否只有root。


 

1.7 检查是否删除或锁定无用账户

应删除或锁定与设备运行、维护等工作无关的账号。需锁定daemon、bin、sys、nuucp、lpd、imnadm、ipsec、ldap、nobody、snapp、invscout、Adm、lp、sync、shutdown、halt、news、uucp、operator、games等系统默认账户

1、执行:cat /etc/shadow,检查无用账户。
2、执行:passwd -l username,锁定无用账户。
要求:锁定的用户为daemon、bin、sys、nuucp、lpd、imnadm、ipsec、ldap、nobody、snapp、invscout、Adm、lp、sync、shutdown、halt、news、uucp、operator、games等系统默认账户。
可通过passwd -S username查看用户状态。
3、执行:awk -F: '($2 == "*") { print $1 }' /etc/shadow,查看已锁定的账户。
4、执行:awk -F: '($2 == "!!") { print $1 }' /etc/shadow,查看密码已过期的账户,判断其是否需要删除。

若需系统默认账号登录系统,需管理员提供设置密码的原因。

1.8 检查是否有登录失败处理功能

应启用登录失败处理功能,在登录失败5次后,锁定账户10分钟,包括root账户。

1、执行:cat /etc/pam.d/system-auth以及cat /etc/pam.d/sshd,检查第一行是否配置了以下参数。
   auth required pam_tally2.so onerr=fail deny=5 unlock_time=600 even_deny_root root_unlock_time=600
deny  表示最大几次认证错误,如果超出此错误,将执行后面的策略。如锁定N秒,如果后面没有其他策略指定时,默认永远锁定,除非手动解锁。
onerr 表示出现异常时的处理。
unlock_time 表示认证被锁后,多长时间自动解锁用户。
even_deny_root 指root用户在认证出错时,一样被锁定。
root_unlock_time 指root用户在失败时,锁定多长时间。
要求:onerr 为fail
      deny 为5
      ulock_time 为600秒
      root_ulock_time 为600秒
2、执行 cat /etc/ssh/sshd_config,检查以下参数。
MaxAuthTries 决定进行SSH登录时的最大尝试次数。
要求:MaxAuthTries为5


 

1.9 检查是否禁用root用户远程ssh登录

http://www.lryc.cn/news/279685.html

相关文章:

  • Kafka外网访问
  • Vant2组件库van-list+Toast下拉加载滚动条回顶问题
  • 使用 C++/WinRT 创作 API
  • C#写windows服务,实现把检测软件崩溃工具写成服务 自动运行
  • QT中线程的退出分析
  • 进程的创建
  • day-08 构造限制重复的字符串
  • Java锁的分类
  • SQL-分组查询
  • HBase 基础
  • android 11添加系统api供app使用
  • im6ull学习总结(三-3)freetype
  • 基于OpenCV的谷物颗粒识别
  • Aloha 机械臂的学习记录3——AWE:Pycharm运行代码记录
  • 开源协议概览
  • 分布式缓存
  • BSC/平衡记分卡
  • 论文阅读_训练大模型用于角色扮演
  • v-if控制div内容显示,克隆这个div但是v-if没有效果
  • flutter的状态管理学习
  • 开源免费虚拟化KVM的部署及其虚拟机资源变更、快照、克隆等常见运维操作
  • 阿里云git clone超时报错解决方法
  • 力扣刷题-二叉树-合并二叉树
  • 了解JavaScript 加密、混淆和生成签名
  • Go语言的指针(深度解析)
  • HTB-SAU
  • AI创新之美:AIGC探讨2024年春晚吉祥物龙辰辰的AI绘画之独特观点
  • Linux的SSH服务
  • MySQL连续案例续集
  • 【STM32读取HX711的函数】