Sobes.tech
Back to questions
Junior — Middle
70

Каким образом осуществляется проверка подлинности сервера во время установки соединения через SSH?

Answer from AI

sobes.tech AI

Проверка подлинности сервера при установке SSH-соединения происходит через механизм проверки его публичного ключа.

Когда клиент подключается к серверу, сервер отправляет свой публичный ключ. Клиент сравнивает этот ключ с ключами, сохранёнными в файле ~/.ssh/known_hosts. Если ключ совпадает, соединение продолжается. Если ключ новый или изменился, клиент предупреждает пользователя о возможной атаке "man-in-the-middle".

Таким образом, доверие к серверу устанавливается через проверку его публичного ключа, что предотвращает подмену сервера злоумышленником.

Пример проверки ключа:

ssh user@server
# При первом подключении будет запрос подтверждения ключа:
# The authenticity of host 'server (IP)' can't be established.
# Are you sure you want to continue connecting (yes/no)?

Если пользователь вводит "yes", ключ сохраняется в known_hosts для последующих проверок.