Logowanie do ESXi 7.0 przez SSH bez podawania hasła

Wygenerowanie klucza w Windows:

ssh-keygen -t ecdsa -b 521

Wygenerowany klucze znajdują się w plikach: id_ecdsa oraz id_ecdsa.pub w folderze .ssh w katalogu domowym użytkownika.

Przekopiowanie zawartości pliku id_ecdsa.pub do pliku: /etc/ssh/keys-/authorized_keys

W pliku /etc/ssh/sshd_config należy zmienić (a jak nie ma to dopisać) następujące wpisy :

 PermitRootLogin yes
ChallengeResponseAuthentication no
PasswordAuthentication no
PasswordAuthentication można ustawić na yes jeśli użytkownik ma się logować w dwojaki sposób, tj. podając hasło oraz bez podawania hasła

Restart usługi

/etc/init.d/SSH restart

Teraz można wykonywać skrypty .cmd bez podawania hasła, np. skrypt do zrestartowania ESXi:

 ssh root@10.1.1.200 'reboot'

lub wyłączyć poszczególną maszynę wirtualną i zrestartować ESXi:

ssh root@10.1.1.200 'vim-cmd vmsvc/power.shutdown 5';'reboot';

gdzie numer maszyny wirtualnej można sprawdzić wpisując komendę:

vim-cmd vmsvc/getallvms

Źródło: https://kb.vmware.com/s/article/1002866