Linux: Руководство по быстрому старту с OpenSSH

Опубликовано

На все данные актуальны

Здесь мы рассмотрим пример того, как можно подключиться к удаленной виртуальной машине или серверу от СЕРВЕР МОЛЛ Cloud для управления ими, используя OpenSSH через терминал Linux. В примере клиентская и серверная системы находятся под управлением ОС Ubuntu 22.04, однако для других дистрибутивов Linux порядок действий будет схожим. Отличаться у разных дистрибутив могут процедуры установки OpenSSH, которые описаны в разделах “Установка SSH-сервера” и “Установка SSH-клиента”, а также процедура выделения полномочий пользователям, описанная в разделе “Создание нового пользователя”.

В большинстве наших образов дистрибутивов ОС на базе Linux уже установлен сервер OpenSSH. Если вы хотите подключиться к виртуальной машине или серверу с предустановленным сервером OpenSSH от имени пользователя netadmin (root), а не нового, созданного вами, пользователя, то шаги, приведенные в разделе "Действия на Сервере", выполнять не требуется.

Предварительные условия

  1. Клиентская и серверная системы должны быть под управлением операционных систем на базе Linux.
  2. В клиентской и серверной системе должен быть доступен терминал Linux.
  3. Серверная система должна работать на виртуальной машине или сервере СЕРВЕР МОЛЛ Cloud.

Процедура подключения

I. Действия на Сервере

  1. Подключаемся к виртуальной машине или серверу.
    Подключение осуществляем через консоль панели управления СЕРВЕР МОЛЛ Cloud, как описано в разделе “Подключение через консоль”.
  2. Обновляем информацию об актуальных версиях доступных системе пакетов: sudo apt update
  3. Устанавливаем OpenSSH для сервера: sudo apt install openssh-server Если вы хотите управлять удаленно от имени root пользователя сервера, то шаги 4-6 по созданию нового пользователя можно пропустить и перейти сразу к разделу “Действия на Клиенте”.
  4. Создаём нового пользователя и домашний каталог для него:
    useradd newuser1 -d /home/newuser1 -m
  5. Задаем пароль для нового пользователя:
    passwd newuser1
    На запрос:
    New password:
    Придумываем пароль пользователя, вводим его и нажимаем кнопку Enter, затем повторяем ввод пароля и снова нажимаем Enter. В процессе ввода пароль не будет отображаться на экране.
  6. Добавляем нового пользователя в группу с привилегиями Sudo, если это нужно:
    usermod -aG sudo newuser1
    Серверная часть готова к подключению, переходим к клиентской.

II. Действия на Клиенте

  1. Заходим в терминал Linux.
  2. Обновляем информацию об актуальных версиях доступных системе пакетов:
    sudo apt update
  3. Устанавливаем OpenSSH для клиента:
    sudo apt install openssh-client
  4. Создаём ключевую пару:
    ssh-keygen
    На запрос: $ ssh-keygen
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/client_user/.ssh/id_rsa):
    Отвечаем нажатием клавиши Enter. Это будет означать, что расположение и имя ключевой пары будут установлены по умолчанию. Или можете ввести свой путь к ключу, тогда придется также указывать его при копировании ключа и при соединении с сервером. На запрос: Enter passphrase (empty for no passphrase):
    Придумываем и вводим парольную фразу, которая будет вводиться при каждом использовании закрытого ключа, затем нажимаем Enter. Повторно вводим парольную фразу и снова нажимаем Enter. Если парольные фразы не соответствуют, то повторяем ввод. После успешного ввода парольной фразы ключевая пара будет сгенерирована и сохранена в указанном месте.
  5. Пересылаем публичный ключ на Сервер:

    ssh-copy-id newuser1@203.0.113.12
    IP-адрес берем в письме о готовности виртуальной машины или сервера к работе, также его можно получить в панели управления СЕРВЕР МОЛЛ Cloud:
    - Для виртуальной машины: Fixed IP Address в разделе Interfaces.
    - Для выделенных серверов: IP Addresses: в разделе Details.

    Имя пользователя указываем то, которое использовали при создании пользователя на Сервере, или используем имя root.

    На запрос:
    ssh-copy-id newuser1@203.0.113.12

    /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/client_user/.ssh/id_rsa.pub"The authenticity of host '203.0.113.12 (203.0.113.12)' can't be established.

    ECDSA key fingerprint is SHA256:tXw8aipJLааL4KBAjCaBvHU7K//HzkXuTtdLij2yJ2U.

    Are you sure you want to continue connecting (yes/no/[fingerprint])?

    Отвечаем, набрав на клавиатуре yes и нажав кнопку Enter, подтверждая своё намерение подключиться к незнакомому хосту.

    На запрос:
    /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

    /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
    newuser1@203.0.113.12's password:

    Вводим пароль пользователя, который присвоили новому пользователю на Сервере, и нажимаем Enter. Если вы указывали имя пользователя root, то пароль к нему вы можете взять из письма о готовности виртуальной машины или сервера к работ, которое было направлено вам на электронную почту.
  6. Подключаемся к удаленному серверу:
    ssh newuser1@203.0.113.12
    Для подключения используем IP-адрес, который использовали для отправки публичного ключа на предыдущем шаге.

    На запрос:
    $ ssh newuser1@203.0.113.12Enter passphrase for key '/home/client_user/.ssh/id_rsa':
    Вводим парольную фразу, которую использовали при создании ключевой пары на шаге 4 и нажимаем Enter.

    Если парольная фраза и все шаги выполнены верно, то будет установлено подключение к удаленному серверу для его управления и вы увидите соответствующее приглашение. 

    Прервать соединение с сервером и выйти в терминал клиента вы можете введя команду Exit и нажав Enter.

Подробно об этапах подключения через OpenSSH:

  1. Установка SSH-сервера.
  2. Создание нового пользователя.
  3. Установка SSH-клиента.
  4. Генерация ключевой пары.
  5. Передача публичного ключа на сервер.
  6. Подключение к серверу через SSH.