SSH — это безопасный сетевой протокол, который создает зашифрованный туннель между системами. Он по-прежнему популярен среди разработчиков, которым необходим удаленный доступ к компьютерам без графического пользовательского интерфейса. Хотя SSH существует уже несколько десятилетий и надежно обслуживает бесчисленное количество пользователей, на него все еще могут влиять определенные ошибки.
Многие из этих ошибок стали хорошо известны в сообществе SSH, и их обходные пути широко документированы. К ним относятся несовместимость брандмауэра, Проблемы с внедрением открытого ключа SSH, Проблемы с режимом ключа файла SSHи ошибка «Предупреждение: идентификация удаленного хоста изменилась».
Эта ошибка возникает во всех основных операционных системах, включая Windows, Linux и macOS. Источником проблемы может быть законная проблема безопасности, а не простой технический сбой. В этой статье мы объясним, почему это происходит, что это означает для безопасности вашего SSH-соединения и как решить эту проблему на каждой основной платформе.
Что вызывает предупреждение: идентификация удаленного хоста изменилась (и стоит ли беспокоиться?)
«Предупреждение: идентификация удаленного хоста изменилась» появляется, когда открытый ключ SSH хранится в вашем известные_хосты файл не соответствует ключу, который в данный момент представляет сервер. Это несоответствие запускает встроенный механизм безопасности SSH, который защитит вас от потенциальных угроз.
Законные причины для изменения ключа хоста
Несколько невинных причин объясняют, почему ключ хоста сервера может измениться. Иногда вы увидите такие варианты, как «Ключ хоста RSA изменился», в зависимости от конкретного используемого типа ключа.

Изменения, связанные с сервером:
- Операционная система сервера была переустановлена или обновлена.
- Сервер был пересобран или восстановлен из резервной копии
- Конфигурация SSH сервера была сброшена.
- Физическая или виртуальная машина была заменена
- Миграция сервера на новое оборудование
Изменения конфигурации сети:
- Облачные провайдеры со временем перерабатывают IP-адреса, или ваше соединение маршрутизируется через балансировщик нагрузки.
- DHCP переназначил IP-адрес другому компьютеру
- IP выведенного из эксплуатации сервера был присвоен новой системе
- Записи DNS были обновлены и теперь указывают на другой сервер.

Ключевые действия руководства:
- Системные администраторы вручную повторно сгенерировали ключи хоста в целях безопасности.
- Программное обеспечение SSH-сервера было переустановлено.
- Политики безопасности требуют ротации ключей
Важно понимать, что изменения пароля пользователя не влияют на ключи хоста. Они представляют собой отдельные механизмы аутентификации. Ключи хоста изменяются только при изменении самого сервера или его конфигурации SSH.
Когда следует серьезно отнестись к предупреждению
Хотя многие изменения ключей хоста являются законными, это может указывать на реальную угрозу безопасности. Вам следует насторожиться, если:
- Вы не вносили никаких изменений на сервер и не знали о каких-либо плановых обслуживаниях.
- Вы не можете уточнить причину смены ключа у администратора сервера.
- Доступ к серверу осуществляется через общедоступные сети или ненадежные соединения.
- Вы подключаетесь к производственным системам или серверам, содержащим конфиденциальные данные.

Атаки «человек посередине», хотя и относительно редки, все же случаются. При таких атаках злоумышленник располагается между вашим компьютером и законным сервером, перехватывая весь трафик.
Человеческая ошибка На долю социальной инженерии приходится 68% нарушений безопасности, что делает бдительность ключевым моментом. Вы можете дополнительно защитить свои системы, узнав о предотвращение атак грубой силы.
Недавние статистические данные IBM показывают, что средняя глобальная стоимость утечка данных в 2025 году составила 4,44 миллиона долларов, а время обнаружения составило в среднем восемь месяцев. Это демонстрирует, почему существует механизм проверки ключа хоста SSH и почему никогда не следует игнорировать эти предупреждения без расследования.
Как проверить, безопасно ли предупреждение
Прежде чем приступить к устранению проблемы, выполните следующие действия по проверке:

