Я работаю сценарий, которые создают пользователя и добавляют ключ для того пользователя, таким образом, он может использовать тот ключ со своим именем пользователя к SSH в мой VM
Напр. пользователь = Джон
useradd -m john &&
cd ~/.ssh/ &&
rm -rf tmp_rsa* &&
ssh-keygen -t rsa -b 4096 -C "john@email.com" -N '' -f john_rsa &&
echo "#tmp_rsa" >> authorized_keys &&
cat john_rsa.pub >> authorized_keys &&
cat authorized_keys &&
service ssh restart &&
echo ">>> Done"
Вышеупомянутый сценарий, корректно для достигания того, что я хочу?
Я попробовал подключение ООН: john
, и ключ сгенерирован john_rsa
.
Я добрался
Благодаря @marosg и @Takkat
Вот мой обновленный сценарий
adduser -m john &&
cd ~/.ssh/ &&
rm -rf tmp_rsa* &&
ssh-keygen -t rsa -b 4096 -C "john@email.com" -N '' -f john_rsa &&
echo "#tmp_rsa" >> ~john/.ssh/authorized_keys &&
cat john_rsa.pub >> ~john/.ssh/authorized_keys &&
cat authorized_keys &&
echo ">>> Done"
Существует несколько вещей неправильно здесь:
Вы создаете пользователя john, и затем Вы ничего не делаете с этим пользователем больше
Вы добавляете ключи к СВОЕМУ пользователю
удаленному пользователю, который должен войти в систему здесь, нужен закрытый ключ от ssh пары ключей на машине, от которой он соединяется
нет никакой потребности перезапустить ssh сервис после добавляющих ключей
В чем Вы нуждаетесь на стороне клиента
ssh-keygen ...; cat id_rsa.pub
)То, в чем Вы нуждаетесь на стороне сервера,
добавьте пользователя john
добавьте открытый ключ, предоставленный пользователем ~john/.ssh/authorized_keys (echo id_rsa.pub_provided_by_remote_user >> ~john/.ssh/authorized_keys
)