Linux 密码策略配置

14 篇文章 3 订阅

Linux 密码策略配置

环境 Centos 7.9

#!/bin/bash

#密码过期时间(天)
outDay=90
#禁止使用最近的五个旧密码
remember=5

#至少包含一个大写字母
ucredit=-1 
#至少包含两个小写字母
lcredit=-2 
#至少包含一个数字
dcredit=-1 
#至少包含一个标点符号
ocredit=-1



#禁止使用旧密码
comm=$(cat /etc/pam.d/system-auth |grep "password    sufficient    pamunix.so" |wc -l)
if [ $comm -gt 0 ]
then
	sed -i s/^'password    sufficient    pamunix.so'.*$/'password sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember='$remember/g /etc/pam.d/system-auth
else
	echo "password    sufficient    pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=$remember" >> /etc/pam.d/system-auth
fi

#设置密码复杂度、最短密码长度
comm=$(cat /etc/pam.d/system-auth |grep "password    requisite     pam_cracklib.so" |wc -l)
if [ $comm -gt 0 ]
then
	sed -i s/^'password    requisite     pam_cracklib.so'.*$/'password requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit='$ucredit' lcredit='$lcredit' dcredit='$dcredit' ocredit='$ocredit''/g /etc/pam.d/system-auth
else
	echo "password    requisite     pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=$ucredit lcredit=$lcredit dcredit=$dcredit ocredit=$ocredit" >> /etc/pam.d/system-auth
fi

#设置密码过期时间
comm=$(cat /etc/login.defs |grep "PASS_MAX_DAYS" |wc -l)
if [ $comm -gt 0 ]
then
	sed -i s/^'PASS_MAX_DAYS'.*$/'PASS_MAX_DAYS '$outDay''/g /etc/login.defs
else
	echo "PASS_MAX_DAYS" >> /etc/login.defs
fi
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dan淡淡的心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值