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 为该用户分配一个新口令。
标志 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使设定口令的交互可见,但缺省是不可见的。