Posso configurar o ubuntu para anexar um domínio ao final de uma solicitação de nome de host ssh?

4

Eu tenho muitos servidores e todos eles terminam com o mesmo servers.company.net, por exemplo, vded-xx-001.servers.company.net, e queria saber se é possível fazer isso para que eu possa digitar o vded-xx-001 e tê-lo anexar o servers.company.net automaticamente?

Então, eu gostaria de digitar

ssh user@vded-xx-001

e ele realmente se conecta a

ssh [email protected]

Eu tentei configurar meu domínio de pesquisa de DNS para servers.company.net, em / etc / network / interfaces, mas isso não alcançou o resultado desejado.

Alguém capaz de me apontar na direção certa?

Obrigado antecipadamente

    
por Tim Lassie Freeborn 16.04.2013 / 13:08

5 respostas

2

A solução para meu problema foi adicionar o domínio de pesquisa a resolv.conf :

search servers.company.net

Isso me permitiu entrar

ssh user@vded-xx-001

para qualquer um dos meus servidores e se conecta ao endereço correto.

Obrigado @Hennes pela resposta

    
por Tim Lassie Freeborn 16.04.2013 / 13:41
12

Provavelmente você já resolveu isso, mas talvez mais tarde possa ajudar alguém: você não precisa usar o seu resolv.conf, apenas pode usar algo como isto em seu ~ / .ssh / config:

Host vded-*-001 test-*-something-fixed-*
        HostName %h.servers.company.net
        User someusername

Mais tarde, você pode usar:

ssh vdev-alotofstuff-001
ssh vdev-somethingels-001
ssh test-02-something-fixed-somethingelse

Atenciosamente,

    
por Mauricio 22.04.2016 / 18:34
2

Sim, você pode fazer isso criando um arquivo de configuração chamado ~/.ssh/config e inserindo o seguinte conteúdo:

Host vded-xx-001
User user
Port 22
HostName vded-xx-001.servers.company.net

Agora, basta digitar isso (você nem precisa mais do nome de usuário):

$ ssh vded-xx-001

Isso também funciona com o utilitário de linha de comando scp :

$ scp filename vded-xx-001:/path/
    
por Flimm 16.04.2013 / 13:18
0

Para uma solução rápida que funcione em diferentes programas, você também pode definir o domínio vded-xx-001 para redirecionar para um endereço IP específico, editando /etc/hosts para incluir uma linha como esta:

173.194.41.90  vded-xx-001

Isso funciona no seu navegador: http://vded-xx-001/

Assim como com utilitários de linha de comando, como o SSH:

$ ssh user@vded-xx-001

(Eu pessoalmente prefiro a solução de configuração SSH ).

    
por Flimm 16.04.2013 / 13:24
0

Esta é a solução mais fácil. Ele funciona para todos os hosts, não requer raiz nem acesso a nenhum sistema DNS / resolvedor.

Adicione ao topo do seu arquivo ~/.ssh/config (ou crie se ele ainda não existir):

CanonicalizeHostname yes
CanonicalDomains servers.company.net

Documentação ( man 5 ssh_config ):

  

CanonicalizeHostname

     

Controla se a canonização explícita do nome do host é executada. O padrão, no , não é para executar qualquer reconfiguração de nome e permitir que o resolvedor de sistema manipule todas as pesquisas de nome de host. Se definido como yes , para conexões que não usam um ProxyCommand , o ssh tentará canonicalizar o nome do host especificado na linha de comando usando o CanonicalDomains sufixos e regras CanonicalizePermittedCNAMEs . Se CanonicalizeHostname estiver definido como sempre , a canonização será aplicada às conexões com proxy também.

     

Se essa opção for ativada, os arquivos de configuração serão processados novamente usando o novo nome de destino para selecionar qualquer nova configuração nas sub-rotinas Host e Match . p>

    
por OrangeDog 27.06.2018 / 15:30