第一次尝试无法通过 SSH 连接到 Centos 上新创建的用户
Unable to ssh into a newly created user on Centos on first attempt
这就是我正在做的事情:
- 正在 Linode 上创建新服务器。 OS是centos 6.5
- 以 root 身份登录
- 运行以下脚本来添加一个名为 shortfellow 的用户,该用户没有密码。
脚本是:
#!/bin/bash
yum -y update
adduser shortfellow
mkdir -p /home/shortfellow/.ssh
echo "ssh-rsa REALLYLONGSSHPUBLICKEY shortfellow@example.io" >> /home/shortfellow/.ssh/authorized_keys
chmod -R 700 /home/shortfellow/.ssh
chown -R shortfellow:shortfellow /home/shortfellow/.ssh
su - shortfellow
exit
问题是我第一次尝试通过 ssh 进入系统。它根本不起作用。它只是要求输入密码。我按 ctrl + c 并以同一用户身份再次尝试 ssh,成功了。
这种行为真的很烦人,因为我正在编写代码以编程方式创建服务器,但由于这个愚蠢的问题而无法正常工作。
有谁知道为什么这可能无法按预期工作?
我在 exit
之前的脚本中执行了 /sbin/mkhomedir_helper shortfellow
,之后它可以正常工作。
我想问题确实是用户的主目录仅在登录时创建,当我尝试以编程方式创建此用户时,由于某种原因不会发生这种情况。
这就是我正在做的事情:
- 正在 Linode 上创建新服务器。 OS是centos 6.5
- 以 root 身份登录
- 运行以下脚本来添加一个名为 shortfellow 的用户,该用户没有密码。
脚本是:
#!/bin/bash
yum -y update
adduser shortfellow
mkdir -p /home/shortfellow/.ssh
echo "ssh-rsa REALLYLONGSSHPUBLICKEY shortfellow@example.io" >> /home/shortfellow/.ssh/authorized_keys
chmod -R 700 /home/shortfellow/.ssh
chown -R shortfellow:shortfellow /home/shortfellow/.ssh
su - shortfellow
exit
问题是我第一次尝试通过 ssh 进入系统。它根本不起作用。它只是要求输入密码。我按 ctrl + c 并以同一用户身份再次尝试 ssh,成功了。
这种行为真的很烦人,因为我正在编写代码以编程方式创建服务器,但由于这个愚蠢的问题而无法正常工作。
有谁知道为什么这可能无法按预期工作?
我在 exit
之前的脚本中执行了 /sbin/mkhomedir_helper shortfellow
,之后它可以正常工作。
我想问题确实是用户的主目录仅在登录时创建,当我尝试以编程方式创建此用户时,由于某种原因不会发生这种情况。