美文网首页linux运维
linux用户密码管理

linux用户密码管理

作者: awsome365 | 来源:发表于2018-09-12 20:51 被阅读6次

    9月20日任务
    3.4 usermod命令
    3.5 用户密码管理
    3.6 mkpasswd命令

    usermod命令

    usermod命令可以更改用户属性。/etc/passwd中每一行用冒号分为七列,usermod大部分可以更改。主要参数有:

    • u,修改用户uid,对应/etc/passwd第三列
    • g,修改用户gid,可以组名或者组号,对应/etc/passwd第四列
    • d,修改用户家目录,对应/etc/passwd第六列
    • s,修改用户shell,对应/etc/passwd第七列

    此外还有-G参数,修改用户附属组。默认情况下新建一个用户同时会创建一个与用户同名的所属组,这个是主组,还可以添加附属组。usermod -G root user1这条命令就把user1添加到了root附属组。一个用户可以有多个附属组,添加多个附属组要同时列出,不然多次运行usermod -G命令会覆盖前面的附属组。

    密码管理

    passwd直接修改当前用户的密码。passwd username修改指定用户密码,只有所有者和root才有权修改。

    用useradd添加新帐号后查看/etc/passwd会发现新创建账户密码位是两个叹号,这是没有设置密码,不能登录。如果密码位是星号,则代表帐号锁定。锁定可能是密码有效期到期,或者系统管理员锁定。

    passwd -l username命令锁定帐号,这时/etc/passwd密码位显示两个叹号。passwd -u username解锁。此外,usermod也可以锁定帐号。usermod -L锁定后/etc/passwd密码位显示一个叹号,用usermod -U解锁。

    passwd修改、设置密码时默认会输入两边密码,这不利于批量管理密码,尤其是脚本管理。passwd --stdin username可以只输入一次密码,没有交互界面,输入密码时会以明文显示密码。那么在编写脚本时,可以利用管道进行输入密码:echo "qqq" |passwd --stdin username

    此外,也可以用\n换行来实现两边输入密码。echo -e "123123\n123123" |passwd username这样就实现了交互第二遍输入。两种方法都可行。

    mkpasswd

    mkpasswd可以随机生成密码,建意使用提高帐号安全。使用前先安装:yum install -y expect

    mkpasswd 默认生成9位密码,包含小写大写数字和特殊字符。可以指定密码长度,mkpasswd -l 12生成12位的密码。还可以规定特殊符号的数量,mkpasswd -s 3则密码中包含3个符号。可以选择没有特殊符号,不过那会将定帐号安全。想想现在多少人的密码里只有数字和小写字母?至少加入几个大写字母吧。

    相关文章

      网友评论

        本文标题:linux用户密码管理

        本文链接:https://www.haomeiwen.com/subject/tdwbgftx.html