Сотрудник постоянно упоминает, что ключи SSH связаны с IP-адресом, но я не уверен, что именно это означает. Итак, я попытался сгенерировать SSH-ключ, и в конце файла было имя моего хоста. Это обсуждение может начаться, когда мы говорили о совместном использовании ключа хоста между несколькими хостами, а здесь ключ хоста не имел никакого DNS или IP-адреса хоста. Могут ли некоторые объяснить мне, как dns / ip-адрес в файле ключей хоста связан с самим ключом и что означает его отсутствие? Спасибо.
IP-адрес или имя хоста в конце ключа - это просто комментарий. По умолчанию там записывается ваше имя пользователя и имя хоста, на котором был сгенерирован ключ, но они игнорируются в целях аутентификации.
Если вы хотите заблокировать авторизованный ключ ssh, чтобы его можно было использовать только с определенных хостов, вы можете поместить его в свой authorized_keys
файл:
from="192.168.0.0/24" ssh-rsa BLAHBLAHYOURKEYGOESHERE someone@somewhere
^^^^^^^^^^^^^^^^^ -- comment
Непонятно, какой из многих файлы, связанные с ssh вы имеете в виду, но тот, который собирает и хранит адреса, является known_hosts
(~ / .ssh / known_hosts и, если настроен / etc / ssh / known_hosts) file./ В нем хранятся ключи для хостов, к которым вы подключились, и он используется для предотвращения атак посредника.
Когда вы подключаетесь через ssh к удаленному хосту, он отправляет вам открытый ключ. Ваш ssh-клиент проверит known_hosts:
Если вы ранее подключались, он сравнит только что отправленный ключ с тем, который был сохранен ранее.
Если вы ранее не подключались, ваш клиент отобразит отпечаток удаленного хоста и попросит вас подтвердить его подлинность.