Quando você executou ssh username@hostname , o computador do qual está se conectando (seu Mac OS) não sabe o IP desse hostname , por que isso está lhe dizendo que ssh: Could not resolve hostname . Então, o que você precisa fazer é dizer ao seu Mac que esse hostname é esse ip_address . Para fazer isso no seu Mac, esta página diz-lhe como fazê-lo. Basicamente, o que você precisa fazer é sudo nano /private/etc/hosts ( sudo nano /etc/hosts no Mac OS X 10.7 e superior) e adicionar uma linha no final do arquivo assim:
ip_address hostname
Com o IP atual e o nome do host da sua máquina Ubuntu. Uma vez feito, Control + O, então Enter, então Control + X para salvar e fechar o arquivo. Em seguida, execute dscacheutil -flushcache para que as alterações entrem em vigor. Agora, quando você faz ssh username@hostname , deve funcionar.
E sobre essa porta 2222:
Você está certo, você tem que fazer algumas modificações no Mac OS ... bem, são apenas mais alguns personagens. Quando você faz ssh username@hostname , o que realmente está acontecendo em segundo plano é ssh username@hostname -p22 , porque a porta 22 é a porta SSH padrão. Mas, se você souber que a máquina à qual está tentando se conectar está usando uma porta diferente, terá que especificá-la manualmente. Então, desde que você mudou a porta no Ubuntu para 2222, você terá que fazer ssh username@hostname -p2222 . Isso não tem nada a ver com o uso do hostname ou ip_address .