#cloud #openstack
#облако #openstack
Вопрос:
Что я хочу сделать: использовать скрипт Python для входа в виртуальную машину в среде openstack
Что я делал до сих пор:
-
Я использовал CLI:
openstack keypair create abc > /root/keydir/abc
для создания пары ключей openstack и использованияchmod 600 abc
для изменения разрешения -
Затем я создаю виртуальную машину из dashboard и использую ключ, который я только что создал
-
Я настраиваю виртуальную машину и жду, пока она достигнет нужного состояния
-
Наконец-то я использую эту команду в узле контроллера:
ip netns exec qdhcp-c8db7805-c5e8-aaaa-xxxx-xxxxx ssh -i /root/keydir/abc
root@192.168.111.104(vm's ip) "ping 127.0.0.1 -c 10 "
-
Когда я запускаю это на python, оно показывает мне:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)
. -
Я запускаю команду в Linux напрямую, мне предлагается ввести пароль, и это не тот результат, который я хочу
Почему не работает пара ключей?
Комментарии:
1. Ваш вопрос нуждается в переформатировании! Возможно, прочитайте руководство, если не уверены, как это сделать.
2. хорошо, спасибо, я изменил формат
3. Вы могли бы постараться получше: я отредактировал ваш вопрос; пожалуйста, просмотрите!
4. Я думаю, вам лучше опубликовать свой вопрос на serverfault.com потому что это больше связано с серверами / инфраструктурой, чем с кодированием
Ответ №1:
Вы должны использовать учетную запись администратора (не «root»). Имя учетной записи зависит от того, как «cloud-init» настроен в вашем образе Linux, но обычно это:
- «ubuntu» для Ubuntu
- «debian» для Debian
- «ec2-user» для RHEL, Fedora, CentOS и так далее
- и другие.
По умолчанию конфигурации «sshd» не разрешают (не должны!) вход по SSH в учетную запись «root» по сети.