Использование пары ключей SSH с Azure Stack Hub

Чтобы использовать открытое SSH-подключение на компьютере разработки и сервере виртуальной машины в экземпляре Azure Stack Hub, на котором размещено ваше веб-приложение, возможно, вам потребуется создать пару из открытого и закрытого ключей SSH.

В рамках этой статьи вы создадите ключи и с их помощью установите подключение к серверу. Вы можете использовать клиент SSH, чтобы получить строку bash на сервере Linux, или клиент SFTP, чтобы переместить файлы на сервер и с него.

Создание пары ключей SSH в Windows

В рамках этого раздела используется генератор ключей PuTTY для создания пары из открытого и закрытого ключей SSH и использования ее при создании безопасного подключения к виртуальной машине Linux в экземпляре Azure Stack Hub. PuTTY — это бесплатный эмулятор терминала, с помощью которого можно подключаться к серверу по протоколам SSH и Telnet.

  1. Скачайте и установите PuTTY на свой компьютер.

  2. Откройте генератор ключей PuTTY.

    PuTTY Key Generator with a blank Key box

  3. В разделе Parameters (Параметры) выберите RSA.

  4. В поле Number of bits in a generated key (Количество битов в созданном ключе) введите 2048.

  5. Выберите Создать.

  6. В области Key (Ключ) создайте случайный набор знаков, переместив курсор в пустую область.

    PuTTY Key Generator with a populated Key box

  7. В поле Key passphrase (Парольная фраза ключа) задайте пароль и подтвердите его в поле Confirm passphrase (Подтверждение парольной фразы ключа). Сохраните парольную фразу на будущее.

  8. Выберите Save public key (Сохранить открытый ключ) и сохраните ключ в доступном расположении.

  9. Выберите Save private key (Сохранить закрытый ключ) и сохраните ключ в доступном расположении. Учитывайте, что он закрытый ключ привязан к открытому.

Открытый ключ хранится в сохраненном текстовом файле. Файл выглядит примерно так:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20190330"
THISISANEXAMPLEDONOTUSE AAAAB3NzaC1yc2EAAAABJQAAAQEAthW2CinpqhXq
9uSa8/lSH7tLelMXnFljSrJIcpxp3MlHlYVbjHHoKfpvQek8DwKdOUcFIEzuStfT
Z8eUI1s5ZXkACudML68qQT8R0cmcFBGNY20K9ZMz/kZkCEbN80DJ+UnWgjdXKLvD
Dwl9aQwNc7W/WCuZtWPazee95PzAShPefGZ87Jp0OCxKaGYZ7UXMrCethwfVumvU
aj+aPsSThXncgVQUhSf/1IoRtnGOiZoktVvt0TIlhxDrHKHU/aZueaFXYqpxDLIs
BvpmONCSR3YnyUtgWV27N6zC7U1OBdmv7TN6M7g01uOYQKI/GQ==
---- END SSH2 PUBLIC KEY ----

Когда приложение запрашивает ключ, нужно скопировать и вставить все содержимое текстового файла.

Подключение по протоколу SSH с помощью PuTTy

При установке PuTTY у вас есть генератор ключей PuTTY и клиент SSH. В рамках этого раздела вы откроете клиент SSH и PuTTY, а также настроите значения подключения и ключ SSH. В сети, где размещен экземпляр Azure Stack Hub, подключитесь к виртуальной машине.

Прежде чем подключиться, вам потребуется:

  • PuTTY;
  • IP-адрес и имя пользователя для виртуальной машины Linux в экземпляре Azure Stack Hub, использующей открытый ключ SSH в качестве типа аутентификации;
  • открытый порт 22 для виртуальной машины;
  • Закрытый ключ SSH, связанный с открытым ключом.
  • клиентский компьютер с PuTTY должен находится в той же сети, что и экземпляр Azure Stack Hub.
  1. Откройте PuTTY.

    The PuTTY Configuration pane

  2. В поле Host Name (or IP address) (Имя узла или IP-адрес) введите имя пользователя и общедоступный IP-адрес виртуальной машины (например username@192.XXX.XXX.XX ).

  3. Убедитесь, что в поле Port (Порт) указано значение22, а в поле Connection type (Тип подключения) — SSH.

  4. В дереве Category (Категория) разверните узлы SSH и Auth.

    The PuTTY Configuration pane - SSH private key

  5. Рядом с файлом закрытого ключа для проверки подлинности нажмите кнопку "Обзор", а затем найдите файл закрытого ключа (<filename.ppk>) пары открытого и закрытого ключей.

  6. В дереве Category (Категория) выберите Session (Сеанс).

    The PuTTY Configuration pane

  7. В разделе Saved Sessions (Сохраненные сеансы) введите имя сеанса и нажмите кнопку Save (Сохранить).

  8. В списке Saved Sessions (Сохраненные сеансы) выберите имя своего сеанса и нажмите кнопку Load (Загрузить).

  9. Щелкните Open(Открыть). Откроется сеанс SSH.

Подключение по SFTP с помощью FileZilla

Чтобы обмениваться файлами с виртуальной машиной Linux, вы можете использовать FileZilla в качестве клиента FTP, который поддерживает протокол SFTP. FileZilla работает в системе Windows 10, Linux и macOS. Клиент FileZilla поддерживает протоколы FTP, FTPS и SFTP. Это программное обеспечение с открытым кодом, которое распространяется бесплатно в соответствии с условиями универсальной общедоступной лицензии GNU.

Настройка подключения

  1. Скачайте и установите FileZilla.

  2. Откройте FileZilla.

  3. Выберите File>Site Manager (Файл > Диспетчер сайтов).

    The FileZilla Site Manager pane

  4. В раскрывающемся списке Protocol (Протокол) выберите SFTP — SSH File Transfer Protocol (SFTP — протокол передачи файлов SSH).

  5. В поле Host (Узел) укажите общедоступный IP-адрес виртуальной машины.

  6. В поле Logon Type (Тип входа) выберите Normal (Обычный).

  7. Введите имя пользователя и пароль.

  8. Щелкните ОК.

  9. Выберите Изменить>Параметры.

    The FileZilla Settings pane

  10. В дереве Select page (Выбор страницы) разверните узел Connection (Подключение) и выберите SFTP.

  11. Выберите "Добавить файл ключа", а затем введите файл закрытого ключа (например, <filename.ppk>).

  12. Щелкните ОК.

Открытие подключения

  1. Откройте FileZilla.
  2. Выберите File>Site Manager (Файл > Диспетчер сайтов).
  3. Выберите имя сайта и нажмите кнопку Connect (Подключить).

Дальнейшие действия

Узнайте, как настроить среду разработки в Azure Stack Hub.