SSH — це безпечний мережевий протокол, який створює зашифрований тунель між системами. Він залишається популярним серед розробників, яким потрібен віддалений доступ до комп’ютерів без графічного інтерфейсу користувача. Хоча SSH існує десятиліттями та надійно обслуговує незліченну кількість користувачів, на нього все ще можуть впливати певні помилки.
Багато з цих помилок стали добре відомі в спільноті SSH, а способи їх вирішення широко задокументовані. До них відносяться несумісність брандмауера, Проблеми з ін’єкцією відкритого ключа SSH, Проблеми з режимом ключа файлу SSHі помилка «Попередження: ідентифікація віддаленого хоста змінена».
Ця помилка виникає в усіх основних операційних системах, включаючи Windows, Linux і macOS. Джерелом проблеми може бути законна проблема безпеки, а не простий технічний збій. У цій статті ми пояснимо, чому це відбувається, що це означає для безпеки з’єднання SSH і як це вирішити на кожній основній платформі.
Що викликає попередження: ідентифікація віддаленого хоста змінилася (чи варто хвилюватися?)
«Попередження: ідентифікація віддаленого хоста змінено» з’являється, коли відкритий ключ SSH, збережений у вашому відомі_хости файл не відповідає ключу, який зараз представляє сервер. Ця невідповідність запускає вбудований механізм безпеки SSH, щоб захистити вас від потенційних загроз.
Законні причини зміни ключа хоста
Кілька невинних причин пояснюють, чому ключ хоста сервера може змінитися. Іноді ви побачите такі варіанти, як «Ключ хосту RSA змінився», залежно від конкретного типу ключа, який використовується.

Зміни, пов'язані з сервером:
- Операційну систему сервера було перевстановлено або оновлено
- Сервер було перебудовано або відновлено з резервної копії
- Конфігурацію SSH сервера було скинуто
- Було замінено фізичну або віртуальну машину
- Міграція сервера на нове обладнання
Зміни конфігурації мережі:
- Хмарні постачальники переробляють IP-адреси з часом або маршрути вашого з’єднання через балансувальник навантаження.
- DHCP перепризначив IP-адресу іншій машині
- IP-адресу виведеного з експлуатації сервера було призначено новій системі
- Записи DNS оновлено, щоб вказати на інший сервер

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

Напади типу «людина посередині» трапляються, хоча й відносно рідко. Під час таких атак зловмисник розташовується між вашим комп’ютером і законним сервером, перехоплюючи весь трафік.
Людська помилка і соціальна інженерія є причиною 68% порушень безпеки, що робить пильність ключовою. Ви можете додатково захистити свої системи, дізнавшись про запобігання атак грубою силою.
Останні статистичні дані IBM показують, що середня глобальна вартість a порушення даних становила 4,44 мільйона доларів у 2025 році, а час виявлення становив у середньому вісім місяців. Це демонструє, чому існує механізм перевірки ключа хоста 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 + X і Y зберегти.

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

Рішення для Linux
The ssh-keygen команда, яку ми розглядали Спосіб 1 це стандартний спосіб виправити це в Linux. Він швидкий і підтримується нативно.
Ручне редагування
Якщо ви бажаєте переглядати вміст файлу, ви можете редагувати його за допомогою текстового редактора, наприклад Nano.
- Відкрийте свій термінал.
- Тип nano ~/.ssh/відомі_хости і натисніть Введіть.
- Знайдіть номер рядка, згаданий у вашому повідомленні про помилку.
- Видаліть рядок, потім натисніть Ctrl + X і Y зберегти.
Ви також можете використовувати Vim (vim ~/.ssh/відомі_хости), якщо ви з ним знайомі.

Попередження про відключення перевірок
Ви можете змусити 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: Великі команди повинні використовувати центральний центр сертифікації. Це підписує ключі хосту та усуває потребу в ручній перевірці.
Запровадити ротацію ключів: Заплануйте зміни ключа хоста. Вашій команді легше впоратися з передбачуваними оновленнями, ніж з несподіваними.
Для постійних користувачів
Ведіть інвентаризацію: Ведіть особистий облік відбитків пальців сервера або використовуйте безпечну документацію вашої команди.
Перевірити за допомогою Out-of-Band: Підтверджуйте ключі з надійного джерела, наприклад хмарної консолі, а не звичайних повідомлень.
Журнали моніторингу: Регулярно перевіряйте локальні журнали SSH на наявність дивних шаблонів з’єднання або повторюваних помилок.
Використовуйте керування конфігурацією: Використовуйте конфігураційні файли SSH для роботи з динамічними середовищами розробки без зниження налаштувань безпеки.
Для динамічних хмарних середовищ
Використовуйте імена DNS: Підключайтеся за допомогою імен хостів, а не IP-адрес. Це забезпечує узгодженість, коли основна адреса змінюється.
Використовуйте хмарні інструменти: Використовуйте консолі постачальника, щоб отримати поточні відбитки пальців. Перш ніж приймати зміни, перевірте ключі на відповідність цим інструментам.
Інфраструктура як код: Автоматизуйте перевірку ключів за допомогою таких інструментів, як Terraform. Для розширених налаштувань ви також можете використовувати проксі SSH SOCKS5.
Господарі Bastion: Налаштуйте сервери переходу зі стабільними ключами. Вони діють як безпечні точки входу до вашої динамічної інфраструктури.
Висновок
«Попередження: ідентифікація віддаленого хоста змінено» є важливою функцією безпеки SSH, а не недоліком, який слід ігнорувати. Хоча це попередження часто з’являється з законних причин, як-от обслуговування сервера або зміни конфігурації, воно відіграє ключову роль у захисті вас від атак типу «людина посередині» та неавторизованого доступу.
Якщо ви натрапили на це попередження, перевірте причину, перш ніж продовжувати. У більшості випадків рішення просте: видаліть старий ключ хоста, використовуючи методи, описані для вашої операційної системи, а потім прийміть новий ключ під час наступного підключення.
Дізнавшись, як працюють ключі хосту SSH, і дотримуючись найкращих практик, ви зможете підтримувати безпеку та зручність робочих процесів віддаленого доступу. Щоб дізнатися більше про безпечне перенесення файлів, див копіювання файлів через SSH.