首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >useradd创建一个没有密码且只能由ssh访问的用户。

useradd创建一个没有密码且只能由ssh访问的用户。
EN

Unix & Linux用户
提问于 2021-11-27 10:45:04
回答 1查看 2K关注 0票数 0

我正在编写一个使用useradd命令自动创建用户的脚本(我需要这个命令,而不是adduser)。

我想以一种只使用ssh访问它的方式创建它(脚本已经在授权的密钥中添加了public_key )。

代码语言:javascript
运行
复制
useradd --system --shell /bin/bash $NEW_USER

此命令允许通过密码登录吗?如果是,我怎样才能禁用它?

我想达到的目标是类似于--disable-password of useradd在这篇文章中描述的:创建没有密码的用户

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2021-12-02 03:28:32

useradd在默认情况下创建一个带有禁用密码的帐户,如果您不给它一个带有-p选项的帐户。

来自man useradd

-p--password密码加密密码,由密码(3)返回。默认情况是禁用密码。

顺便说一句,如果需要禁用现有帐户的密码,可以运行passwd -l username来锁定帐户(即禁用密码)。来自man passwd

-l--lock锁定命名帐户的密码。此选项通过将密码更改为与可能的加密值不匹配的值(它在密码的开头添加一个! )来禁用密码。请注意,这不会禁用帐户。用户仍然可以使用另一个身份验证令牌(例如SSH密钥)登录。若要禁用帐户,管理员应使用usermod --expiredate 1 (将帐户的过期日期设置为1970年1月2日)。不允许具有锁定密码的用户更改其密码。

它只是使密码无效而不是删除密码,这使得以后可以用passwd -u解锁密码,而无需系统管理员知道原始密码是什么,也不需要将其设置为“默认”密码(可能是不安全的,可能是众所周知的):

-u--unlock解锁指定帐户的密码。此选项重新启用密码,方法是将密码更改为以前的值(在使用-l选项之前将其更改为值)。

也就是说,它删除了通过!选项添加到加密密码开头的-l

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/679283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档