一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

系统安全加固如何清理系统中长期未使用的僵尸账号

时间:2026-08-27 19:47:47 编辑:袖梨 来源:一聚教程网

清理僵尸账号需识别、处置、验证闭环:识别空口令、UID=0非root、90天未登录账号;优先passwd -l锁定,慎用userdel -r删除;验证需重检系统文件及服务配置,并建立lastlog巡检机制。

清理长期未使用的僵尸账号,核心是识别 + 锁定/删除 + 验证闭环,不能只删不查、也不能只查不处置。

识别系统中潜在的僵尸账号

僵尸账号通常指创建后从未登录、长期无活动、或已离职人员遗留但未注销的账号。重点排查三类情况:

  1. 空口令账号:执行 awk -F: '($2=="")' /etc/shadow,输出结果即为无密码账户,属高危项,必须立即处理;
  2. UID为0的非root账号:执行 awk -F: '($3==0)' /etc/passwd,确认是否只有root:x:0:0:一行,若存在其他UID=0用户(如admin:x:0:0:),需立即核查并删除;
  3. 长期未登录账号:使用 lastlog -b 90 查看90天内未登录的用户列表,结合业务实际(如运维策略要求账号90天未用即冻结),筛选出待清理对象。

安全处置僵尸账号的两种方式

对确认无业务用途的账号,优先锁定而非直接删除,保留审计线索:

  1. 锁定账号(推荐):执行 passwd -l username,该操作会在/etc/shadow中密码字段前加!,使账号无法登录,但家目录、历史记录等完整保留;
  2. 彻底删除(谨慎):执行 userdel -r username-r同时删除家目录和邮件池),仅适用于已确认无任何关联服务、定时任务、SSH密钥或数据库权限的账号;
  3. 注意:不要用userdel username(不带-r),否则残留家目录可能被后续同名账号复用,造成权限混淆。

验证清理效果与防止反弹

处置完成后,必须交叉验证,避免遗漏或误操作:

  1. 再次运行 awk -F: '($2=="")' /etc/shadowawk -F: '($3==0)' /etc/passwd,确保输出为空;
  2. 检查关键服务配置文件(如/etc/sudoers/etc/ssh/sshd_config、应用级白名单),确认无僵尸账号残留的权限配置;
  3. 建立常态化机制:将lastlog -b 60 | grep -v "Never"加入每日巡检脚本,配合企业AD/LDAP账号生命周期管理策略,实现自动预警+人工复核。

不复杂但容易忽略——真正有效的加固,不在一次清理,而在让僵尸账号“生不出来、活不长久、露头就灭”。

热门栏目