Open sesame – getting console on VMware ESXi 3.5 – and getting ssh up

It seems that esxi administrators get itchy fingers when they start working with ESXi and the lure of the console is just too strong. I have to say I think my first action on installing an esxi box was to look to get access to a command line…..

So two problems here – one getting accessing to the console – the other configuring access from SSH remotely.

ESXi 3.5 does ship with the ability to run SSH, but this is disabled by default (and is not supported). If you just need to access the console of ESXi, then you only need to perform steps 1 – 3.

1) At the console of the ESXi host, press ALT-F1 to access the console window.
2) Enter unsupported in the console and then press Enter. You will not see the text you type in.
3) If you typed in unsupported correctly, you will see the Tech Support Mode warning and a password prompt. Enter the password for the root login.
4) You should then see the prompt of ~ #. Edit the file inetd.conf (enter the command vi /etc/inetd.conf).
5) Find the line that begins with #ssh and remove the #. Then save the file. If you’re new to using vi, then move the cursor down to #ssh line and then press the Insert key. Move the cursor over one space and then hit backspace to delete the #. Then press ESC and type in :wq to save the file and exit vi. If you make a mistake, you can press the ESC key and then type it :q! to quit vi without saving the file.
6) Once you’ve closed the vi editor, run the command /sbin/ restart to restart the management services. You’ll now be able to connect to the ESXi host with a SSH client.

Update for ESXi 3.5 Update 2 – With Update 2 the command no longer restarts the inetd process which enables SSH access. You can either restart your host or run ps | grep inetd to determine the process ID for the inetd process. The output of the command will be something like 1299 1299 busybox inetd, and the process ID is 1299. Then run kill -HUP (kill -HUP 1299 in this example) and you’ll then be able to access the host via SSH.

Aditional note

Should you find the pipe symbol | on your keyboard is not working – use the following workaround

ps > afile.txt
vi afile.txt
locate the id
press esc
enter :
enter q!

then kill -HUP processidyoufoundinthefile