Есть ли простой способ получить IP-адрес HostName
из конфигурации SSH в командной строке? Много раз мне приходилось пользоваться scp
и хотелось бы подключиться к машине, но я помню только HostName.
command-line
ssh
scp
m33lky
источник
источник
.ssh/config
и/etc/ssh/ssh_config
. есть ли причина, по которой вы не можете использовать псевдонимы, определенные в конфигурации?Ответы:
scp прочтет ваши
~/.ssh/config
и/etc/ssh/ssh_config
. до тех пор, пока вы используете scp в / из имени одного из псевдонимов хоста в вашей конфигурации ssh, он должен работать.так как это кажется коротким ответом, вот еще немного информации о том, что вы можете сделать с помощью вашей конфигурации ssh ...
Вот пост, который описывает некоторые из расширенных возможностей конфигурационного файла ssh: http://magazine.redhat.com/2007/11/27/advanced-ssh-configuration-and-tunneling-we-dont-need-no- вонючий-VPN программное обеспечение /
Нужно туннелировать ssh / scp через http прокси? нет проблем, просто используйте шаги, изложенные здесь: http://www.mtu.net/~engstrom/ssh-proxy.php
Другое использование опции ProxyCommand: http://jasonmc.wordpress.com/2008/04/16/ssh-magic/
источник
Чтобы сопоставить
host
аргумент, указанный в командной строке, с записью ssh_config,hostname
легко использоватьssh
себя.Вы можете попросить его оценить и распечатать то, что он будет использовать для конфигурации командной строки, без фактического подключения. Затем вам просто нужно извлечь то, для чего он перечисляет
hostname
(обратите внимание, что он канонизирует имена ключей конфигурации путем преобразования их в нижний регистр). Простой пример:Если .ssh / config содержит:
Это распечатает
database.example.com
.Чтобы проверить его, вы можете, конечно, оценить вывод и использовать его в качестве аргумента:
источник
Там нет необходимости делать это
scp
, но вы можете использоватьssh
трассировки отладки.источник
Как правило, вы можете сделать,
host HostName
и вы получите IP-адрес.Если
host
не установлен (это должно быть), вы можете использоватьnslookup HostName 8.8.8.8
который будет использовать DNS-серверы Google для поиска.Для этого необходимо, чтобы резолвер вашего компьютера имел правильную конфигурацию (в файле /etc/resolv.conf и, возможно, /etc/nsswitch.conf), или вы должны использовать «полное доменное имя», в комплекте с хостом, domaiin и "TLD" (суффикс .org, .com, .net такого рода).
источник
~/.ssh/config
, что, как я понимаю, является смыслом этого вопроса.HostName
- это произвольный псевдоним, а не имя домена.использовать фиктивную ProxyCommand ...
источник