SSH — сетевой протокол. Используется для удалённого доступа к серверам по шифруемому каналу. Подключение осуществляется под пользователем удалённого сервера. Для аутентификации используется пароль либо SSH-ключи.
SSH-сервер
SSH-сервер — набор инструментов для удалённого управления серверами и передачи файлов с использованием протокола SSH.
VMmanager использует сервер OpenSSH.
На клиенте OpenSSH должен быть установлен пакет openssh-client. На сервере — пакет openssh-server. Серверный компонент OpenSSH постоянно ожидает клиентские подключения от любого клиентского приложения.
Подключение по протоколу SSH при помощи логина и пароля
Подключение клиента OpenSSH к серверу осуществляется при помощи следующей команды:
ssh user@host
При подключении будет предложено ввести пароль пользователя удалённого сервера.
Подключение по протоколу SSH при помощи SSH-ключей
SSH-ключи
SSH-ключи представляют собой пару — закрытый и открытый ключ. Закрытый ключ — секретная информация, хранится у пользователя. Открытый ключ должен храниться на сервере, к которому будет осуществляться доступ по SSH.
Генерация SSH-ключей
В Linux-системах ключи генерируются следующим образом:
ssh-keygen [options]
Основные параметры: -t для указания алгоритма шифрования и -b
для указания длины ключа:
ssh-keygen -t rsa -b 4096
ssh-keygen -t dsa
ssh-keygen -t ecdsa -b 521
ssh-keygen -t ed25519
При генерации ключей укажите путь к файлу, в который будет записан закрытый ключ. Открытый ключ будет записан в файл с наименованием <путь к файлу>.pub.
Копирование открытого ключа
Открытый ключ пользователя нужно скопировать на сервер, к которому будет осуществляться доступ по SSH-протоколу, в файл ~/.ssh/authorized_keys:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@host
При подключении будет предложено ввести пароль пользователя удаленного сервера.
SSH в VMmanager
VMmanager использует SSH для обеспечения доступа к виртуальным машинам. Для авторизации используются SSH-ключи.
Панель управления хранит открытые ключи пользователей и автоматически записывает их на создаваемые виртуальные машины в файл /root/.ssh/authorized_keys. Такая возможность доступна только на Linux-системах, и только если шаблон ОС поддерживает данную функцию.