Modificando o / etc / hosts para acessar facilmente um nome de domínio (ou endereço IP) para a instância amazon EC2

5

Eu adicionei anteriormente ao meu arquivo local (Mac OS x 10.6) / etc / hosts do ip público do meu servidor algo assim:

123.123.123.123 myServer

para me permitir ssh para myServer sem ter que lembrar o endereço IP do servidor e funcionou bem (usando shh public key), assim:

ssh myServer1

No entanto, na instância do Amazon EC2, tentei fazer o mesmo usando o endereço de DNS público longo fornecido e em / etc / hosts. Eu adicionei o seguinte:

ec2-23-23-23-23.compute-1.amazonaws.com myServer2 

mas quando tento ssh myServer2 diz que o 'hostname não pode ser resolvido'

alguma idéia porque isso não está funcionando? Como posso fazer isso funcionar?

O comando completo que desejo usar é:

ssh -i key.pem [email protected] 

e estou tentando criar um atalho que pode ser algo assim:

ssh -l username myServer2 or ssh -i key.pem -l username myServer2

alguma ideia?

UPDATE: usei alias, o que é mais fácil:

Adicionado dentro de .bash_profile (MAC OS x)

alias myServer='ssh -i /path/to/key.pem [email protected]' 

(precisa fechar e abrir o terminal novamente ou usar a fonte ~ / .bash_profile) Então ssh apenas usando myServer na linha de comando     $ myServer

    
por venix 25.07.2013 / 11:57

2 respostas

6

Em vez de editar seu arquivo hosts , leia sobre a configuração do cliente SSH .

Você pode criar aliases de host em ~/.ssh/config . Por exemplo:

Host myServer2
     HostName ec2-23-23-23-23.compute-1.amazonaws.com
     UserName username

Se você estiver usando apenas o SSH, isso funcionará bem. Se você precisar acessar outros serviços, configure o DNS ou use o encaminhamento de porta no SSH (com -L ).

    
por 25.07.2013 / 12:34
1

O formato das linhas em /etc/hosts é

<ip address>  <hostname> [<alias> ...]

então você precisa especificar um endereço IP como o primeiro campo. É por isso que sua tentativa de usar o nome do host do EC2 não funcionou.

Você não precisa fazer isso de qualquer maneira, porque (se a resolução de DNS estiver funcionando), o nome será resolvido por uma pesquisa de DNS.

    
por 25.07.2013 / 11:59