Ошибка SSH Connection refused: сервер отказывает в подключении
По этому адресу ответили, но подключение к порту SSH отклонили: там никто не принимает подключения или фаервол отвечает отказом. Дело не в пароле и не в ключе — до входа ssh не дошёл.
Содержание 10
Что сделать прямо сейчас
- Проверьте IP в команде и сверьте его с панелью провайдера.
- Если сервер только что создан или перезагружен, подождите пару минут и попробуйте снова.
- Если SSH на сервере работает на другом порту, укажите его:
ssh -p 2222 root@ВАШ_IP. - Если не помогло, зайдите на сервер через консоль в панели провайдера и проверьте службу SSH.
Как это сделать, рассказано в разделах «Шаг 3. Проверьте службу SSH через консоль» и «Шаг 4. Проверьте фаервол на сервере».
Вместо ВАШ_IP подставьте адрес своего сервера из панели провайдера. В примерах вывода стоит адрес 203.0.113.10 — у вас будет свой IP.
Что значит эта ошибка
ssh: connect to host 203.0.113.10 port 22: Connection refusedПо этому адресу кто-то ответил, но подключение к порту 22 отклонил. Это значит, что на этом порту никто не принимает подключения: например, сервер SSH не запущен или работает на другом порту. Отказ может прислать и фаервол на сервере, если для порта в нём стоит правило «отклонять».
Чем эта ошибка отличается от соседних:
- Connection refused — ответ есть, но это отказ;
- Connection timed out — ответа нет вовсе, см. страницу про таймаут;
- Permission denied — подключение прошло, но не подошёл ключ или пароль, см. Permission denied (publickey).
Шаг 1. Проверьте адрес и порт
Сверьте IP с панелью провайдера, цифра в цифру. С опечаткой вы стучитесь на чужой адрес, и отказ присылает чужой сервер.
По умолчанию ssh подключается к порту 22. Если вы или ваш администратор переносили SSH на другой порт, укажите его через -p:
ssh -p 2222 root@ВАШ_IPПорт через двоеточие (root@ВАШ_IP:2222) ssh не понимает — получится другая ошибка, Could not resolve hostname.
Шаг 2. Подождите, если сервер загружается
Сразу после создания, перезагрузки или переустановки системы сервер SSH запускается не мгновенно. Подождите пару минут и повторите команду. Включён ли сервер, видно в панели провайдера.
Шаг 3. Проверьте службу SSH через консоль
Если отказ повторяется, зайдите на сервер через консоль в панели провайдера — она работает, даже когда SSH сломан. Посмотрите состояние службы SSH:
sudo systemctl status sshВ строке Active написано, работает ли служба: active (running) — работает, failed — не смогла запуститься или упала. Под этой строкой команда показывает последние записи журнала службы, по ним можно понять причину. Если вывод открылся в режиме просмотра и приглашение не вернулось, нажмите q.
Если там не active (running), сначала проверьте файлы настроек: с ошибкой в них служба не запустится.
sudo sshd -tЕсли ошибок нет, команда ничего не выведет. Если есть, она назовёт файл и номер строки, например:
/etc/ssh/sshd_config: line 8: Bad configuration option: StrictMods
/etc/ssh/sshd_config: terminating, 1 bad configuration optionsЗдесь в строке 8 опечатка в названии настройки. Откройте названный файл в редакторе nano, исправьте строку и сохраните:
sudo nano /etc/ssh/sshd_configСнова выполните sudo sshd -t. Когда команда ничего не выведет, перезапустите службу. Если служба была остановлена, эта команда её запустит:
sudo systemctl restart sshЕсли systemctl отвечает, что службы ssh нет, сервер SSH не установлен. Поставьте его:
sudo apt update
sudo apt install openssh-serverШаг 4. Проверьте фаервол на сервере
Фаервол ufw отвечает отказом, если для порта SSH в нём стоит правило reject («отклонить»). Посмотрите правила:
sudo ufw statusВ колонке To — порт или название (22, 22/tcp, OpenSSH), в колонке Action — что с ним делать. Если у порта SSH там REJECT, удалите это правило: напишите delete, затем действие и то, что стоит в колонке To. Например:
sudo ufw delete reject 22/tcpЗатем разрешите SSH. Эта команда нужна и тогда, когда правила для SSH в списке нет совсем:
sudo ufw allow OpenSSHЕсли SSH работает на другом порту, разрешите его номер: sudo ufw allow 2222/tcp. Подробнее о ufw — фаервол ufw в инструкции по настройке VPS.
Как проверить
Подключитесь снова: ssh root@ВАШ_IP. Если ssh спросил пароль, предложил ключ или задал вопрос о подлинности сервера, порт открыт и ошибка ушла.
Проверить подключение к порту можно и подробным отчётом:
ssh -v root@ВАШ_IPСтрока debug1: Connection established. значит, что подключение к порту прошло. Если дальше появилась другая ошибка, найдите её в таблице ниже.
Похожие ошибки
| Сообщение | Чем отличается |
|---|---|
| Connection timed out | Ответа нет вовсе: адрес недоступен или фаервол молча отбрасывает подключения |
| No route to host | Система сообщает, что пути до адреса нет |
| Could not resolve hostname | Не удалось узнать IP по имени — до подключения дело не дошло |
| kex_exchange_identification | Подключение к порту прошло, но сервер сразу его закрыл |
| ERR_CONNECTION_REFUSED | Такой же отказ, но в браузере, при открытии сайта |
Источники
- man ssh — параметры -p и -v.
- man sshd — параметр -t, проверка настроек.
- man systemctl — команды status и restart.
- man ufw для Ubuntu 24.04 — правила reject и deny, удаление правил.
- Исходный код OpenSSH — тексты сообщений.
Сверено 9 октября 2026 года.
Что почитать дальше
- Как подключиться к VPS по SSH — консоль в панели провайдера, если SSH не пускает.
- Как настроить VPS с нуля — как включить фаервол, не закрыв себе вход.
- Connection timed out — если ответа нет совсем.
- ERR_CONNECTION_REFUSED — если отказ видит браузер.
Проверено и обновлено: 09.10.2026