2015-01-08 3 views
-1

это то, что я делаю:Невозможно SSH в недавно созданный пользователем на Centos первой попытки

  1. Создание нового сервера на Linode. OS is centos 6.5
  2. Вход в систему как корень
  3. запуск следующего скрипта для добавления пользователя с именем shortfellow, у которого нет пароля.

Сценарий:

#!/bin/bash 

yum -y update 
adduser shortfellow 

mkdir -p /home/shortfellow/.ssh 
echo "ssh-rsa REALLYLONGSSHPUBLICKEY [email protected]" >> /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 как один и тот же пользователь, он работает.

Это поведение действительно раздражает, потому что я пишу код для создания сервера программно, и это не работает из-за этой глупой проблемы.

Есть ли у кого-нибудь идеи, почему это может не работать должным образом?

+0

Получите вывод из 'ssh -vvv' из двух попыток подключения? (Я предполагаю, что это не просто гонка между созданием файла и вашей первой попыткой ssh?) –

ответ

0

Я сделал /sbin/mkhomedir_helper shortfellow в сценарии до exit, и после этого он работает правильно.

Я думаю, проблема в том, что домашний каталог для пользователя создается только при входе в систему, и когда я пытался программным образом создать этого пользователя, это не произойдет по какой-то причине.

 Смежные вопросы

  • Нет связанных вопросов^_^