SSH зависает на pledge: network

Вопрос или проблема

Я настроил вход в ssh без пароля. Я мог подключаться через ssh и использовать sftp. Внезапно я больше не мог подключиться, и ssh зависал.

  • Сервер: Ubuntu 16.04
  • Клиент: Ubuntu 18.04

ssh --vvv user@host зависает на этапе pledge: network

...
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 60
debug1: Server accepts key: pkalg rsa-sha2-512 blen 279
debug2: input_userauth_pk_ok: fp SHA256:w7sj+s08FJPpL09IVtmXmGZOUgxVHGcgpjCL3vxzSaQ
debug3: sign_and_send_pubkey: RSA SHA256:w7sj+s08FJPpL09IVtmXmGZOUgxVHGcgpjCL3vxzSaQ
debug3: send packet: type 50
debug3: receive packet: type 52
debug1: Authentication succeeded (publickey).
Authenticated to <host> ([<IP>]:22).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug3: send packet: type 90
debug1: Requesting [email protected]
debug3: send packet: type 80
debug1: Entering interactive session.
debug1: pledge: network
debug3: send packet: type 80
debug3: send packet: type 80
debug3: send packet: type 80
Timeout, server <host> not responding.

До этого я начал еще одну сессию ssh на том же хосте с тем же пользователем, и она зависла на этапе sign_and_send_pubkey, поэтому я начал ранее упомянутую sсh.

...
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 60
debug1: Server accepts key: pkalg rsa-sha2-512 blen 279
debug2: input_userauth_pk_ok: fp SHA256:w7sj+s08FJPpL09IVtmXmGZOUgxVHGcgpjCL3vxzSaQ
debug3: sign_and_send_pubkey: RSA SHA256:w7sj+s08FJPpL09IVtmXmGZOUgxVHGcgpjCL3vxzSaQ
debug3: send packet: type 50
Connection to <IP> port 22 timed out
  • Я пробовал переустанавливать openssh-server на сервере и ssh на клиенте. Также перезапустил их (сервер и клиентский компьютер).

  • Также пробовал подключаться с использованием пароля. Это просто изменило строку Authentication succeeded (password) в выводе.

  • Кто-то сказал, что надо установить UsePAM no, это не сработало.

  • Пробовал использовать -o IPQoS=0 и получил тот же вывод.

На сервере в syslog записано следующее:

...
May  7 07:26:10 host systemd[1]: Started Session c103 of user <user>.
May  7 07:26:10 host systemd[1]: Started Session c104 of user <user>.
May  7 07:26:26 host systemd[1]: Started Session 47 of user <user>.
May  7 07:26:33 host systemd[1]: Started Session 48 of user <user>.

Я думаю, что проблема на клиенте. Потому что мой друг мог подключиться к серверу со своего компьютера.

Для отладки ваших подключений SSH лучше смотреть /var/log/auth.log.

т.е.

sudo tail -n 250 -f /var/log/auth.log

Ваше соединение может также фильтроваться или блокироваться такими инструментами, как fail2ban.

Проверьте, если он запущен на вашем сервере:

sudo ps ax | grep fail2ban

Если он есть на вашем сервере, то по умолчанию он просматривает auth.log на предмет неудачных попыток входа и запрещает IP на 5 минут.

Если у вас нет fail2ban, убедитесь, что нет проблем с сетью или защитным экраном.

Используйте команду dmesg для чтения последних ошибок:

sudo dmesg -T

Просмотрите правила iptables с помощью:

sudo iptables -nvL

и также проверьте интерфейсы на наличие ошибок и превышений:

sudo ifconfig | grep errors

ifconfig является частью net-tools, поэтому убедитесь, что он установлен в вашей системе Ubuntu

sudo apt install net-tools

В моем случае причиной был падение rsyslogd. Я обнаружил это, потому что в /var/log/secure больше не было записей.

Таким образом, я перезапустил службу rsyslog, что решило проблему у нас.

.

Ответ или решение

SSH подвисает на стадии "pledge: network": Решение проблемы

Описание проблемы

Вы настроили безпарольный доступ через SSH, и некоторое время доступ к серверу работал без проблем. Однако, внезапно SSH начал подвисать на этапе "pledge: network" при попытке подключения. Сервер работает на Ubuntu 16.04, а клиент — на Ubuntu 18.04.

Симптомы проблемы

При выполнении команды ssh --vvv user@host соединение замораживается, и в логах выводится последовательность событий вплоть до строки debug1: pledge: network, после чего наступает тайм-аут:

Timeout, server <host> not responding.

Выполненные действия

  1. Переустановка OpenSSH: Переустановили openssh-server на сервере и клиента. Перезапустили обе машины. Проблема не решилась.

  2. Попробовали авторизацию по паролю: Это изменило лог на Authentication succeeded (password), но проблема осталась.

  3. Изменения в настройках SSH:

    • Изменение UsePAM на no.
    • Использование опции -o IPQoS=0.
  4. Проверка системных логов:

    • Логирование в /var/log/syslog на сервере показывает успешное начало пользовательских сессий, но не указывает на конкретные ошибки.
  5. Убеждение в том, что проблема с клиентом: Другой пользователь смог успешно подключиться к серверу через SSH, используя другой клиент.

Возможные причины и решения

  1. Проблемы с брандмауэром или сетью:

    • Проверьте правила iptables с помощью sudo iptables -nvL и убедитесь, что на сервере нет блокировок для вашего IP.
    • Убедитесь, что нет проблем в конфигурации сети или антивирусных программ, которые могут фильтровать ваш трафик.
  2. Проблемы с системой журналирования:

    • Проверьте, работает ли служба rsyslogd. Если записи в логах /var/log/auth.log перестали появляться, перезапустите службу с помощью sudo service rsyslog restart.
  3. Программа fail2ban:

    • Если на сервере установлен fail2ban, возможно, ваше IP было временно заблокировано из-за повторяющихся неудачных попыток входа.
    • Проверьте активность fail2ban с помощью sudo ps ax | grep fail2ban и, если необходимо, снимите бан.

Дополнительные шаги

  • Дебаг интернета и конфигурации сети: Запустите sudo dmesg -T для поиска ошибок, связанных с оборудованием или сетью, также проверьте сетевые интерфейсы на наличие ошибок с помощью sudo ifconfig | grep errors.
  • Проверка целостности системы: Убедитесь, что все компоненты системы и SSH демона актуальны и правильно настроены.

Выполнение этих шагов поможет выявить и исправить причину подвисания SSH-сессии на этапе "pledge: network". Если все вышеперечисленное не решает проблему, может потребоваться более глубокий анализ сетевой инфраструктуры или обновление системы до более новой версии Ubuntu, учитывая окончание поддержки некоторых старых версий и потенциальные проблемы безопасности.

Оцените материал
Добавить комментарий

Капча загружается...