Как сказать ssh не проверять подлинность хоста соединения?
1465
amn
Я регулярно приходится подключаться к узлам за несколькими сетями VPN и поставщиков, адресуется как либо 10.0.0.*или 192.168.*.То есть, каждая VPN сеть свободна резервировать либо из этих диапазонов при подключении. По этой причине я не могу предположить привязать 10.0.0.*адрес к определенному хосту, потому что это будет зависеть от того, к какой VPN я подключен. Или даже вместо разрешения моего беспроводного маршрутизатора!
По этой причине я явно отключил строгую проверку ключей для хостов с этими адресами «интрасети», соответствующими приведенному выше, в моем ~/.ssh/config:
Я собрал эти инструкции, прибегая к помощи, а также читая другие ТАК вопросы и ответы.
Проблема заключается в том, что каждый раз, когда я подключаюсь к диапазонам адресов выше, например ssh 10.0.0.16, он говорит мне:
Warning: Permanently added '10.0.0.16' (RSA) to the list of known hosts.
что откровенно не соответствует действительности, в силу повсеместного /dev/null(которое я лично нахожу часто используемым как безобразный хакер) - нет постоянства добавления чего-либо /dev/null, не так ли? Это просто загромождает мой терминал и отталкивает меня каждый раз, когда я вижу его там.
Есть ли способ заставить ssh игнорировать отпечатки пальцев и не печатать запутанное сообщение выше? Я не хочу alias ssh='ssh 2>/dev/null'или что-нибудь безумное, как это. Я поступил об этом неправильно? Какой у меня есть выбор? Некоторые другие варианты, возможно? На /dev/nullмой взгляд, это взлом, и поэтому меня наказывают.
То, что я не хочу делать, это псевдоним узлов для некоторых имен хостов на стороне клиента в моем ~/.ssh/config, как в этом ответе . Это из-за двух причин:
Я не могу просто настроить ssh на использование псевдонима (используя Hostдирективу) для разрешения определенного адреса, например, потому что адреса повторно используются различными провайдерами VPN, к которым я подключаюсь - 10.0.0.15например, это может быть один хост при подключении к одной VPN и другой, когда подключен к другому VPN. Должен ли я «разделить» свой ~/.ssh/configна несколько, по одному для каждой VPN? И использовать эти файлы конфигурации соответственно?
Рассматриваемый узел может быть частью довольно большой группы узлов в той же интрасети, «облаком», как его называют в наши дни. Количество узлов может доходить до сотни. Я не совсем уверен, как «массово сопоставить» несколько таких узлов на их соответствующие адреса?
Таким образом, ваша единственная проблема сейчас заключается в том, как избавиться от этого сообщения после подключения?
Marki555 9 лет назад
0
Да, хотя тот факт, что я получаю сообщение, может означать, что я поступил неправильно. Еще не пробовал `CheckHostIP`.
amn 9 лет назад
0
Я попытался добавить `CheckHostIP = no` к правилу, приведенному выше, но, похоже, оно не имеет немедленного эффекта - я все еще получаю сообщение, как будто что-то было" постоянно "добавлено (в` / dev / null`). Именно потому, что я забочусь о безопасности в целом, это сообщение беспокоит меня, будучи ложным негативом и загромождая мое чтение информации в терминале.
amn 9 лет назад
0
sshd не позволяет отключить большинство своих функций безопасности (например, подключение с использованием нулевого шифра). Одна из возможностей - перекомпилировать sshd с отключенными этими проверками.
Marki555 9 лет назад
0
Ок, понятное решение. Должен ли я использовать `rsh` в этом случае, поскольку безопасность обеспечивается VPN-аутентификацией? Насколько я понимаю, это может быть именно то, что я хочу тогда?
amn 9 лет назад
0
Да, вы можете попытаться использовать `rsh`, если это разрешено вашими политиками безопасности ... Кстати, VPN защищает только ваше соединение с целевой локальной сетью, но не защищает вас от атак злоумышленников на этом LAN.
Marki555 9 лет назад
0
Вы также можете попробовать список рассылки openssh или, возможно, comp.security.ssh
barlop 9 лет назад
0
2 ответа на вопрос
1
davidgo
Игнорируя проверки подлинности, вы открываете себя атаке «человек посередине», так что вы можете пересмотреть.
Возможно, вы захотите изменить свою конфигурацию SSH, установив для CheckHostIP значение no, а затем настройте записи в файле хостов для каждого хоста и подключайтесь по имени, а не по хостам. (Обратите внимание, я не пробовал это, но я верю, что это будет работать). Вы посмотрите здесь.
Просто чтобы убрать это с дороги - я знаю о последствиях игнорирования проверок подлинности. Я полагаю, что эти последствия не имеют никакого значения в моем случае, поскольку вся возможность доступа к узлам за упомянутыми адресами впервые устанавливается после подключения к VPN через туннельную аутентификацию SSL (клиент VMWare VPN). Кроме того, я подозреваю, что само VPN-соединение имеет SSL-туннелирование.
amn 9 лет назад
0
У меня есть целая последовательность узлов, которые являются частью «облака» обработки, и создание псевдонимов для каждого из них невозможно. Они также никак не связаны с моей службой DNS, поэтому, если я не помечаю их, единственный способ связаться с ними - через IP-адреса. Должен ли я понять, что SSH не может просто оставить всю свою проверку host-ip в одиночку? Похоже, что его можно частично обойти, но все это имеет ограниченную полезность, в то время как актуальная проблема ядра - установление SSH-соединения с сервером, который «роуминг» через пространство IP-адресов - не может быть легко решена?
amn 9 лет назад
0
1
SoysauceShow
Я знаю, что это старый вопрос, но я искал ответ на этот вопрос. Так что для любого будущего гуглера, вот что я нашел.