我正在通过 ssh 执行此操作。
我想创建一个用户:
无法通过 ssh 访问
可以被冒充
su
没有密码(这是一个好习惯吗?)
可以运行 Web 应用程序(特别是使用 pm2 (nodejs))
这就是我们在工作中的做法——我通过 ssh(pem 密钥)访问服务器,然后向nodejs
用户发送 su 并运行应用程序。我在这里阅读了一些答案,但它们通常采用“我创建了一个用户但它不起作用,怎么了”的形式
我创建了一个用户,adduser nodejs --system --group
但它有一个我不知道的密码。也许我只需要在该命令中添加一些内容。
操作系统是 Mint/Ubuntu。
默认情况下,大多数 Linux 发行版不会为新用户设置密码,而是在禁用密码身份验证的情况下创建它。该帐户不会从外部显示为禁用该帐户 - 您仍然会收到提示。但是没有密码可以工作。
如果您设置了密码,知道该密码的人将能够通过 ssh 访问该密码。
sudo
但是,如果您的系统已安装软件包并且您的帐户在wheel
组中,或者已专门配置 sudo 以允许您的帐户切换到该用户,则您无需设置密码即可切换到该帐户。假设 sudo 配置为让您更改为该用户并运行任何命令,
将提示您输入凭据(我假设是您的密码),并且在您成功输入它们后,将使用目标用户的登录 shell 将您登录到帐户。(-i 表示使 shell 成为目标用户的登录 shell。)
如果您的帐户未配置为允许您使用 sudo 切换到该用户并运行任何命令,那么如何配置这是一个单独且更大的问题。但在你问这个问题之前,请阅读 sudo 和 sudoers 手册页(
man sudo sudoers
)