加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

如何从脚本中添加带有随机密码或无效密码的linux用户

发布时间:2020-12-13 17:06:59 所属栏目:Linux 来源:网络整理
导读:我想从脚本中将用户添加到 linux系统,但我不想发明或关心密码.这应该自动完成. 目标是生成ssh-key,此用户只需要远程登录.或者,此用户将通过sudo su – thatuser从sudo用户使用. 我想在每次创建这样的用户时节省麻烦发明并输入一些安全密码,并且还要从脚本中
我想从脚本中将用户添加到 linux系统,但我不想发明或关心密码.这应该自动完成.

目标是生成ssh-key,此用户只需要远程登录.或者,此用户将通过sudo su – thatuser从sudo用户使用.

我想在每次创建这样的用户时节省麻烦发明并输入一些安全密码,并且还要从脚本中执行此操作.

没有人应该能够以这个用户身份使用密码登录,所以我的想法是他获得了一个好的随机密码,但没人知道.

我可以编写一个生成ramdom的脚本,但mabye有内置的东西吗?或者只是停用密码(以便无法登录密码,但使用密钥和sudo su进行ssh登录 – 该用户工作正常.

编辑:已经有一些答案,很好,但我仍然不知道该怎么做.脚本怎么样?

它应该像adduser一样,并创建标准的一切(如std.主目录,骨架复制,同名组)

编辑2:最后,在你的帮助下,我找到了一个有效的解决方案,我想分享它.这是一个我称之为“adduser-nopasswd”的脚本,我将它放入/usr/local / sbin(这是一个好地方吗?),它只能由root执行.它需要一个参数,它同时是新组和用户的名称:

#!/bin/sh -e
# the -e makes the script exit immediateley if one command fails
NAME=$1
groupadd $NAME
useradd --create-home -d /home/$NAME --shell /bin/bash -g $NAME $NAME

有关此功能的任何评论?

解决方法

如果您没有为useradd指定密码,则不会设置(因此用户将无法通过密码登录).请注意,useradd和adduser是两个不同的命令.

以下应创建具有自己的组的新用户,创建它的主目录(在默认位置,因为我们没有指定任何位置)并复制骨架文件.

useradd --create-home <user>

然后你只需在它的主目录中创建目录.ssh,chmod到0700(SSH会希望这是为了安全),并将用户公钥放在.ssh / authorized_keys中(私钥/公钥对应该由用户生成)他/她自己,在他/她自己的电脑上).

如果要禁用现有帐户的密码,可以使用以下内容.

usermod --lock <user>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读