No trabalho, muitas vezes tenho que fazer login em hosts que seguem um esquema de nomenclatura comum, por exemplo qc01
- - qc12
, hc01
- hc10
e assim por diante. Tudo isso precisa obter os mesmos valores de configuração no meu laptop .ssh/config
. Claro, eu poderia usar entradas para os hosts qc*
e hc*
, mas estou pensando se, de alguma forma, é possível usar expressões regulares?
ssh
regular-expression
andreas-h
fonte
fonte
man ssh_config
.Você pode usar expressões regulares completas no seu
ssh_config
.A documentação relevante é muito difícil de ler e entender na IMO. Eu só o entendo porque tenho mais de 13 anos de experiência no Linux e mais de 8 anos no uso
ssh
. Então, aqui está o meu resumo da documentação:man ssh_config
descreve um recurso chamadoMatch
exec
que permite usar um comando arbitrário do shell para determinar uma correspondênciaTOKENS
No meu caso, acabei usando no meu
~/.ssh/config
:O teste deve ser feito com algo complicado como este. E para fazer esse teste, você chama
ssh -vvv HOSTNAME
. O que mostrará exatamente o que está acontecendo e se o seu novoMatch
foi implementado corretamente.fonte
Estendendo a resposta de Trevor:
Hosts mais complexos também são possíveis, como correspondência
foo123.123
e,foo10.10
em uma regra, SEM entradas DNS para os nomes de host usados:Usando o ProxyCommand para manipular o conteúdo de% h com o shell e conectando-se à porta correta por meio de um netcat. Dessa forma, você pode criar predefinições para a categoria de hosts, sem criar entradas individuais.
fonte