Имейте имена хостов твердости ssh от конфигурации при использовании ProxyCommand и netcat режима

С PuTTY настройте информацию о туннеле в соответствии с парнем сервера (Соединение-> SSH-> Туннели). Но используйте любое имя хоста и пользователя/пароль, что Вы были бы для "регулярного" соединения SSH, которое, как Вы говорите, хорошо работает.

Вам не нужны корневой вход в систему SSH сервера CentOS, просто Ваш собственный вход в систему SSH. Туннель позволяет Инструментальным средствам Mysql говорить с MySQL, как будто это работало на Вашей собственной локальной машине.

... или Вы говорите, что у Вас есть установленный туннель SSH, но Вы не можете войти успешно в MySQL?

16
21.09.2016, 03:52
1 ответ

Ничего себе, благодарит задать этот вопрос. Я нахожу редким видеть кого-то полностью использующего SSH, и этот вопрос совершает нападки на нескольких областях.

Это не a ProxyCommand проблема. ProxyCommand просто дает локальному ssh клиенту команду делать что-то в подготовке прежде, чем попытаться говорить с удаленным клиентом. Да, в нашем экземпляре мы говорим с другой ssh сессией, но той сессией, с -W просто берет наш вход и вперед это к другой машине. Можно думать о той предварительной ssh сессии, абсолютно независимо. Неизбежная автомобильная аналогия: Ваш автомобиль является тем же автомобилем, независимо от того, необходимо ли было ездить на пароме, чтобы заставить от точки указывать на B.

Это не a ForwardAgent проблема. ForwardAgent сделал, чтобы локальный клиент предоставил услугу, которая делает локальные ключи доступными в среде удаленного сеанса. Вы не закончили установление удаленного сеанса.

Это .ssh/config проблема формата. Отметьте вторые и третьи debug1 строки. Они перечисляют, какие строки файла конфигурации Хоста применяются от Вашего .ssh/config. Вы отмечаете это $ ssh target.example.com%via работы, но как неверное имя пользователя и ключ. Ну, строка файла конфигурации для Host target не читается (который ввел бы корректное имя пользователя и файл ключей). Какие строки файла конфигурации используются? * и *%via.

Как получить эти опции передать? Ну, достаточно интересный, подстановочный знак соответствует 0 строкам длины. Host target* будет соответствовать target, target%via, target.example.com и target.example.com%via.

И таким образом, Вы задаете вопрос, был бы, устанавливая .ssh/config на gateway справка машины. Нет, это не было бы. Это никогда не читалось бы. Все происходит от нашей локальной машины.

Все, что я объяснил, только отвечает почему $ ssh target.example.com%via не работает.

Вы предпочитаете $ ssh target%via. Справедливо так, это более удобно. Краткая форма перестала работать потому что как имя хоста, target не найден; это не решает. То, почему не, не является извергающим ssh: ssh: Could not resolve hostname target: Name or service not known? Поскольку ProxyCommand был уже успешно установлен. Элементы соединения SSH были созданы, но отказ имени хоста происходит, где он не ожидает, и таким образом, он разбомбит с более универсальным сообщением. Я зарегистрировал бы отчет об ошибках на этом, чтобы помочь определить, где отладочная информация могла быть улучшена.

Заключительный комментарий:

Мне действительно нравится Host *%via синтаксис. Это чисто, все же гибко. Я ранее видел Host *+* и это использует обоих первая и последняя часть %h(ost) определить, куда пойти. Но прилагает немного больше усилий получить Ваш ум вокруг этого. ссылка: http://wiki.gentoo.org/wiki/SSH_jump_host

14
27.01.2020, 19:49

Теги

Похожие вопросы