66 lines
No EOL
5.1 KiB
Markdown
66 lines
No EOL
5.1 KiB
Markdown
# Android OpenBSD SSH Implementation
|
||
|
||
## Структура
|
||
Приложение использует библиотеку JSch для установления соединения с удалённым сервером, в качестве алгоритма шифрования используется Diffie-Hellman. Приложение автоматически создаёт и сохраняет ключи в базе данных sqlite, ключи удаляются вместе с профилем.
|
||
|
||
Взаимодействие с shell происходит через эмулятор терминала который отрисовывает вывод терминала в PlainText, команды записываются в input field который целиком их отсылает по установленному каналу SSH 2.0.
|
||
|
||
Всвязи со сложностью реализации горячих клавиш в консоли на телефонном клиенте было принято решение создать 3 кнопки в интерактивном терминале для 3-х наиболее популярных горячих клавиш: "Ctrl+C" (прерывание процесса), "Ctrl+D" (выход из окружения), "Ctrl+L" (очистка терминала)
|
||
|
||
---
|
||
|
||
# Инструкция по использованию
|
||
|
||
## 1 Запуск
|
||
Запустите приложение кликнув по логотипу на рабочем столе телефона, вы увидете меню редактирования подключения
|
||

|
||
|
||
## 2 Создание профиля
|
||
Заполните поля профиля подключения, кликните по кнопке "Save Profile", можете назвать ваш профиль как вам удобно
|
||
|
||

|
||
|
||
## 3 Проверка подключения
|
||
Проверьте правильность введённых вами данных, кликните на кнопку "Connect SSH", если данные для подключения правильные вы увидите следующий вывод в логах приложения
|
||
|
||

|
||
|
||
## 4 Содержимое домашней директории
|
||
Так-же вы можете не открывая интерактивный терминал для теста запустить команду, которая отображает содержимое домашней директории
|
||
|
||

|
||
|
||
## 5 Интерактивный терминал
|
||
Нажмите на кнопку "Open Interactive Terminal", вы попадёте в эмулятор терминальной сессии
|
||
|
||

|
||
|
||
## 6 Ввод команд
|
||
Команды в интерактивном терминале вводятся через input field ниже эмулятора терминала, отправляются команды по кнопке "Send"
|
||
|
||

|
||
|
||
## 7 Вывод команд
|
||
Вывод команд отображается в эмуляторе терминала выше поля ввода
|
||
|
||

|
||
|
||
## 8 Блокирующий вывод
|
||
Некоторые команды могут блокировать ввод других команд, что бы "убить" блокирующий процесс нажмите на кнопку "Ctrl+C"
|
||
|
||

|
||
|
||
## 9 Блокирующее Внутреннее окружение
|
||
Некоторые команды могут запускать своё внутреннее окружение блокирующее доступ к родительскому терминалу, что бы выйти из такого окружение нажмите на кнопку "Ctrl+D"
|
||
|
||

|
||
|
||
## 10 Выход из сессии
|
||
Будьте осторожны ! Нажатие на "Ctrl+D" будучи в родительском терминале "убьёт" SSH подключение
|
||
|
||

|
||
|
||
## 11 Очистка терминала
|
||
Если вам нужно полностью очистить длинный вывод в эмуляторе терминала нажмите на кнопку "Clear"
|
||
|
||
 |