最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
系统安全加固如何清理系统中长期未使用的僵尸账号
时间:2026-08-27 19:47:47 编辑:袖梨 来源:一聚教程网
清理僵尸账号需识别、处置、验证闭环:识别空口令、UID=0非root、90天未登录账号;优先passwd -l锁定,慎用userdel -r删除;验证需重检系统文件及服务配置,并建立lastlog巡检机制。
清理长期未使用的僵尸账号,核心是识别 + 锁定/删除 + 验证闭环,不能只删不查、也不能只查不处置。
识别系统中潜在的僵尸账号
僵尸账号通常指创建后从未登录、长期无活动、或已离职人员遗留但未注销的账号。重点排查三类情况:
-
空口令账号:执行
awk -F: '($2=="")' /etc/shadow,输出结果即为无密码账户,属高危项,必须立即处理; -
UID为0的非root账号:执行
awk -F: '($3==0)' /etc/passwd,确认是否只有root:x:0:0:一行,若存在其他UID=0用户(如admin:x:0:0:),需立即核查并删除; -
长期未登录账号:使用
lastlog -b 90查看90天内未登录的用户列表,结合业务实际(如运维策略要求账号90天未用即冻结),筛选出待清理对象。
安全处置僵尸账号的两种方式
对确认无业务用途的账号,优先锁定而非直接删除,保留审计线索:
-
锁定账号(推荐):执行
passwd -l username,该操作会在/etc/shadow中密码字段前加!,使账号无法登录,但家目录、历史记录等完整保留; -
彻底删除(谨慎):执行
userdel -r username(-r同时删除家目录和邮件池),仅适用于已确认无任何关联服务、定时任务、SSH密钥或数据库权限的账号; - 注意:不要用
userdel username(不带-r),否则残留家目录可能被后续同名账号复用,造成权限混淆。
验证清理效果与防止反弹
处置完成后,必须交叉验证,避免遗漏或误操作:
- 再次运行
awk -F: '($2=="")' /etc/shadow和awk -F: '($3==0)' /etc/passwd,确保输出为空; - 检查关键服务配置文件(如
/etc/sudoers、/etc/ssh/sshd_config、应用级白名单),确认无僵尸账号残留的权限配置; - 建立常态化机制:将
lastlog -b 60 | grep -v "Never"加入每日巡检脚本,配合企业AD/LDAP账号生命周期管理策略,实现自动预警+人工复核。
不复杂但容易忽略——真正有效的加固,不在一次清理,而在让僵尸账号“生不出来、活不长久、露头就灭”。