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. 1.消息队列(queue)

    版权声明:本文为博主原创文章,未经博主允许不得转载.https://www.cnblogs.com/Dana-gx/p/9724545.html 一.基本概念 IPC:Linux下的进程通信.包括6种 ...

  2. Zabbix 常用术语

    Zabbix 常用术语 1.主机(host) 一台你想监控的网络设备,用IP或域名表示 2.主机组(host group) 主机的逻辑组;它包含主机和模板.-个主机组里的主机和模板之间并没有任何直接的 ...

  3. MyBatis 动态SQL(十二)

    动态条件查询 以下是我们数据库表 tb_user 的记录: 假设现在有一个需求,就是根据输入的用户年龄和性别,查询用户的记录信息.你可能会说,这太简单了,脑袋里立马蹦出如下的 SQL 语句: SELE ...

  4. MVC RadioButton控件

    @Html.RadioButtonFor(m => m.IfValid, 1, new { @id = "radio1", @name = "rdolstState ...

  5. hive的排序 order by和sort by

    在算法中,各个排序算法的复杂度都比较高,正常情况下为O (nlogn) ,所以当数据量特别大的时候,对数组进行排序消耗都很大. 因为hive的计算引擎MapReduce是分布式系统, 利用分布式的特点 ...

  6. FreeBSD 13.0 正式版发布,已经可以下载

    请访问原文链接:https://sysin.org/article/freebsd-13/,查看最新版.原创作品,转载请保留出处. 根据 FreeBSD 13.0 官方发布计划,4 月 9 日 13. ...

  7. 五种开源API网关实现组件对比

    五种开源API网关实现组件对比     API 网关一些实现 使用一个组件时,尤其是这种比较流行的架构,组件肯定存在开源的,我们不必自己去从零开始去实现一个网关,自己开发一个网关的工作量是相当可观的, ...

  8. celery 简单示例

    目录结构 第一步  celery_task 里面的celery文件 import time from celery import Celery # celery from celery.schedul ...

  9. 记录: 解决 pycurl: libcurl link-time ssl backend (openssl) is different from compile-time ssl backend (none/other)

    - Mac 不知道怎么操作的 rm 了 usr/local/ 里面的某些文件, 导致一直出现 pycurl: libcurl link-time ssl backend (openssl) is di ...

  10. Java日期时间API系列39-----中文语句中的时间语义识别(time NLP 输入一句话,能识别出话里的时间)原理分析

    NLP (Natural Language Processing) 是人工智能(AI)的一个子领域.自然语言是人类智慧的结晶,自然语言处理是人工智能中最为困难的问题之一(来自百度百科). 其中中文更是 ...