SSH

Материал из FRUCT Maemo wiki (Russian)
Перейти к: навигация, поиск

SSH

SSH (Secure SHell) – это сетевой протокол, позволяющий получить удаленный доступ к командному процессору терминала. Следующие сценарии использования являются типичными:

1. Администрирование удаленных компьютеров, таких как серверы, используя устройство в безопасном соединении вместо открытого текста.

2. При выполнении операций с консолью можно столкнуться с такими ограничениями, как ввод текста, время работы от батареи, вычислительные возможности или доступное программное обеспечение.

3. Для некоторых приложений требуется сетевое соединение с более высокими параметрами, чем обеспечивает устройство. Например, сервер, располагающий подключением в 100 Мбит, работающий в режиме 24/7, обычно как быстрее, так и надежнее, чем устройство, использующее Wi-Fi или 3G.

4. При объединении с таким эмулятором терминала, поддерживающим работу в фоновом режиме, как screen или программой dtach приложение продолжит работать после того, как сетевое соединение будет разорвано или устройство будет отключено.

5. Протокол SSH можно использовать для удаленной оконной системы X11, переадресации, установления туннельных соединений, VPN, метода открытия портов port knocking. Это темы выше среднего уровня и требуют основательных фундаментальных знаний.

Содержание


Добавочное программное обеспечение, которое нужно инсталлировать на устройство

OpenSSH

OpenSSH – это наиболее часто используемый клиент-серверный пакет. Он предлагается в Extras. Можно инсталлировать только часть клиента, часть сервера или обе части в зависимости от конкретного сценария использования. Имейте в виду, что инсталляция может занять некоторое время и даже может показаться, что она остановилась. Задержка скорее всего вызвана генерацией SSH ключей во время инсталляции.

Dropbear

Dropbear – это альтернативный ssh клиент/серверный пакет, который использует меньше ресурсов диска/памяти.

Использование на устройстве

Клиент

Для разрешения планшету/телефону соединяться с другими машинами.

С удаленной машиной можно соединиться с планшета, выполнив ssh user@server ip. В результате будет получен доступ к командному процессору (shell) на удаленном компьютере на машине сервера.

Сервер

Для разрешения другим машинам соединяться с планшетом/телефоном.

Для получения доступа к командному процессору на планшете с удаленной машины (возможно, для редактирования локального файла при помощи настоящей клавиатуры) нужно только убедиться, что на планшете инсталлирован сервер OpenSSH, и выполнить ssh root@tablet ip

Обратите внимание, что, если IP адрес выдан DHCP сервером, то устройства N900 называются "Nokia-N900-41-10". Обратитесь к этой ошибке.

PuTTY

PuTTY – это клиент для SSH и [крайне небезопасных] протоколов Telnet. Это популярный клиент для Microsoft Windows, Unix-подобных операционных систем с портами, существующими даже для телефонов Symbian, Windows Mobile и даже Интернет планшетов. Его можно использовать для соединения с планшетом, на котором запущен OpenSSH, для получения доступа к командному процессору на удаленном компьютере.

Использование

  • Загрузите PuTTY на машину, с которой необходимо соединиться с планшетом.
    • Вы должны увидеть окно «Конфигурация PuTTY" с выбранной категорией "Сессия".
  • Убедитесь, что "SSH" выбран как "Тип соединения" и введите the tablet's ip в раздел «Имя хоста» (или IP-адрес).
  • Если нужно изменить любые другие настройки в силу необходимости или личного предпочтения, например, продолжите и измените настройки так, как это требуется.
  • Если вы хотите сохранить эти настройки для использования в будущем для быстрого соединения с планшетом, добавьте имя в "Сохраненные сессии" и нажмите Сохранить.
  • Нажмите Открыть и в ответ на запрос введите имя пользователя, с которым вы хотите соединиться. (Обычно используется имя пользователя root).

Дополнительная безопасность и удобство

Сгенерировать секретный ключ на устройстве для разрешения аутентификации, базирующейся на использовании открытого ключа, довольно легко. При условии, что ключ хранится в тайне, это более безопасно, чем использование пароля UNIX (PAM).

Прежде всего, убедитесь, что вы можете использовать SSH для удаленного подключения к компьютеру *NIX с учетной записью пользователя.

На устройстве необходимо создать каталог в соответствующем домашнем каталоге пользователя:

 cd
 mkdir .ssh
 chmod 700 .ssh

На удаленном компьютере *NIX выполните следующую команду:

 ssh-keygen -t rsa

В домашнем каталоге найдите файлы с названиями .ssh/id_rsa.pub и .ssh/id_rsa Файл .pub содержит открытый ключ – он копируется на другие машины. Содержимое второго файла нужно держать в тайне.

В том случае, если секретный ключ украден (например, устройство украдено), у злоумышленника есть доступ к машине, для которого не требуется вводить пароль. Именно поэтому рекомендуется использовать пароль при подаче команды ssh-keygen. Обратите внимание, что этот пароль [i]не[/i] должен быть таким же, как пароль в UNIX.

Далее, если вы используете OpenSSH:

scp .ssh/id_rsa.pub <user>@<hostname_or_ip_address>:.ssh/authorized_keys2

Для dropbear:

scp .ssh/id_rsa.pub <user>@<hostname_or_ip_address>:.ssh/authorized_keys

В результате вас попросят ввести пароль UNIX для копирования ключа.

Теперь выполните:

ssh <user>@<hostname_or_ip_address>

и вы должны просто получить приглашение на ввод пароля. Если имена пользователя на локальной и удаленной машинах совпадают, часть [i]user@[/i] можно опустить.

VPN, установление туннельных соединений

Пожалуйста, обратитесь к инструкции Установление туннельных соединений из корпоративных сетей (Часть 1).

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты