Você não precisa incluir @hostname em ssh em outro host. Isso é necessário apenas se você quiser ssh como outro usuário diferente daquele em que você está conectado atualmente, em sua máquina local.
Exemplo
$ whoami
saml
$ hostname
grinchy
Se eu apenas ssh <remotehost> para algum outro computador, estarei implicitamente tentando fazer login no <remotehost> como usuário saml .
Talvez esse usuário seja ou não também um usuário em <remotehost> . Você tem que saber isso antes do tempo. Portanto, em vez de confiar que um nome de usuário é o mesmo em vários sistemas, as pessoas geralmente incluem explicitamente essas informações em seus comandos de conexão ao usar ssh .
$ ssh someuser@remotehost
Se você tem certeza de que o usuário local é o mesmo em todos os sistemas, você pode usar isso:
$ ssh remotehost
arquivo .ssh / config
Se você acha que tem vários nomes de usuário e hosts remotos com os quais precisa fazer login, pode usar o arquivo ssh config . Este arquivo geralmente está no diretório $HOME . Esse arquivo precisa ser criado manualmente para que ele nem exista. Aqui está um arquivo de amostra:
# web server
Host webby webby.mydom.com
User someuser
Hostname webby.mydom.com
Com esta sub-rotina no seu arquivo config você pode agora apenas ssh para o host webby e usará automaticamente o nome de usuário someuser por padrão.
$ ssh webby
Você ainda pode substituir isso, por exemplo:
$ ssh someotheruser@webby