1、密码过期策略

# vim /etc/login.defs

PASS_MAX_DAYS 99999

# 一个密码最长可以使用的天数;

PASS_MIN_DAYS 0

# 更换密码的最小天数;

PASS_MIN_LEN 5

# 密码的最小长度;

PASS_WARN_AGE 7

# 密码失效前提前多少天数开始警告;

2、PASS_MIN_LEN 5

# 该配置不会生效,需要在/etc/pam.d/system-auth配置文件中添加minlen=13(密码最小长度为12)密码长度策略

# password requisite pam_pwquality.so try_first_pass local_users_only retry=3 minlen=13 authtok_type=

3、说明

# /etc/login.defs和/etc/pam.d/system-auth配置文件修改后对之前创建的用户不生效,对以后创建的用户生效。

# 对之前创建的用户修改密码过期策略的可以使用chage命令,参数如下:

# chage --help

用法:chage [选项] 登录

选项:

-d, --lastday 最近日期 将最近一次密码设置时间设为“最近日期”

-E, --expiredate 过期日期 将帐户过期时间设为“过期日期”

-h, --help 显示此帮助信息并推出

-I, --inactive INACITVE 过期 INACTIVE 天数后,设定密码为失效状态

-l, --list 显示帐户年龄信息

-m, --mindays 最小天数 将两次改变密码之间相距的最小天数设为“最小天数”

-M, --maxdays 最大天数 将两次改变密码之间相距的最大天数设为“最大天数”

-R, --root CHROOT_DIR chroot 到的目录

-W, --warndays 警告天数 将过期警告天数设为“警告天数”

# 密码过期后,登录linux需要输旧密码并强制更新密码

# 使用root用户为普通用户更新密码时可以不遵守密码最小长度的策略,但是普通用户更新自身密码时会遵循。

4 示例

(1) root用户密码默认过期策略

# chage -l root

最近一次密码修改时间 :从不

密码过期时间 :从不

密码失效时间 :从不

帐户过期时间 :从不

两次改变密码之间相距的最小天数 :0

两次改变密码之间相距的最大天数 :99999

在密码过期之前警告的天数 :7

(2) 更改密码过期策略后,新建test用户,test用户的密码过期策略

1) 修改/etc/login.defs配置文件

# vim /etc/login.defs

PASS_MAX_DAYS 42

PASS_MIN_DAYS 0

PASS_MIN_LEN 12

PASS_WARN_AGE 30

2) 修改/etc/pam.d/system-auth配置文件

# vim /etc/pam.d/system-auth

password requisite pam_pwquality.so try_first_pass local_users_only retry=3 minlen=13 authtok_type=

3) 创建test用户并查看密码过期策略

# useradd test

# echo "Linux@2020" | passwd --stdin test

更改用户 test 的密码 。

passwd:所有的身份验证令牌已经成功更新。

# chage -l test

最近一次密码修改时间 :10月 13, 2020

密码过期时间 :11月 24, 2020

密码失效时间 :从不

帐户过期时间 :从不

两次改变密码之间相距的最小天数 :0

两次改变密码之间相距的最大天数 :42

在密码过期之前警告的天数 :30

# su - test

上一次登录:二 10月 13 16:00:26 CST 2020pts/0 上

$ passwd

更改用户 test 的密码 。

为 test 更改 STRESS 密码。

(当前)UNIX 密码:

新的 密码:

无效的密码: 密码少于 12 个字符

新的 密码:

无效的密码: 密码少于 12 个字符

新的 密码:

无效的密码: 密码少于 12 个字符

passwd: 已经超出服务重试的最多次数

$

