by lunarg on June 30th 2010, at 17:12

While not documented, it is possible to activate remote SSH access to an ESXi 4.0 (free or paid license).

You need console access to the machine to turn on SSH access; it cannot be done with the vSphere client.

  1. At the console, press Alt+F1 to switch to the console. You will not see a prompt, but you will be able to type in the logon name.
  2. Type in unsupported then press Enter; you will see a Password: prompt. If you did not set a password in ESXi, type in unsupported. If a password was set for the root account, type in that password.
  3. Once logged in, navigate to /etc, and open the file inetd.conf.
~ # cd /etc
/etc # vi inetd.conf
  1. In the file, find and uncomment the line(s) for SSH access. If you need IPv6, uncomment the line saying ssh stream tcp6 as well.
    If you're not familiar with vi, keep your cursor on the first character (always a #), navigate down until you find #ssh, then press x to delete the # character. To save the file, just type the letters :wq, then press Enter.
  2. All that's left is to restart inetd. Find the PID of inetd and kill it:
/etc # ps ax | grep inetd
40045896 40045896 busybox              inetd
/etc # kill 40045896
  1. Then, restart inetd:
/etc # inetd
/etc #

You can now test SSH access by logging in with your user and password you use with vSphere client. From here on out, you will be able to use SSH for a number of things (like SNMP monitoring, backup complete VMs, etc.)

Additional links