Почему SSh перестал работать с веб-хостом после обновления с Ubuntu 22.04 до 24.04. Соединение с веб-хостом не работает на двух разных машинах.

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

Недавно я обновил свой компьютер для веб-разработки до Ubuntu 24.04 и теперь не могу подключиться по ssh к своему веб-хостингу.

Попробовав новый пароль и новый ssh ключ, поexperimentировав с serverAliveInterval connectionAliveInterval и действительно не найдя других сообщений, которые казались бы решением проблемы, я переустановил 22.04 и все еще имею такую же проблему.

Смотря на подробный вывод, неясно, но мне кажется, что хост принимает SSH ключ и пароль.

К сожалению, я не контролирую веб-хостинг.

Пожалуйста, дайте мне знать, если вы хотите взглянуть на что-то еще.

Вот подробный вывод из недавней попытки входа


    ssh -v alias
    OpenSSH_8.9p1 Ubuntu-3ubuntu0.10, OpenSSL 3.0.2 15 Mar 2022
    debug1: Чтение конфигурационных данных /home/lucky/.ssh/config
    debug1: /home/lucky/.ssh/config строка 1: Применение параметров для a2
    debug1: Чтение конфигурационных данных /etc/ssh/ssh_config
    debug1: /etc/ssh/ssh_config строка 19: include /etc/ssh/ssh_config.d/*.conf не соответствует файлам
    debug1: /etc/ssh/ssh_config строка 21: Применение параметров для *
    debug1: Подключение к веб-хосту [###.#.##.##] порт 7822.
    debug1: Подключение установлено.
    debug1: файл идентификатора /home/lucky/.ssh/id_rsa тип 0
    debug1: файл идентификатора /home/lucky/.ssh/id_rsa-cert тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ecdsa тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ecdsa-cert тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ecdsa_sk тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ecdsa_sk-cert тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ed25519 тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ed25519-cert тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ed25519_sk тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_ed25519_sk-cert тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_xmss тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_xmss-cert тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_dsa тип -1
    debug1: файл идентификатора /home/lucky/.ssh/id_dsa-cert тип -1
    debug1: Локальная версия SSH-2.0-OpenSSH_8.9p1 Ubuntu-3ubuntu0.10
    debug1: Удаленная версия протокола 2.0, удаленная версия ПО OpenSSH_8.0
    debug1: compat_banner: совпадение: OpenSSH_8.0 pat OpenSSH* compat 0x04000000
    debug1: Аутентификация на веб-хосте:7822 как 'userName'
    debug1: load_hostkeys: fopen /home/lucky/.ssh/known_hosts2: Нет такого файла или каталога
    debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts: Нет такого файла или каталога
    debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts2: Нет такого файла или каталога
    debug1: SSH2_MSG_KEXINIT отправлено
    debug1: SSH2_MSG_KEXINIT получено
    debug1: kex: алгоритм: curve25519-sha256
    debug1: kex: алгоритм ключа хоста: ssh-ed25519
    debug1: kex: сервер->клиент шифр: aes128-ctr MAC: [email protected] сжатие: нет
    debug1: kex: клиент->сервер шифр: aes128-ctr MAC: [email protected] сжатие: нет
    debug1: ожидается SSH2_MSG_KEX_ECDH_REPLY
    debug1: SSH2_MSG_KEX_ECDH_REPLY получено
    debug1: Ключ хоста сервера: ssh-ed25519 SHA256:wcoWSc8VXzSRHRyLTdyzM8UY+qFON91gHBjMzjEOvUA
    debug1: load_hostkeys: fopen /home/lucky/.ssh/known_hosts2: Нет такого файла или каталога
    debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts: Нет такого файла или каталога
    debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts2: Нет такого файла или каталога
    debug1: Хост '[webhost]:7822' известен и соответствует ключу ED25519 хоста.
    debug1: Найден ключ в /home/lucky/.ssh/known_hosts:1
    debug1: ssh_packet_send2_wrapped: сброс номера последовательности отправки 3
    debug1: переключение выхода после 4294967296 блоков
    debug1: SSH2_MSG_NEWKEYS отправлено
    debug1: ожидается SSH2_MSG_NEWKEYS
    debug1: ssh_packet_read_poll2: сброс номера последовательности чтения 3
    debug1: SSH2_MSG_NEWKEYS получено
    debug1: переключение входа после 4294967296 блоков
    debug1: get_agent_identities: привязка агента к ключу хоста
    debug1: get_agent_identities: агент вернул 1 ключ
    debug1: Будет пытаться ключ: /home/lucky/.ssh/id_rsa RSA SHA256:Ojg06NqtGvIJVI+mfheuMhnYObn1bXYBzc4DhnXsmps агент
    debug1: Будет пытаться ключ: /home/lucky/.ssh/id_ecdsa 
    debug1: Будет пытаться ключ: /home/lucky/.ssh/id_ecdsa_sk 
    debug1: Будет пытаться ключ: /home/lucky/.ssh/id_ed25519 
    debug1: Будет пытаться ключ: /home/lucky/.ssh/id_ed25519_sk 
    debug1: Будет пытаться ключ: /home/lucky/.ssh/id_xmss 
    debug1: Будет пытаться ключ: /home/lucky/.ssh/id_dsa 
    debug1: SSH2_MSG_EXT_INFO получено
    debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521>
    debug1: SSH2_MSG_SERVICE_ACCEPT получено
    debug1: Аутентификации, которые могут продолжаться: publickey,gssapi-keyex,gssapi-with-mic,password
    debug1: Следующий метод аутентификации: gssapi-with-mic
    debug1: Учетные данные не были предоставлены, или учетные данные были недоступны или недоступны
    Нет доступных учетных данных Kerberos (кэш по умолчанию: FILE:/tmp/krb5cc_1000)
    debug1: Учетные данные не были предоставлены, или учетные данные были недоступны или недоступны
    Нет доступных учетных данных Kerberos (кэш по умолчанию: FILE:/tmp/krb5cc_1000)
    debug1: Следующий метод аутентификации: publickey
    debug1: Предложение открытого ключа: /home/lucky/.ssh/id_rsa RSA SHA256:Ojg06NqtGvIJVI+mfheuMhnYObn1bXYBzc4DhnXsmps агент
    debug1: Аутентификации, которые могут продолжаться: publickey,gssapi-keyex,gssapi-with-mic,password
    debug1: Попытка закрытого ключа: /home/lucky/.ssh/id_ecdsa
    debug1: Попытка закрытого ключа: /home/lucky/.ssh/id_ecdsa_sk
    debug1: Попытка закрытого ключа: /home/lucky/.ssh/id_ed25519
    debug1: Попытка закрытого ключа: /home/lucky/.ssh/id_ed25519_sk
    debug1: Попытка закрытого ключа: /home/lucky/.ssh/id_xmss
    debug1: Попытка закрытого ключа: /home/lucky/.ssh/id_dsa
    debug1: Следующий метод аутентификации: пароль
    пароль userName@webhost: 
    Аутентифицирован на веб-хосте ([###.#.##.##]:7822) с использованием "пароля".
    debug1: канал 0: новая [client-session]
    debug1: Запрос [email protected]
    debug1: Вход в интерактивную сессию.
    debug1: pledge: файловая система
    client_loop: отправка отключения: Разорванное соединение

Я заметил, что include /etc/ssh/ssh_config.d/*.conf не соответствует файлам.
Я не знаю, исправление этого решит проблему или как это исправить.


    ls -ls /etc/ssh/
    всего 548
      4 -rw-r--r-- 1 root root    142 Ноя  8 10:28 known_hosts
    496 -rw-r--r-- 1 root root 505426 Июн 26 06:11 moduli
      4 -rw-r--r-- 1 root root   1650 Фев 25  2022 ssh_config
      4 drwxr-xr-x 2 root root   4096 Фев 25  2022 ssh_config.d
      4 -rw-r--r-- 1 root root   3257 Ноя  7 16:56 sshd_config
      4 drwxr-xr-x 2 root root   4096 Июн 26 06:11 sshd_config.d
      4 -r--r--r-- 1 root root   3254 Ноя  7 11:10 sshd_config.original
      4 -rw------- 1 root root    525 Ноя  7 11:08 ssh_host_ecdsa_key
      4 -rw-r--r-- 1 root root    187 Ноя  7 11:08 ssh_host_ecdsa_key.pub
      4 -rw------- 1 root root    419 Ноя  7 11:08 ssh_host_ed25519_key
      4 -rw-r--r-- 1 root root    107 Ноя  7 11:08 ssh_host_ed25519_key.pub
      4 -rw------- 1 root root   2610 Ноя  7 11:08 ssh_host_rsa_key
      4 -rw-r--r-- 1 root root    579 Ноя  7 11:08 ssh_host_rsa_key.pub
      4 -rw-r--r-- 1 root root    342 Дек  7  2020 ssh_import_id

Очевидно, /etc/ssh/ssh_config.d существует, как и known_hosts


    ls -l .ssh/
    всего 16
    -rw------- 1 lucky lucky  221 Июн  7 11:27 config
    -rw------- 1 lucky lucky 3434 Ноя  7 15:45 id_rsa
    -rw-r--r-- 1 lucky lucky  752 Ноя  7 15:45 id_rsa.pub
    -rw-r--r-- 1 lucky lucky  142 Ноя  7 11:23 known_hosts

Вот соответствующие части .ssh/config


    cat .ssh/config 
    Host webHostAlias
      HostName webHost 
      Port 7822
      User userName
      
    
    HostKeyAlgorithms +ssh-rsa,ssh-dss
    
    PubkeyAcceptedAlgorithms +ssh-rsa,ssh-dss

Это вывод из журналов ssh


    journalctl -fu ssh
    Ноя 07 17:03:12 lucky-Precision-3551 sshd[18495]: Сервер слушает на :: порт 22.
    Ноя 07 17:03:12 lucky-Precision-3551 systemd[1]: Запущен OpenBSD Secure Shell сервер.
    Ноя 08 08:56:03 lucky-Precision-3551 sshd[18495]: Получен сигнал 15; завершение.
    Ноя 08 08:56:03 lucky-Precision-3551 systemd[1]: Остановка OpenBSD Secure Shell сервера...
    Ноя 08 08:56:03 lucky-Precision-3551 systemd[1]: ssh.service: Успешно деактивирован.
    Ноя 08 08:56:03 lucky-Precision-3551 systemd[1]: Остановлен OpenBSD Secure Shell сервер.
    Ноя 08 08:56:03 lucky-Precision-3551 systemd[1]: Запуск OpenBSD Secure Shell сервера...
    Ноя 08 08:56:03 lucky-Precision-3551 sshd[164509]: Сервер слушает на 0.0.0.0 порт 22.
    Ноя 08 08:56:03 lucky-Precision-3551 sshd[164509]: Сервер слушает на :: порт 22.
    Ноя 08 08:56:03 lucky-Precision-3551 systemd[1]: Запущен OpenBSD Secure Shell сервер.

Я подозреваю, что это конфликт, вызванный обновлением, и я знаю лишь достаточно, чтобы сделать полное форматирование, либо ssh, либо диска.

Любые предложения будут весьма признательны. Спасибо за чтение.

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

Проблема с подключением по SSH к вашему веб-хосту после обновления с Ubuntu 22.04 до 24.04 может быть вызвана несколькими факторами. Давайте разберёмся в возможных причинах и решениях на основе предоставленной информации.

Ситуация и Симптомы

После обновления вы столкнулись с проблемами при подключении к вашему веб-хосту через SSH, причем вы пробовали разные пароли и ключи SSH. При этом вы указали, что verbose-вывод показывает успешное принятие ключа и пароля, но затем возникает ошибка "Broken pipe". Это означает, что соединение разрывается после аутентификации, что указывает на проблемную точку в процессе подключения.

Возможные Причины

  1. Версия OpenSSH: Вы используете OpenSSH версии 8.9p1 на вашем компьютере под управлением Ubuntu 24.04, тогда как веб-хост работает на OpenSSH версии 8.0. Существуют возможности несовместимости между разными версиями, особенно в том, что касается алгоритмов шифрования и аутентификации. Иногда более старые серверы могут не поддерживать новые алгоритмы, которые используются в новых версиях клиента.

  2. Алгоритмы ключей и шифрования: Первоначальные аргументы HostKeyAlgorithms и PubkeyAcceptedAlgorithms, которые вы указали в файле конфигурации ~/.ssh/config, могут помочь, но стоит проверить, поддерживает ли сервер эти алгоритмы. Например, ssh-rsa должен быть в этом списке.

  3. Настройки конфигурации SSH: Отсутствие файлов в каталоге /etc/ssh/ssh_config.d/, на которые ссылается вывода include /etc/ssh/ssh_config.d/*.conf matched no files, не должно вызывать проблем, но стоит проверить, нет ли других файлов конфигурации, которые могут повлиять на поведение SSH.

  4. Настройки вашего веб-хоста: Если вы не контролируете веб-хост, то возможны изменения в их конфигурации после обновления, которые могут препятствовать подключению. Это может быть вызвано изменениями в их политике безопасности, обновлением программного обеспечения или изменениями их сетевой инфраструктуры.

Рекомендации по Решению Проблемы

  1. Проверьте совместимость алгоритмов: Используйте следующее в конфигурационном файле SSH (~/.ssh/config), чтобы убедиться, что вашего веб-хоста поддерживаются корректные алгоритмы:

    Host webHostAlias
     HostName webHost 
     Port 7822
     User userName
     HostKeyAlgorithms +ssh-rsa,ssh-dss
     PubkeyAcceptedAlgorithms +ssh-rsa,ssh-dss
  2. Попробуйте изменить настройки KeepAlive: Иногда аутентификация проходит успешно, но сессия разрывается из-за тайм-аута. Попробуйте добавить в ваш конфигурационный файл SSH следующие строки:

    ServerAliveInterval 60
    ServerAliveCountMax 3
  3. Тестирование других клиентов SSH: Попробуйте подключиться с другого клиента SSH, чтобы исключить возможность проблем на стороне Ubuntu. Это может быть другой компьютер или даже использование SSH-клиента на Windows (например, PuTTY).

  4. Логи веб-хоста: Если это возможно, попросите техподдержку веб-хоста предоставить информацию из логов SSH, чтобы определить, почему подсоединение разрывается на сервере.

  5. Обратитесь в техподдержку хостинга: Сообщите о вашей проблеме и предоставьте детали, включая версии OpenSSH и описания ошибок. Это может помочь им диагностировать проблему на их стороне.

Заключение

Ваша проблема с SSH после обновления до Ubuntu 24.04 может быть вызвана несколькими причинами, включая несовместимость версий OpenSSH, настройки конфигурации или изменения на стороне веб-хоста. Следуя рекомендациям по проверке совместимости алгоритмов шифрования и тестированию подключения, вы сможете определить источник проблемы. Если сами вы не сможете решить вопрос, обращайтесь в техподдержку вашего хостинга для получения помощи.

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

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