SSH — сетевой протокол. Используется для удалённого доступа к серверам по шифруемому каналу. Подключение осуществляется под пользователем удалённого сервера. Для аутентификации используется пароль либо SSH-ключи.

SSH-сервер


SSH-сервер — набор инструментов для удалённого управления серверами и передачи файлов с использованием протокола SSH.

VMmanager использует сервер OpenSSH.

На клиенте OpenSSH должен быть установлен пакет openssh-client. На сервере — пакет openssh-server. Серверный компонент OpenSSH постоянно ожидает клиентские подключения от любого клиентского приложения.

Подключение по протоколу SSH при помощи логина и пароля


Подключение клиента OpenSSH к серверу осуществляется при помощи следующей команды:

ssh user@host
BASH

user — учётная запись пользователя удалённого сервера.

host — IP-адрес удалённого сервера.

При подключении будет предложено ввести пароль пользователя удалённого сервера.

Подключение по протоколу SSH при помощи SSH-ключей


SSH-ключи

SSH-ключи представляют собой пару — закрытый и открытый ключ. Закрытый ключ — секретная информация, хранится у пользователя. Открытый ключ должен храниться на сервере, к которому будет осуществляться доступ по SSH.

Генерация SSH-ключей

В Linux-системах ключи генерируются следующим образом:

ssh-keygen [options]
BASH


Основные параметры: -t для указания алгоритма шифрования и -b для указания длины ключа:

ssh-keygen -t rsa -b 4096
ssh-keygen -t dsa
ssh-keygen -t ecdsa -b 521
ssh-keygen -t ed25519
BASH


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

Копирование открытого ключа

Открытый ключ пользователя нужно скопировать на сервер, к которому будет осуществляться доступ по SSH-протоколу, в файл ~/.ssh/authorized_keys:

ssh-copy-id -i ~/.ssh/id_rsa.pub user@host
BASH

user — учётная запись пользователя удалённого сервера.

host — IP-адрес удалённого сервера.

~ — директория домашней папки пользователя удалённого сервера.

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

SSH в VMmanager


VMmanager использует SSH для обеспечения доступа к виртуальным машинам. Для авторизации используются SSH-ключи.

Панель управления хранит открытые ключи пользователей и автоматически записывает их на создаваемые виртуальные машины в файл /root/.ssh/authorized_keys. Такая возможность доступна только на Linux-системах, и только если шаблон ОС поддерживает данную функцию.