linux密码策略的更多相关文章

  1. Linux密码策略-密码长度-密码复杂度

    1.设置密码长度 vim /etc/pam.d/system-authpassword requisite pam_cracklib.so try_first_pass retry=3 minlen= ...

  2. Linux密码策略--设置随机密码

    #!/bin/bash # @Author: HanWei # @Date: -- :: # @Last Modified by: HanWei # @Last Modified -- :: # @E ...

  3. Linux用户密码策略

    使用Linux快三年了,从未想过Linux用户密码策略,从未把一本Linux的书从头看到尾(上学时的教材除外),故不知书上有无介绍,直到最近参加公司的信息安全稽核会议后才开始考虑Linux用户密码策略 ...

  4. Linux(Unix)密码策略问题导致root密码不能修改

    Linux(Unix)密码策略问题导致root密码不能修改 发布时间:  2016-01-19 浏览次数:  1034 下载次数:  5 用户修改了密码配置文件,导致root账户修改密码时报如下错误: ...

  5. 关于linux系统密码策略的设置

    由于工作需要最近需要将公司的多台linux服务器进行密码策略的设置,主要内容是增加密码复杂度. 操作步骤如下,不会的同学可以参考: 操作前需要掌握如下几个简单的知识点:(其实不掌握也行,不过学学没坏处 ...

  6. Linux环境下MySQL的安装、密码策略、忘记密码后的破解及用户授权等。

    mysql安装.用户密码.密码策略.授权用户等(mysql5.7版本) 1.mysql安装后相关目录与文件: 主配置文件: /etc/my.cnf 数据库目录: /var/lib/mysql/ 默认端 ...

  7. 略过 Mysql 5.7的密码策略

    之前从mysql 5.6的时候,mysql 还没有密码策略这个东东,所以我们每个用户的密码都可以随心所欲地设置,什么123 ,abc 这些,甚至你搞个空格,那也是OK的. 而mysql.user 表里 ...

  8. pam密码策略

    PAM 的使用历史 PAM 是关注如何为服务验证用户的 API.在使用 PAM 之前,诸如 login(和 rlogin.telnet.rsh)之类的应用程序在 /etc/passwd 中查找用户名, ...

  9. mysql安装密码策略插件

    https://blog.csdn.net/kk185800961/article/details/79447754 注意linux安装密码策略的插件 validate_password.so

随机推荐

  1. 【Mysql】数据库索引,百万数据测试索引效果

    Mysql官方对索引的定义是:索引(index)是帮助Mysql高效获取数据的数据结构.进而,我们可以知道索引的本质是数据结构. 一.索引的分类 主键索引:也就是我们常见的 PRIMARY KEY,只 ...

  2. 【例 3】 修改 bols 文件的 atime 和 mtime。 [root@localhost ~]# touch -d "2017-05-04 15:44" bols

    Linux touch命令:创建文件及修改文件时间戳 < Linux删除空目录(rmdir命令)Linux在文件之间建立软/硬链接(ln命令) > <Linux就该这么学>是一 ...

  3. centos国内镜像下载

    国内镜像下载 http://mirrors.aliyun.com/centos/6/isos/x86_64/ 如果需要下载centos 7 版本进入对应7的/isos/x86_64/ 选择minima ...

  4. Linux用户登录查看命令总结 - w,who,last,lastlog

    Linux用户登录查看命令总结 - w,who,last,lastlog linux shell 747 次阅读  ·  读完需要 15 分钟 0 1. 查看登录用户信息 who -H 命令输出 NA ...

  5. 查询登录信息 w, who*, id, tty, last, finger

    查询登录信息 w, who*, id, tty, last, finger Wavky2016.12.14 16:19:37字数 813阅读 85w [options] [user...]显示所有已登 ...

  6. 继承(extends), 多态 , 抽象(abstract)接口() 易混难点解析

    特性 java是单继承的,一个类直接继承的父类只能有唯一的一个 java中父类可以有多个子类 Object是所有类的父类,一个类没有父类则默认继承Object; 继承中的重写 子类重写方法访问权限不能 ...

  7. Could not get JDBC Connection排查

    最近在维护的一个比较旧的项目,发现总是隔一段时间JDBC就报错: Could not get JDBC Connection; nested exception is org.apache.commo ...

  8. 08.ElementUI 2.X 源码学习:源码剖析之工程化(三)

    0x.00 前言 项目工程化系列文章链接如下,推荐按照顺序阅读文章 . 1️⃣ 源码剖析之工程化(一):项目概览.package.json.npm script 2️⃣ 源码剖析之工程化(二):项目构 ...

  9. NVIDIA GPU上的Tensor线性代数

    NVIDIA GPU上的Tensor线性代数 cuTENSOR库是同类中第一个GPU加速的张量线性代数库,提供张量收缩,归约和逐元素运算.cuTENSOR用于加速在深度学习训练和推理,计算机视觉,量子 ...

  10. .NET平台系列23:.NET Core/.NET5/.NET6 和 .NET Framework 的选择建议

    系列目录     [已更新最新开发文章,点击查看详细] 有两种支持的 .NET 实现可用于生成服务器端应用: .NET Framework .NET Core/5+,包括 .NET Core..NET ...