Назад | Перейти на главную страницу

как использовать ssh для посещения vm в среде openstack

Что я хочу сделать: использовать скрипт Python для входа в виртуальную машину в openstack
Окружающая среда

Что я сделал до сих пор: я использовал CLI: openstack keypair create abc > /root/keydir/abc создать пару ключей openstack и использовать chmod 600 abc to change the permission

Затем я создаю виртуальную машину на панели управления и использую ключ, который я только что создал.

Я настраиваю виртуальную машину и жду ее до нужного состояния. Наконец, я использую эту команду в узле контроллера: ip netns exec qdhcp-c8db7805-c5e8-aaaa-xxxx-xxxxx ssh -i / root / keydir / abc root@192.168.111.104 (ip vm) "ping 127.0.0.1 -c 10"

Когда я запускаю это в python, он показывает мне: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). Я запускаю команду в Linux напрямую, она предлагает мне ввести пароль, и это не тот результат, который я хочу

Почему не работает пара ключей?

Это обычная проблема, с которой я столкнулся. Когда вы генерируете ключи на стороне сервера, вы должны экспортировать закрытый / открытый ключ RSA на компьютер, с которого вы хотите подключиться. Открытый ключ (который также находится в авторизованных ключах) - единственный, который вам понадобится.

Я использую PuTTy для этого, потому что вы можете сгенерировать файл .ppk с ключом RSA из Блокнота. Вам просто нужно скопировать файл с их Key ------ BEGIN RSA KEY ------- и поместить его в Блокнот, а затем PuTTy Key Generator, чтобы преобразовать его в .ppk.

Вот отличное руководство: https://support.rackspace.com/how-to/log-into-a-linux-server-with-an-ssh-private-key-on-windows/