CentOS7 利用Python程序生成sha512加密密码:

[root@localhost ~]# python -c 'import crypt,getpass;pw="zxcvbnm";print(crypt.crypt(pw))'
$6$QCipUn09yISB2Vt1$fq2Tad0xcHng/8rjXG5P8T0NjCw5XuqvEuNZGFGl9Ibk3MM6bqKkMkQztdySSbsdcmynTOtwKAZLSU/KMttbu0

CentOS8 生成sha512加密密码:

[root@localhost ~]# openssl passwd -6 zxcvbnm

linux随机生成一组密码:

[root@localhost ~]# cat /dev/urandom | tr -dc '[:alnum:]' | head -c12
VX8qoAZC3eTn
[root@localhost ~]# cat /dev/urandom | tr -dc '[:alnum:]' | head -c12
nIFtxv6qDmWN
[root@localhost ~]# cat /dev/urandom | tr -dc '[:alnum:]' | head -c12
9djm5P6IfGFP

修改用户密码策略:

chage可以修改用户密码策略

选项:

  • -l:列出用户的详细密码状态;
  • -d 日期:修改 /etc/shadow 文件中指定用户密码信息的第 3 个字段,也就是最后一次修改密码的日期,格式为 YYYY-MM-DD;
  • -m 天数:修改密码最短保留的天数,也就是 /etc/shadow 文件中的第 4 个字段;
  • -M 天数:修改密码的有效期,也就是 /etc/shadow 文件中的第 5 个字段;
  • -W 天数:修改密码到期前的警告天数,也就是 /etc/shadow 文件中的第 6 个字段;
  • -i 天数:修改密码过期后的宽限天数,也就是 /etc/shadow 文件中的第 7 个字段;
  • -E 日期:修改账号失效日期,格式为 YYYY-MM-DD,也就是 /etc/shadow 文件中的第 8 个字段。
查看用户密码状态:
[root@localhost ~]# chage -l yc
Last password change : never
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
修改用户密码策略:
[root@localhost ~]# chage yc
Changing the aging information for yc
Enter the new value, or press ENTER for the default Minimum Password Age [0]: 3
Maximum Password Age [99999]: 42
Last Password Change (YYYY-MM-DD) [-1]: 2021-10-20
Password Expiration Warning [7]: 10
Password Inactive [-1]: 20
Account Expiration Date (YYYY-MM-DD) [-1]: 2022-10-20 [root@localhost ~]# chage -m 3 -M 42 -W 14 -I 7 -E 2021-10-20 yc 查看修改后的用户密码策略:
[root@localhost ~]# chage -l yc
Last password change : Oct 20, 2021
Password expires : Dec 01, 2021
Password inactive : Dec 08, 2021
Account expires : Oct 20, 2021
Minimum number of days between password change : 3
Maximum number of days between password change : 42
Number of days of warning before password expires : 14

设置下一次登录强制重设密码:

[root@localhost ~]# chage -d 0 yc
通过chage命令设置此账号密码创建的日期为 1970 年 1 月 1 日(0 就表示这一天),这样用户登陆后就必须修改密码

linux修改用户密码

注:centos
[root@localhost ~]# echo 12345 | passwd --stdin yc
Changing password for user yc.
passwd: all authentication tokens updated successfully.
注:ubuntu
[root@localhost ~]# echo yc:123456 | chpasswd

