iLO is the management interface used on many HewlettPackard servers. These often allow you to remotely power a machine up or down, and connect to the machine's local console.
Check if you have several SSHKeys in your SSH agent (eg. with "ssh-add -L"). Each time your agent tries a key that is not in the iLO's list of authorised keys counts as a failure, and after 3 failures it will close the connection. Either install your keys in the iLO's key management system, or run SSH without your agent:
SSH_AUTH_SOCK= ssh $ilo
If you run "ssh -v $ilo", you'll see that the last debug message before failing is something like
debug1: Sending env LANG = en_NZ.UTF-8
This confuses old versions of the iLO. If you don't want to install a newer iLO firmware (you can get it from the HP website), you can work around this by completely unsetting the LANG EnvironmentVariable:
env -u LANG ssh $ilo
Note that "LANG= ssh -v $server" only sets the variable to the empty string which your SSH client will still send, which is enough to confuse iLO:
debug1: Sending env LANG =
No page links to iLO.