Pour des raisons de sécurité, je désactivais toujours l’accès SSH à mon serveur ESXi, laissant donc l’administration via la console web (que je n’aime pas trop par ailleurs) et le vClient.
Seulement, il n’y a pas si longtemps, les services de management ont crashé, rendant impossible la connexion via l’interface web ou le vClient, que ce soit via une machine virtuelle situé sur l’ESX ou bien en distant. Le serveur ne répondait pas non plus aux requêtes PowerCLI. J’ai donc dû demander un KVM sur le serveur afin de pouvoir prendre le shell en direct et relancer les services.
Depuis, je me suis dit qu’avoir quand même la main sur le shell pouvait être une option intéressante si besoin. Par contre, je voulais tout de même garder une certaine sécurité en ne le laissant pas ouvert depuis l’extérieur.
Via le vClient, il est possible de filtrer les connexions au serveur SSH par adresse IP ou blocs d’IP, ce qui dans mon cas m’intéresse puisque je vais lui demander d’autoriser seulement les connexions provenant de l’adresse IP LAN de mes machines virtuelles.
Dans le vClient, onglet Configuration > Profil de Sécurité > Modifier les propriétés du pare-feu puis Serveur SSH |
Ensuite, la tentative de connexion depuis mon ordinateur personnel chez moi ne renvoie rien :
Depuis le réseau interne, cela fonctionne bien :
Par contre, par défaut, l’accès est possible en root uniquement. Etant donné que je possède un utilisateur standard afin d’accéder aux consoles et faire de la gestion rapide avec des privilèges limités, je voulais interdire la connexion en SSH avec l’utilisateur root et autoriser mon compte standard en connexion pour ensuite procéder à une élévation des droits avec su – mais cela ne semble plus être possible dans les dernières versions d’ESXi (testé sur 6.0 et 6.5).