Existe uma maneira simples de recuperar o IP de um HostName
de uma configuração ssh na linha de comando? Muitas vezes tenho que usar scp
e gostaria de me conectar a uma máquina, mas lembro apenas do HostName.
command-line
ssh
scp
m33lky
fonte
fonte
.ssh/config
e/etc/ssh/ssh_config
. existe uma razão para você não poder scp pelos aliases definidos na configuração?Respostas:
O scp lerá o seu
~/.ssh/config
e/etc/ssh/ssh_config
. contanto que você scp para / do nome de um dos aliases de host na sua configuração ssh, ele deve funcionar.como isso parece meio curto para ser uma resposta, aqui estão mais algumas informações sobre o que você pode fazer com a sua configuração ssh ...
Aqui está uma publicação que descreve alguns dos recursos avançados do arquivo de configuração ssh: http://magazine.redhat.com/2007/11/27/advanced-ssh-configuration-and-tunneling-we-dont-need-no- stinking-vpn-software /
Precisa encapsular o ssh / scp através de um proxy http? não tem problema, basta seguir as etapas descritas aqui: http://www.mtu.net/~engstrom/ssh-proxy.php
Outro uso da opção ProxyCommand: http://jasonmc.wordpress.com/2008/04/16/ssh-magic/
fonte
Mapear do
host
argumento fornecido na linha de comando para ahostname
entrada ssh_config é fácil de usarssh
.Você pode pedir para avaliar e imprimir o que seria usado para a configuração de uma linha de comando, sem realmente conectar. Em seguida, basta retirar o que está listado
hostname
(observe que ele canoniza os nomes das chaves de configuração convertendo-os para minúsculas). Um exemplo simples é:Se .ssh / config contiver:
Isso será impresso
database.example.com
.Para fazer o ping, é claro que você pode avaliar a saída e usá-la como argumento:
fonte
Não é necessário fazer isso
scp
, mas você pode usarssh
os rastreamentos de depuração.fonte
Normalmente, você pode fazer
host HostName
e obterá o endereço IP.Se
host
não estiver instalado (deve ser), você podenslookup HostName 8.8.8.8
usar os servidores DNS do Google para fazer a pesquisa.Para fazer isso, o resolvedor da sua máquina precisa ter uma configuração correta (no arquivo /etc/resolv.conf e talvez /etc/nsswitch.conf) ou você precisa usar um "nome de domínio totalmente qualificado", completo com o host, domaiin e "TLD" (.org, .com, .net esse tipo de sufixo).
fonte
~/.ssh/config
, o que eu entendo ser o ponto desta pergunta.HostName
é um alias arbitrário, não um nome de domínio.use um ProxyCommand falso ...
fonte