Digamos que eu queira configurar minhas ssh
opções para 30 servidores com a mesma configuração no meu .ssh
config
arquivo:
host XXX
HostName XXX.YYY.com
User my_username
Compression yes
Ciphers arcfour,blowfish-cbc
Protocol 2
ControlMaster auto
ControlPath ~/.ssh/%r@%h:%p
IdentityFile ~/.ssh/YYY/id_rsa
onde a única coisa que muda entre essas 30 máquinas é XXX
.
Em vez de repetir a estrutura acima 30 vezes no meu config
arquivo, existe outra maneira de definir um intervalo de máquinas?
%h
recurso apareceu na versão 5.6 do OpenSSH . Fiquei me perguntando por que eu não tinha visto isso antes - a versão no Debian Squeeze é 5.5.config
, sempre poderá escrever um script simples que gere o seuconfig
.Para minimizar a configuração, você pode ter um
.ssh/config
como esteHost X01 X02 ...
poderia ser substituído porHost *
se cada host tiver a seguinte configuraçãofonte
Host X01 X02 ...
ser substituído por*.YYY.com
? Isso parece um pouco mais gerenciável se funcionar.Basta usar
*
Veja
man ssh_config
:fonte
?
sempre que quero que seja substituído pelo padrão correspondente ao*
sinal?config
entrada, mas os parâmetros do Host são fixos (ou seja, os padrões não podem ser usados para modelar os parâmetros). Estou errado?Host *
entrada e ter uma entrada separada para cada umaHost XXX
que consiste apenas nas partes que variam (ou seja, naHostname XXX.YYY.ZZZ
linha).Das respostas de Ignacio Vazquez-Abrams e H.-Dirk Schmitt, pode-se adicionar o seguinte a .ssh / config
e, por exemplo, você pode fazer login como [email protected]
fonte
%h
, não%h.YYY.com
isso funciona para mim:
isso permite usar nomes no domínio e alterar o nome de usuário:
fonte
itslogprd05
existir um host nos dois domínios?xxx.auckland.ac.nz
vitórias, eu acho?