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无列名注入

    0x00 原理   mysql无列名注入是报错注入的一个变种,前提是已知表名,但是不知道列名,或者只知道部分列名,可通过报错注入拼接查询自身表,当自表被拼接时,由于存在重复属性列,会将列信息报错返回, ...

  2. [DB] MySQL 索引分类

    按数据结构 B树索引 数据位于叶子节点,到任何一个叶子节点的距离相同,一般不超过3-4层 B+树索引:每个叶子节点除了数据还存放前后叶子节点的指针,方便快速检索,是InnoDB采用的索引结构 Hash ...

  3. tar解压某个目录 tar解压某个指定的文件或者文件夹

    tar解压某个目录 tar解压某个指定的文件或者文件夹 发布时间:2017-05-30 来源:服务器之家   1. 先查看压缩文档中有那些文件,如果都不清楚文件内容,然后就直接解压,这个是不可能的 使 ...

  4. tail -n 10 /etc/passwd

    # tail -n 10 /etc/passwdrpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologinchrony:x:992:987::/ ...

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

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

  6. QT学习笔记(一)——Helloworld

    QT学习笔记(一)--Helloworld 一.调试的基本方法: Log调试法 --在代码中加入一定的打印语句 --打印程序状态和关键变量的值 断点调试法: --在开发环境中的对应代码行加上断点 -- ...

  7. 手机POS机

    资质查询 http://www.pbc.gov.cn/zhengwugongkai/127924/128041/2951606/1923625/1923629/d6d180ae/index4.html ...

  8. Go语言常用命令

    查看可用命令 直接在终端中输入 go help 即可显示所有的 go 命令以及相应命令功能简介,主要有下面这些: ·build: 编译包和依赖 ·clean: 移除对象文件 ·doc: 显示包或者符号 ...

  9. 用navigation的大致图

  10. GO学习-(28) Go语言操作influxDB

    Go语言操作influxDB 本文介绍了influxDB时序数据库及Go语言操作influxDB. InfluxDB是一个开源分布式时序.事件和指标数据库.使用Go语言编写,无需外部依赖.其设计目标是 ...