- Узнайте у своей команды: Если вы предоставляете общий доступ к серверу, спросите коллег, внесли ли они изменения.
- Просмотрите журналы сервера: Проверьте записи обслуживания или журналы изменений на предмет недавних действий.
- Свяжитесь с вашим хостинг-провайдером: При использовании облачных сервисов проверьте, проводилось ли техническое обслуживание.
- Используйте безопасный канал: Если возможно, подключитесь через известную безопасную сеть, чтобы проверить отпечаток пальца.
- Сравните отпечатки пальцев: Некоторые хостинг-провайдеры отображают текущие отпечатки SSH на своих панелях управления.
Если вы можете подтвердить, что изменение ключа было законным, вы можете безопасно удалить старый ключ и принять новый.
Если вы хотите избежать динамического переназначения IP-адресов или конфликтов ключей хоста, выбранная вами инфраструктура играет большую роль.
Cloudzy предоставляет SSH VPS-хостинг с выделенными статическими IP-адресами. Вы работаете на процессорах AMD Ryzen 9 с хранилищем NVMe для мгновенного выполнения команд. Наша сеть достигает 40 Гбит/с в 12 точках по всему миру. Кроме того, мы включаем бесплатную защиту от DDoS, чтобы обеспечить безопасность вашего соединения.
Как исправить ошибку «Идентификация удаленного хоста изменилась»
Исправить это просто: удалите старую запись ключа из вашей системы. Это устранит несоответствие и позволит вам сохранить новый ключ при следующем подключении. Ознакомьтесь с нашим руководством по SSH-клиенты для получения дополнительных инструментов.
Кроме того, вы можете сделать это с помощью одной команды или отредактировав файл вручную.
Способ 1: командная строка (самый быстрый)
Этот метод работает для macOS, Linux и Windows 10+ (с использованием OpenSSH). Это самый быстрый способ устранить ошибку. Для получения дополнительной информации вы можете прочитать Справочная страница ssh-keygen.
- Откройте свой терминал.
- Запустите эту команду (замените имя хоста с IP-адресом или доменом вашего сервера):
ssh-keygen -R hostname
This command automatically finds the old key in your known_hosts file and deletes it. Method 2: Manual File Editing (macOS)
Если вы предпочитаете визуальный редактор, вы можете удалить ключ самостоятельно. В сообщении об ошибке обычно указывается, какой именно номер строки следует удалить.
Откройте терминал и отредактируйте файл с помощью Нано:
nano ~/.ssh/known_hosts
Найдите строку в сообщении об ошибке. Удалите его, затем нажмите Ctrl + Х и Y чтобы сохранить.

Решение для Windows
Пользователи Windows обычно используют либо встроенный клиент OpenSSH, либо PuTTY.
Вариант 1: Windows OpenSSH (Windows 10/11)
В Windows 10 и 11 OpenSSH является дополнительной функцией. Добавьте его через «Настройки» > «Приложения» > «Дополнительные функции». Сервер 2025 включает клиент, но его необходимо включить.
Если вы используете PowerShell или командную строку, ssh-кейген Команда из метода 1 работает и здесь.
Вместо этого, чтобы отредактировать файл вручную:
- Нажимать Клавиша Windows + Р.
- Тип %USERPROFILE%\.ssh и нажмите Входить.
- Откройте известные_хосты файл с помощью Блокнота.
- Удалите строку, вызывающую ошибку, и сохраните файл.
Для правильного управления ключами см. наше руководство по создание ключей SSH в Windows.
Вариант 2: Использование PuTTY
PuTTY хранит ключи в реестре Windows, а не в файле.
- Откройте редактор реестра (нажмите Клавиша Windows + Р, тип regeditи ударил Входить).
- Перейдите к: HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys\
- Найдите запись, соответствующую имени хоста или IP-адресу вашего сервера.
- Щелкните его правой кнопкой мыши и выберите Удалить.

Решение для Linux
The ssh-кейген команда, которую мы рассмотрели Способ 1 это стандартный способ исправить это в Linux. Он быстрый и имеет встроенную поддержку.
Ручное редактирование
Если вы предпочитаете видеть содержимое файла, вы можете отредактировать его с помощью текстового редактора, такого как Nano.
- Откройте свой терминал.
- Тип нано ~/.ssh/known_hosts и нажмите Входить.
- Найдите номер строки, указанный в сообщении об ошибке.
- Удалите строку, затем нажмите Ctrl + Х и Y чтобы сохранить.
Вы также можете использовать Вим (vim ~/.ssh/known_hosts), если вы с ним знакомы.

