Banana Studio
News · BS Manager

SSH/SFTP Server 0.12.2: готов для Android 17, современные ключи SSH и шифрование ChaCha20

SSH/SFTP Server 0.12.2 готов для Android 17, работает с ключами Ed25519 и ключами RSA из текущего OpenSSH, добавляет шифрование ChaCha20-Poly1305 и дает каждой установке собственный ключ хоста. Вход по ключу снова работает, а приложение расходует меньше заряда батареи, пока сервер запущен.

On this page

SSH/SFTP Server 0.12.2 теперь доступен в Google Play. Это самое большое обновление за долгое время: приложение готово для Android 17, работает с ключами SSH, которые современные компьютеры создают по умолчанию, добавляет быстрое шифрование ChaCha20-Poly1305 и дает каждой установке свою серверную личность.

Готово для Android 17

Android 17 добавляет новое разрешение конфиденциальности, которое требуется каждому приложению, прежде чем другие устройства в вашей Wi-Fi или проводной сети смогут к нему подключиться. SSH/SFTP Server — именно такое приложение: ваш компьютер, файловый менеджер и SSH-клиент подключаются к телефону. Без разрешения Android тихо блокирует их, и соединение просто прерывается по тайм-ауту.

Когда вы нажмете Start на Android 17, приложение запросит это разрешение. Android указывает его в разделе Ближайшие устройства. Пожалуйста, разрешите его, иначе устройства в вашей сети не смогут подключиться. Если вы пропустите его, приложение объяснит, что не будет работать, и перенесет вас в настройки, где вы сможете включить его позже.

Ваш телефон работает под Android 16 или старше? Тогда для вас ничего не меняется: нового запроса нет.

Вход с помощью современных ключей SSH

Многие пользователи сообщили нам, что вход по ключу не работает, а приложение продолжает запрашивать пароль, что является настоящей проблемой, если вы отключили вход по паролю. Было несколько причин, и все они исправлены:

  • Ключи Ed25519 теперь работают. Это тип ключа, который ssh-keygen создает по умолчанию сегодня, и приложение не могло использовать его ранее. Вы можете импортировать публичные ключи Ed25519 на экране редактирования пользователя, так же, как ключи RSA и ECDSA.
  • Ключи RSA работают с текущим OpenSSH. С версии OpenSSH 8.8 команда ssh отклоняет старые подписи RSA SHA-1. Сервер теперь поддерживает современные подписи rsa-sha2-256 и rsa-sha2-512 и сообщает о них клиенту, поэтому ваш ключ RSA снова принимается.
  • Ключи RSA длиной 3072 бита и ключи ECDSA P-521 принимаются. Эти ключи никогда не совпадали раньше, даже если они были настроены правильно.

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

Быстрое шифрование: ChaCha20-Poly1305

Сервер теперь поддерживает ChaCha20-Poly1305 — шифрование, которое OpenSSH предпочитает на большинстве систем. Оно спроектировано для быстрой работы в программном обеспечении, что полезно на телефонах, у процессора которых нет специального аппаратного ускорения для AES. Актуальные клиенты ssh, scp и sftp выбирают его автоматически, поэтому вам не нужно ничего менять.

Интересно, какое шифрование используется вашим соединением? Запустите это на компьютере и посмотрите на часть cipher::

ssh -v -p 2222 user@phone-ip

Уникальная серверная личность для каждой установки

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

До сих пор приложение поставлялось с одним и тем же ключом хоста на каждом телефоне. Начиная с версии 0.12.2, каждая новая установка создает свой собственный ключ хоста на телефоне, и он никогда не покидает устройство.

Если вы уже используете приложение, ничего не меняется автоматически. Ваш текущий ключ сохраняется, поэтому ваши компьютеры продолжают подключаться без предупреждений. Приложение покажет короткое уведомление один раз, и вы можете заменить старый ключ, когда это удобно:

  1. Откройте Автоматизация и дополнительные настройки.
  2. В разделе Ключ хоста теперь можно увидеть отпечаток ключа, то же значение, которое показывает ваш SSH-клиент.
  3. Нажмите Пересоздать ключ хоста и подтвердите.

После пересоздания ключа каждый компьютер, который подключался ранее, один раз покажет предупреждение "REMOTE HOST IDENTIFICATION HAS CHANGED". Это ожидается. Удалите старую запись с помощью ssh-keygen -R "[phone-ip]:2222" (или примите новый ключ в вашем приложении SFTP) и подключитесь снова.

Улучшенное время автономной работы

Баннер рекламы в приложении теперь приостанавливается, когда приложение находится в фоновом режиме. Ранее он продолжал будить телефон несколько раз в секунду, пока сервер работал, даже с выключенным экраном.

Другие улучшения

  • Плитка «Быстрые настройки»: теперь успешно открывает приложение на Android 14 и новее.
  • Кнопка «Назад»: снова работает как ожидается на Android 16 и новее, включая закрытие бокового меню в первую очередь.
  • Актуальные компоненты: библиотеки Google Play Billing, рекламы, отчетов о сбоях и другие обновлены, включая исправления безопасности и стабильности.

Обратите внимание: SSH/SFTP Server теперь требует Android 6.0 или новее. Телефоны под Android 5 сохранят предыдущую версию.

Ваши пользователи, папки, ключи и настройки сохраняются при обновлении. Получите обновление из Google Play.

Related app

SSH Server

Превратите Android в SSH- и SFTP-сервер с полноценным терминалом

Related posts