Когда вы делаете сеанс SSH, задействуются две разные пары ключей (с отпечатком для каждой пары). Одним из них является ключ пользователя, который хранится в ~/.ssh
. Идентификатор ключа SSH пользователя иногда используется в качестве учетных данных для входа на другой компьютер (если вы настроили регистрацию на основе ключа).
Другой - это ключ сервера SSH. Это ключ, который вы видите отпечаток пальца при первом подключении к другому серверу. Идентификатор этого ключа используется для того, чтобы убедиться, что вы входите на сервер SSH, на который вы собираетесь. Это важно, если вы используете пароли, потому что вы не захотите случайно попытаться войти на компьютер злоумышленника: злоумышленник получит ваш пароль, когда вы введете его. Затем злоумышленник сможет войти на компьютер, на котором вы входили. к! (это известно как «человек в середине атаки» ) . Ключи, которые SSH-сервер использует для идентификации себя, когда вы входите в него, расположены /etc/ssh/
и обычно называются как-то так ssh_host_rsa_key
.
Вы можете фактически изменить, где сервер SSH ищет ключ в файле с настройкой./etc/ssh/sshd_config
HostKey /path/to/host/key
По умолчанию ssh-keygen
будет создан ключ для текущего пользователя, который по умолчанию будет храниться в ~/.ssh
. Формат ключа пользователя и ключа сервера одинаков; разница в том, где они находятся и /etc/ssh/sshd_config
имеет ли HostKey
директива, указывающая на них. Когда вы устанавливаете пакет openssh-server, он автоматически генерирует ключи для использования сервером. Вот откуда пришли ключи с неизвестным отпечатком. Если вы хотите увидеть отпечаток ключа сервера SSH (RSA *), вы можете запустить ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub
.
* Существуют разные алгоритмы шифрования. Каждый использует свой ключ. Наиболее распространенными являются DSA (слабый), RSA (старый по умолчанию) и ECDSA (новый по умолчанию).