Categories: VMware

VMware ESXi: SSH аутентификация с помощью ключей

Вы можете настроить аутентификацию с помощью ключей на хостах VMware ESXi вместо стандартного SSH подключения с помощью имени пользователя и пароля. Это удобно, когда вам нужно удаленно управлять хостом ESXi с помощью внешних скриптов (например отправить команду выключения на ESXi при пропадании питания на ИБП) или при управлении хостами VMware ESXi через Ansible .

Сгенерируйте закрытый и открытый ключи на компьютере администратора.

Для SSH аутентификации нужно использовать RSA ключи как минимум длиной 4096 бит. Чтобы сгенерировать пару RSA ключей длиной 4096 на Windows, выполните команду:

ssh-keygen -t rsa -b 4096

В новых билдах OpenSSH вместо RSA ключей рекомендуется использовать протокол Ed25519 ( use RSA/SHA256 when testing usability of private keys as some systems are starting to disable RSA/SHA1 in libcrypto ). В ESXi 8.0 мне удалось подключиться с помощью пары Ed25519 ключей только после отключения опции FipsMode no в /etc/ssh/sshd_config.

Чтобы сгенерировать ключи id_ed25519 и id_ed25519.pub выполните:

ssh-keygen -t ed25519

Утилита сгенерирует два файла в каталоге с профилем текущего пользователя (%USERPROFILE%.ssh):

  • id_rsa – закрытый ключ
  • id_rsa.pub – публичный (открытый) ключ
Если вы генерируете ключи с помощью Puttygen, их нужно экспортировать в формате OpenSSH.

Скопируйте открытый ключ id_rsa.pub с вашего компьютера на хост VMware ESXi. Этот ключ нужно добавить в файл /etc/ssh/keys-$USER/authorized_keys . Если это ключ для пользователя root, путь к файлу будет такой:

/etc/ssh/keys-root/authorized_keys

Подключитесь к серверу ESXi по SSH (в настройках хоста ESXi нужно разрешить доступ по SSH ).

Вы можете отредактировать файл вручную (в файле можно хранить несколько ключей) или добавить его на сервер ESXi с помощью PowerShell команды:

cat c:usersadmin.sshid_rsa.pub | ssh [email protected] 'cat >> /etc/ssh/keys-root/authorized_keys'

Настройки OpenSSH сервера на хосте ESXi находятся в файле /etc/ssh/sshd_config .

Можно включить/отключить доступ под root с помощью директивы:

PermitRootLogin yes

Отключить SSH вход по паролю:

ChallengeResponseAuthentication no # deprecated_x000D_KbdInteractiveAuthentication no_x000D_PasswordAuthentication no

Перезапустите SSH на ESXi:

# /etc/init.d/SSH restart

Также вы можете распространить SSH ключи на хосты ESXi с помощью VMware Host Profiles (Security Configuration -> SSH authorized key for root user -> Add public key)

Теперь вы можете подключиться к ESXi хосту без ввода пароля с помощью закрытого ключа. В Windows с включенным агентом ssh-agent при подключении к хосту автоматически будет использоваться закрытый ключ из профиля пользователя:

ssh [email protected]

Также вы можете указать путь к ключу с помощью параметра -i:

ssh [email protected] -i "C:Usersadministrator.sshid_rsa"

Вы можете удаленно выполнить произвольную команду в консоли ESXi. Например, выключить определенную виртуальную машину :

ssh [email protected] vim-cmd vmsvc/power.shutdown VMID

В VMware ESXi 7.0 U2 и выше пароли в файле local.tgz.ve зашифрованы, поэтому сбросить пароль root в ESXi с помощью этой процедуры не получится. В этом случае аутентификация по ключам позволит вам подключиться к серверу без ввода пароля root.
admin

Share
Published by
admin

Recent Posts

Что такое Zulip

Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…

2 месяца ago

Что такое Zookeeper

Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…

2 месяца ago

Что такое Zimbra

Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…

2 месяца ago

Что такое Zabbix

Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…

2 месяца ago

Что такое YouTube

YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…

2 месяца ago

Что такое yota

Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…

2 месяца ago