Устранение неполадок
На этой странице рассматриваются распространённые проблемы Mobile SSH и первые проверки, которые стоит выполнить перед изменением настроек SSH на стороне сервера.
Не удаётся подключиться
Проверьте:
- На устройстве есть сетевой доступ.
- Имя хоста или IP-адрес сервера указаны верно.
- Порт SSH верен, обычно
22. - Брандмауэр, VPN, сеть оператора или сеть Wi-Fi не блокируют порт.
- SSH-сервер запущен и принимает подключения из сети, которую вы используете.
Если тот же хост работает с другого устройства, сравните точные хост, порт, имя пользователя, ключ и сетевой путь.
Ошибка аутентификации
Проверьте:
- Правильность написания имени пользователя.
- Пароль или парольную фразу ключа.
- Разрешает ли сервер вход по паролю, по ключу или оба способа.
- Соответствует ли закрытый ключ открытому ключу в
authorized_keysпользователя сервера. - Был ли файл ключа импортирован полностью, включая строки заголовка и подвала.
Для зашифрованных закрытых ключей введите парольную фразу в поле пароля/парольной фразы.
Не удалось импортировать закрытый ключ
Импорт закрытого ключа выполняется через системный файловый менеджер. Если импорт не удался:
- Убедитесь, что выбранный файл — закрытый ключ, а не открытый файл
.pub. - Откройте файл в доверенном текстовом редакторе и убедитесь, что он содержит полный блок ключа.
- Попробуйте вставить ключ вручную в поле закрытого ключа.
- Убедитесь, что тип ключа поддерживается: Ed25519, ECDSA (P-256/384/521) или RSA на Android; Ed25519 или ECDSA на iOS. DSA (
ssh-dss) не работает ни там, ни там, а RSA не поддерживается на iOS — создайте вместо него ключ Ed25519.
Ввод с клавиатуры задерживается или изменяется
Mobile SSH отправляет нажатия клавиш прямо в оболочку с отключёнными автокоррекцией и предиктивными подсказками, поэтому клавиатура не должна переписывать текст до того, как он достигнет удалённой стороны. Если ваша клавиатура всё же изменяет ввод, убедитесь, что его не перехватывает системный инструмент замены текста или буфера обмена, и используйте ряд дополнительных клавиш для клавиш терминала, таких как ESC, TAB, CTRL, стрелки, HOME, END, PGUP и PGDN.
Прокрутка tmux работает не так, как ожидалось
Mobile SSH меняет поведение прокрутки в зависимости от состояния терминала. В tmux или других программах с альтернативным экраном жесты прокрутки могут отправлять команды режима копирования tmux вместо прокрутки локальной истории. Если в tmux включён режим мыши, приложение отправляет escape-последовательности колеса мыши.
Если прокрутка работает неправильно:
- Попробуйте включить или отключить режим мыши tmux на удалённом сервере.
- Используйте
PGUPиPGDNиз ряда дополнительных клавиш. - Дважды нажмите на панель для перехода в полноэкранный режим перед прокруткой плотного вывода.
- Отсоединитесь и снова подключитесь к tmux, если размер удалённого терминала выглядит устаревшим.
Сессия оборвалась после блокировки экрана
На Android Mobile SSH использует keepalive, службу переднего плана, wake lock, Wi-Fi lock и попытки переподключения, чтобы уменьшить число разрывов соединения. Политики экономии батареи Android всё равно могут останавливать фоновую работу.
Проверьте:
- Отключите оптимизацию батареи для Mobile SSH, если ваше устройство агрессивно останавливает фоновые приложения.
- Поддерживайте стабильность Wi-Fi или мобильных данных во время долгих сессий.
- Снова откройте Mobile SSH и нажмите Active Sessions после разблокировки.
- Проверьте, что в настройках включён параметр Keep sessions running in background, если хотите, чтобы оболочки продолжали работать после того, как вы смахнули приложение из недавних.
- Если сервер разорвал SSH-сессию, переподключитесь с главного экрана: Continue перечисляет то, что ещё живо, а Tmux sessions — то, что ждёт на сервере.
На iOS система приостанавливает приложения в фоне, поэтому обычное SSH-соединение нельзя держать открытым бесконечно после переключения на другое приложение или блокировки экрана. Короткий льготный период покрывает быстрые переключения между приложениями; для более длительных перерывов включите Auto-attach tmux session в профиле сервера (или используйте транспорт Eternal Terminal), чтобы при переподключении вы возвращались в ту же оболочку, где остановились.
Передача файлов не может просматривать файлы телефона
Mobile SSH не запрашивает на Android никакого разрешения на доступ к хранилищу. Вместо этого локальная панель показывает одну папку, доступ к которой вы даёте через системное средство выбора папки, — если панель пуста, выберите папку кнопкой Pick folder. Выданный доступ сохраняется, так что это разовый шаг.
Если удалённые файлы загружаются, а локальные нет, с SSH-подключением всё в порядке — просто ещё не выбрана папка.
На iOS локальная панель показывает область документов приложения, а файлы добавляются через системные средства выбора документов и фотографий. Скачанные туда файлы также видны в приложении «Файлы» в разделе На моём iPhone.
Не удалось загрузить или скачать файл
Проверьте:
- SSH-сессия всё ещё подключена.
- Удалённый каталог существует.
- У удалённого пользователя есть права на чтение или запись по указанному пути.
- Локальный каталог назначения доступен для записи.
- На устройстве достаточно свободного места.
- Сеть стабильна для больших передач.
Не удалось выполнить проброс порта
Проверьте:
- Локальный порт находится в диапазоне от
1до65535. - Локальный порт ещё не используется.
- Строка туннеля имеет вид
PORTилиLOCAL:REMOTEHOST:REMOTE. - Удалённый хост и удалённый порт доступны с SSH-сервера.
- SSH-сервер разрешает проброс TCP.
Журналы отладки
Две платформы записывают разное, поэтому выбирайте ту, что соответствует вашей проблеме.
Android — терминал и отрисовка. Включите Settings → Debugging → Show Debug and Logs buttons, затем пользуйтесь появившейся на стартовом экране кнопкой Debug. Она фиксирует события терминала, объёмы данных SSH, сенсорный ввод, поведение при изменении размера и жизненный цикл туннелей. Перед началом записи приложение предупреждает, что в неё попадает каждое нажатие клавиши, включая пароли. По остановке записи архив сохраняется в папку «Загрузки».
iOS — подключения и переподключения. Включите Settings → Diagnostics → Record debug log. Он фиксирует каждый адрес, по которому выполнялось подключение, и причину неудачи, попытки переподключения и задержки между ними, разорванные соединения, сообщения «peer stopped answering keepalives», смену сети и команды tmux с их ошибками. В настройках виден живой счётчик строк, чтобы вы могли убедиться, что запись идёт, а Export Debug Log отправляет лог текстовым файлом. Лог хранится в памяти и охватывает только текущий запуск приложения.
Проверяйте любой отладочный лог или архив перед тем, как делиться им. Они предназначены для устранения неполадок и могут содержать имена серверов, адреса, тайминги или другие сведения об окружении, а на Android — ещё и всё, что вы набирали.