Предупреждение об отключении проверок
Вы можете заставить SSH подключаться без проверки, но это рискованно. Он обходит защиту от атак «человек посередине».
Используйте этот подход только для локального тестирования в доверенных сетях. Для macOS и Linux введите следующее:
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null [email protected]
Если вы используете Windows, путь Unix не работает. Вы должны использовать НУЛ чтобы обход работал:
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=NUL [email protected]
Не запускайте эти переопределения на общедоступных подключениях или работающих серверах.
Исправление несоответствий ключей — это обычное обслуживание, но вы можете сделать больше для защиты соединения. Боты часто атакуют порт 22 по умолчанию с помощью грубой силы. Вы можете избежать большей части этого фонового шума, если изменение портов SSH в Linux к чему-то менее предсказуемому.

Никогда не используйте этот метод для рабочих серверов или в ненадежных сетях.
Как предотвратить появление сообщения «Идентификация удаленного хоста изменилась» в следующий раз
Хотя вы не всегда можете предотвратить законное изменение ключа хоста, вы можете свести к минимуму сбои и поддерживать более эффективные методы обеспечения безопасности.
Краткое справочное руководство
| Ваша роль | Ключевые стратегии |
| Системные администраторы | Создавайте резервные копии ключей, документируйте изменения, используйте сертификаты и регулярно меняйте ключи. |
| Обычные пользователи | Поддерживайте инвентарь, проверяйте по безопасным каналам и отслеживайте журналы. |
| Облачная среда
Пользователи |
Используйте DNS-имена, используйте инструменты поставщиков и реализуйте инфраструктуру как код. |

Для системных администраторов
Резервное копирование ключей хоста: Сохранить ключи от /etc/ssh/ перед переустановкой ОС. Восстановите их впоследствии, чтобы предотвратить появление предупреждений для ваших пользователей.
Запланированные изменения документа: Предупреждайте пользователей перед сменой ключей и безопасно делитесь новыми отпечатками пальцев. Это позволяет им проверить соединение.
Используйте SSH-сертификаты: Большим командам следует использовать центральный центр сертификации. Это подписывает ключи хоста и устраняет необходимость ручной проверки.
Реализация ротации ключей: Запланируйте изменение ключа хоста. Вашей команде легче справиться с предсказуемыми обновлениями, чем с неожиданными.
Для обычных пользователей
Ведение инвентаря: Ведите личный учет отпечатков пальцев сервера или используйте защищенную документацию вашей команды.
Проверка через внеполосное соединение: Подтверждайте ключи в надежном источнике, таком как облачная консоль, а не в случайных сообщениях.
Журналы мониторинга: Регулярно проверяйте локальные журналы SSH на предмет странных шаблонов подключения или повторяющихся ошибок.
Используйте управление конфигурациями: Используйте файлы конфигурации SSH для работы с динамическими средами разработки без снижения настроек безопасности.
Для динамических облачных сред
Используйте DNS-имена: Подключайтесь, используя имена хостов, а не IP-адреса. Это обеспечивает согласованность при изменении базового адреса.
Используйте облачные инструменты: Используйте консоли провайдера для получения текущих отпечатков пальцев. Прежде чем принимать изменения, проверьте ключи с помощью этих инструментов.
Инфраструктура как код: Автоматизируйте проверку ключей с помощью таких инструментов, как Terraform. Для расширенных настроек вы также можете использовать SSH SOCKS5-прокси.
Хозяева Бастиона: Настройте серверы перехода со стабильными ключами. Они действуют как безопасные точки входа в вашу динамическую инфраструктуру.
Заключение
«Предупреждение: идентификация удаленного хоста изменилась» служит важной функцией безопасности SSH, а не недостатком, который следует игнорировать. Хотя это предупреждение часто появляется по законным причинам, таким как обслуживание сервера или изменение конфигурации, оно играет ключевую роль в защите вас от атак типа «посредник» и несанкционированного доступа.
При появлении этого предупреждения проверьте причину, прежде чем продолжить. В большинстве случаев решение простое: удалите старый ключ хоста, используя методы, описанные для вашей операционной системы, а затем примите новый ключ при следующем подключении.
Изучив, как работают ключи хоста SSH, и следуя передовым практикам, вы сможете обеспечить безопасность и удобство рабочих процессов удаленного доступа. Дополнительную информацию о безопасной передаче файлов см. копирование файлов через SSH.