usermod命令 用户密码管理 mkpasswd命令

一、usermod [options]user_name

usermod命令修改系统帐户文件来反映通过命令行指定的变化

选项(options)

    -a|--append ##把用户追加到某些组中,仅与-G选项一起使用

    -c|--comment ##修改/etc/passwd文件第五段comment

    -d|--home   ##修改用户的家目录通常和-m选项一起使用

    -e|--expiredate  ##指定用户帐号禁用的日期,格式YY-MM-DD

    -f|--inactive    ##用户密码过期多少天后采用就禁用该帐号,0表示密码已过期就禁用帐号,-1表示禁用此功能,默认值是-1

    -g|--gid    ##修改用户的gid,改组一定存在

    -G|--groups ##把用户追加到某些组中,仅与-a选项一起使用

    -l|--login  ##修改用户的登录名称

    -L|--lock   ##锁定用户的密码

    -m|--move-home   ##修改用户的家目录通常和-d选项一起使用

    -s|--shell  ##修改用户的shell

    -u|--uid    ##修改用户的uid,该uid必须唯一

    -U|--unlock ##解锁用户的密码

二、用户密码管理:

/etc/passwd用户的配置信息

①shan:②x:③501:④501:⑤:⑥/home/shan:⑦/bin/bash

用户名

用户密码

③UID

④GID

关于用户的描述信息,可用chfnusername 添加描述信息

用户的家目录

用户的shell环境

/etc/shadow用户密码配置信息

①shan:②$6$v4BjzEnC$APnTKkchk0a/1I7OaKx0oYkiY2..NpRxx23xLZD09omfYRwQ3yX6jnxST9Va.4G8.JsT.Jxmh8zCYvEm/bl6W.:③16699:④0:⑤99999:⑥7:⑦:⑧:⑨

用户名

密码,这是经过加密的密码,$6代表sha-512,$5代表sha-256,$1代表MD5.

上一次的修改密码的日期,它以距离1970年1月1日的天数表示。

距离可更改密码的天数,0代表无限制,随时可以更改。

必须更改密码的最大天数

账号过期提前警告的天数

用户在密码过期后,仍然可以使用的天数

账户失效日期,以距离1970年1月1日的天数表示。

保留未来使用

三、mkpasswd

mkpasswd命令生成随机密码
参数:
-l # (密码的长度定义, 默认是 9)
-d # (数字个数, 默认是 2)
-c # (小写字符个数, 默认是 2)
-C # (大写字符个数, 默认是 2)
-s # (特殊字符个数, 默认是 1)
-v (详细。。。)
-p prog (程序设置密码, 默认是 passwd

mkpasswd 为用户产生口令并自动应用。。  

用法

不带参数的话,mkpasswd 返回一个新口令。带上用户名的话, mkpasswd 为该用户分配一个新口令。

根据以下的标志可以随机性的产生口令。 

标志 FLAGS

-l标志定义口令长度。缺省值为9。以下示例建立一个20位的口令。

  mkpasswd-l 20

-d标志定义口令必须包含的最少数字位数。缺省值为2。以下示例建立一个含3位数字的口令。

 mkpasswd-d 3

-c标志定义口令必须包含的最少小写字母个数。缺省值为2。

-C标志定义口令必须包含的最少大写字母个数。缺省值也是2。

The-s flag defines the minimum number of special characters that must be in thepassword. The default is 1.

-p标志标明设立口令的程序。如果/etc/yppasswd存在的话则它为缺省值,否则就用/bin/passwd。

-2标志交换键盘上左右手的字母(我想就是左手输入g则为h吧),以使别人更难监视输入的口令。这也使口令猜测程序更容易成功。(这句不懂,请高手指教!)

-v使设定口令的交互可见,但缺省是不可见的。