Here’s a quick posting on a question that I have seen asked quite a number of times and hope may be useful to those starting out with VMware ESXi. This topic has been covered somewhat extensively out on the web though I decided to write something up for my own ease of directing people to the information when I’m asked.
One of the distinct changes with VMware ESXi over ESX 3.5 is that it no longer has the Linux based Service Console (SC) that you may be familiar with. Although at first you may think that this is something of a limitation – this is in fact (in most instances) not the case as alternative methods are provided such as the ‘Remote Command Line Interface’.
The Service Console used take up the majority of the space consumed by an ESX installation. Now with the ESXi hypervisor only being 32MB in size (the total installation is 500MB+ which is still significantly smaller than ESX) this small size reduces the potential attack surface from any exploits or similar.
Despite the lack of the full featured Service Console found in ESX 3.5 and previous versions there is still an unsupported service console type interface (though just to be clear it isn’t technically a service console per se) which is provided in the form of a utility called BusyBox. BusyBox is a single binary that has been compiled to offer some of the basic shell commands found in the original service console. But by no means is it as full featured.
It should be emphasised that connecting to the BusyBox shell is not supported by VMware, in fact it is logged on the ESXi server so if you access this mode you may be denied support by VMware support to any problem/issue you may be experiencing – and they will be able to tell by the logs if checked. See this KB article from VMware for more information on the ‘Tech Support Mode’.
Access to the BusyBox shell is by default only possible by local access to the server though you can enable SSH access for remote access. Once again this is not supported or recommended for a production system as it it provides another attack vector for any would be hacker which undoes part of the reason for electing on a small installable footprint in the first place.
To access the BusyBox shell follow these 3 basic steps.
Step 1: Connect to the ESXi server via a locally attached console. You will be presented to a screen as below (it may initially be dimmed if you haven’t yet pressed a key or clicked the mouse). From this screen press the ALT + F1 keys.
Step 2: After pressing Alt + F1 you will then be presented with the screen below. Now type in ‘unsupported’ and press the enter key – don’t worry no text will appear on the screen when typing this.
Step 3: Enter in the password for the ESXi servers ‘root’ account when prompted. Note the warning about how you are now activating the ‘Tech Support Mode’ and how it is not supported unless in consultation with VMware Tech Support.
You should now see the shell prompt below. From here you can now access an array of basic commands though bear in mind this isn’t intended as a replacement to ESX’s full Service Console interface.
If you want to disable this ‘unsupported’ feature then you can do so via the Virtual Infrastructure Client (VIC) or the Virtual Center Server (vCenter). Select the ESX host and select the ‘Configuration’ tab. Then select the ‘Advanced Settings’ –> ‘VMKernel’ –> ‘Boot’ settings and de-select the checkbox. A reboot of the ESXi host will be required for this new setting to kick in.
How to enabled SSH:
See my article here for how to enable SSH on VMware ESXi.