Linux密码操作的更多相关文章

  1. Linux之sudo免密码操作

    使用普通用户只需特权命令是需要输入密码,然后在五分钟以内只需命令可以免密码,下面设置免密码操作 系统环境查看 切换至root用户 sudo -i #需要输入密码 修改sudoers文件 #增加一行 y ...

  2. linux常用操作指令

    Linux常用操作指令: 常用指令 ls        显示文件或目录 -l           列出文件详细信息l(list) -a          列出当前目录下所有文件及目录,包括隐藏的a(a ...

  3. rsync实现免密码操作的一种实现方式

    rsync是远程文件同步协议,在linux系统下,操作服务器之间的文件同步,是非常方便高效的. 但是,简单的rsync操作,往往需要和用户交互,需要用户输入密码,这个对于结合应用系统使用,比如Java ...

  4. Linux常用操作练习

    Linux常用操作练习 练习一:安装CentOS 1.设置为1G内存(才有图形界面).10G硬盘 2.分给交换分区2G(4G一下2G,8G-32G分4G-8G) 练习二:安装CentOS迷你版 1.安 ...

  5. 方便john破解linux密码批处理

    Title:方便john破解linux密码批处理 -- 2011-11-23 17:31 自定义文件HASH名和字典名批处理(单一文件): @echo offcolor 0asetlocal enab ...

  6. Linux常见操作

    前面的话 本文将详细介绍Linux常见操作 基本概念 Linux严格区分大小写,所有内容以文件形式保存,包括硬件 Linux没有扩展名的概念,不靠扩展名来区分文件类型.但有一些约定俗成的扩展名 压缩包 ...

  7. SVN的Windows和Linux客户端操作详解

    SVN的Windows和Linux客户端操作详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Windows客户端操作 1.安装SVN客户端 a>.去官网下载svn软件 ...

  8. 连接Linux服务器操作Oracle数据库

    连接Linux服务器操作Oracle数据库   由于项目已经上线,现场的数据库服务器不允许直接用Oracle的客户端plsqldev.exe来连接,只能通过Linux服务器的命令来操作. 以下是用Se ...

  9. 使用John the ripper工具来尝试破解Linux密码

    这篇文章主要介绍了使用John the ripper工具来尝试破解Linux密码的方法,这款工具可能主要被用来破解系统用户的密码以获得文件操作权限,需要的朋友可以参考下 John有别于Hdra之类的工 ...

随机推荐

  1. 「JOISC 2014 Day1」巴士走读

    「JOISC 2014 Day1」巴士走读 将询问离线下来. 从终点出发到起点. 由于在每个点(除了终点)的时间被过来的边固定,因此如果一个点不被新的边更新,是不会发生变化的. 因此可以按照时间顺序, ...

  2. js 利用||和&&赋值小技巧

    感谢原文作者:nayi_224 原文链接:https://blog.csdn.net/nayi_224/article/details/80437329 对于需要返回boolean类型数值的地方,比如 ...

  3. jvm与dvm两种虚拟机的不同

    jvm : java虚拟机 sun dvm:  dalvik虚拟机  google     区别:         1.基于的架构不同,jvm 基于栈架构,栈是位于内存上的一个空间,执行指令操作,需要 ...

  4. JavaScript检查Date对象是否为Invalid Date

    使用Date()构造日期对象,如果传入非日期格式的字符串,仍然能构造出Date对象. 在chrome控制台 >var date = new Date("hello"); &g ...

  5. Java反射使用方法

    //简单的例子public class ReflextionMain { public static void main(String[] args) throws ClassNotFoundExce ...

  6. Ext原码学习之lang-Object.js

    // JavaScript Document (function(){ var TemplateClass = function(){}, ExtObject = Ext.Object = { cha ...

  7. 《Effective Python》笔记——第3章 类与继承

    一.尽量用辅助类来维护程序的状态 如下,用字典存储简单数据 class SimpleGradebook(): def __init__(self): self.__grades = {} def ad ...

  8. 基于Xilinx XCKU115的半高PCIe x8 硬件加速卡

    一.板卡概述 本板卡系我公司自主研发,采用Xilinx公司的XCKU115-3-FLVF1924-E芯片作为主处理器,主要用于FPGA硬件加速.板卡设计满足工业级要求.如下图所示: 二.功能和技术指标 ...

  9. Note -「Mobius 反演」光速入门

    目录 Preface 数论函数 积性函数 Dirichlet 卷积 Dirichlet 卷积中的特殊函数 Mobius 函数 & Mobius 反演 Mobius 函数 Mobius 反演 基 ...

  10. rust连接oracle数据库遇到DPI-1047: Cannot locate a 64-bit Oracle Client library的解决方案

    这两天要实现一个用rust连接远程的oracle数据库的需求,所以就需要用rust连接oracle. 在github上面找到一个库,地址:https://github.com/kubo/rust-or ...