У меня есть несколько серверов с «да», другие - с «нет» (я обнаружил эту опцию только сегодня).
Преимущества HashKnownHosts нет в том, что я могу легче поддерживать файл known_hosts.
Каковы фактические преимущества использования HashKnownHosts да?
У меня есть несколько серверов с «да», другие - с «нет» (я обнаружил эту опцию только сегодня).
Преимущества HashKnownHosts нет в том, что я могу легче поддерживать файл known_hosts.
Каковы фактические преимущества использования HashKnownHosts да?
Ответы:
Файл known_hosts представляет небольшую угрозу безопасности. Содержит удобный список всех серверов, к которым вы подключаетесь. Злоумышленнику, получившему доступ к вашему паролю или незашифрованному закрытому ключу, нужно просто пройти по списку, пока ваши учетные данные не будут приняты. Хеширование разрешает это или, по крайней мере, запутывает список.
С открытым текстом known_hostsзлоумышленники легко узнают, к каким серверам вы подключаетесь. Есть статья и статья MIT о потенциальном ssh-черве, использующем читабельный known_hosts. Конечно, обычно есть другие, но более громоздкие способы определения ваших ежедневных входов в систему по ssh, таких как история оболочки, которые может использовать злоумышленник.
Обратите внимание, что вы все еще можете работать со своим хэшем, known_hostsиспользуя ssh-keygenслужебную программу:
ssh-keygen -F myhost # shows myhosts's line in the known_hosts file
ssh-keygen -l -F myhost # additionally shows myhost's fingerprint
ssh-keygen -R myhost # remove myhost's line from known_hosts
Этой, особенно последней команды, должно быть достаточно для 99% случаев, когда пользователям действительно необходим доступ known_hosts. Вы, конечно, потеряете завершение работы с ssh.
Также обратите внимание, что параметры командной строки ssh-keygenчувствительны к регистру
Также есть актуальный вопрос на unix.SE.