Вопрос или проблема
Я управляю SFTP-сервером и лично не испытываю проблем с подключением. Многие клиенты также успешно его используют, но у некоторой части возникают проблемы. Примеры сообщений на стороне клиента:
Не удалось выполнить аутентификацию. Проверьте учетные данные и попробуйте еще раз. Domo готов, но введенные вами учетные данные недействительны. Проверьте ваши учетные данные и попробуйте еще раз. Domo готов, но мы не смогли подключиться к SFTP-серверу. Пожалуйста, проверьте ваши настройки и попробуйте снова.
Доступ запрещен (publickey, gssapi-keyex, gssapi-with-mic). Подключение закрыто.
На стороне сервера я вижу:
15 окт 08:00:36.604 pam_unix(sshd:session): сессия закрыта для пользователя <user>
15 окт 08:00:34.946 pam_unix(sshd:session): сессия открыта для пользователя <user> (uid=1020) от (uid=0)
15 окт 08:00:34.650 Принят publickey для <user> от <IP> порт 21191 ssh2: RSA SHA256:<hash>
Так что, похоже, клиент подключается нормально, но что-то ему не нравится, и он быстро отключается.
Разные детали:
- Все пользователи используют аутентификацию по закрытому ключу, а не по паролю
- Работает в AWS на EC2 – Amazon Linux 2023
- OpenSSH_8.7p1, OpenSSL 3.0.8 7 фев 2023
- Добавлены опции конфигурации sshd для поддержки клиентов со старыми ключами:
- HostKeyAlgorithms +ssh-rsa
- PubkeyAcceptedAlgorithms +ssh-rsa
- Нет межсетевого экрана/IP-фильтрации
- Тот же пользователь работал с другим SFTP-клиентом (WinSCP против Domo)
Как я и говорил, для большинства пользователей всё работает нормально, поэтому я не знаю, что может быть причиной этого. Буду признателен за любые идеи.
Ответ или решение
Проблемы с подключением к SFTP: Подробный анализ и решения
Управление сервером SFTP может представлять собой множество вызовов, особенно когда речь идет о проблемах с подключением, которые могут испытывать некоторые клиенты. Давайте разберем возможные причины и решения проблемы, основанные на предоставленной информации.
Анализ ошибок
Клиенты, испытывающие трудности с подключением, получают следующие сообщения об ошибках:
-
Ошибка аутентификации:
- Сообщения: "Не удалось аутентифицироваться. Проверьте учетные данные и попробуйте снова", "У Domo возникла проблема с подключением к SFTP-серверу. Пожалуйста, проверьте настройки и попробуйте снова."
-
Ошибка "Permission Denied":
- Сообщение: "Permission Denied (publickey, gssapi-keyex, gssapi-with-mic). Подключение закрыто".
На стороне сервера записи логов показывают:
Oct 15 08:00:36.604 pam_unix(sshd:session): session closed for user <user>
Oct 15 08:00:34.946 pam_unix(sshd:session): session opened for user <user> (uid=1020) by (uid=0)
Oct 15 08:00:34.650 Accepted publickey for <user> from <IP> port 21191 ssh2: RSA SHA256:<hash>
Это подтверждает, что пользователи могут успешно подключаться к серверу, но сталкиваются с препятствиями при попытке аутентификации.
Возможные причины и решения
-
Проблемы с ключами SSH:
- Убедитесь, что клиентские ключи правильно сконфицированы и соответствуют тем, которые находятся на сервере. Иногда наличие устаревших или не совместимых форматов ключей может вызвать проблемы.
- Кроме того, стоит проверить разрешения на ключи. Ключи должны иметь соответствующие разрешения (например, 600 для приватного ключа).
-
Неправильные настройки клиента:
- Некоторые клиенты могут ошибочно настроить параметры подключения или использовать неверный формат ключа. Рекомендуется перепроверить настройки SFTP-клиента Domo на предмет соответствия настройкам WinSCP.
-
Настройки сервера:
- Обратите внимание на настройки
sshd_config
. Несмотря на добавленные вами параметры:HostKeyAlgorithms +ssh-rsa PubkeyAcceptedAlgorithms +ssh-rsa
Убедитесь, что клиент (Domo) поддерживает эти алгоритмы. Возможно, потребуется изменить или добавить более современные алгоритмы.
- Обратите внимание на настройки
-
Различия в программном обеспечении:
- Убедитесь, что на клиентских машинах установлены актуальные версии программного обеспечения. Разные версии OpenSSH могут иметь разные реализации поддержки ключей и алгоритмов.
-
Журналирование и диагностика:
- Для лучшего понимания причины отключений рекомендуется включить режим отладки на клиентской стороне, если это возможно (например, опция
-vvv
в OpenSSH). Это предоставит детальную информацию о процессе подключения.
- Для лучшего понимания причины отключений рекомендуется включить режим отладки на клиентской стороне, если это возможно (например, опция
-
Firewall и политика безопасности:
- Хотя вы указали, что нет фильтрации по IP, стоит проверить настройки AWS Security Groups для вашего экземпляра EC2, чтобы исключить блокировку по IP.
Заключение
Для успешного решения проблемы с подключением SFTP необходимо систематически подходить к диагностике и решению. Пройдите через каждый из упомянутых пунктов, чтобы определить, какие аспекты могут быть причиной возникших проблем. Если проблема продолжает сохраняться, рекомендуется обратиться к службе технической поддержки вашего оборудовании или программного обеспечения для дальнейшего анализа. Помните, что совершенствование процессов подключения к SFTP может значительно повысить продуктивность и снизить количество вызовов со стороны клиентов.