Перейти к основному контенту

Способы подключения к Jelastic

Как получить SSH-доступ к Jelastic

Чтобы получить SSH-доступ к Jelastic:

SSH-доступ к облаку Jelastic

SSH (Secure Shell) — это протокол, используемый для безопасного подключения к удалённому контейнеру и выполнения необходимых команд на нём. Команды SSH зашифрованы и защищены. При SSH-подключении применяется цифровой сертификат для аутентификации, используемые пароли защищены шифрованием.

Для того чтобы SSH-подключение стало доступно в Jelastic, был добавлен новый компонент инфраструктуры ядра — SSH-шлюз. SSH-шлюз принимает подключения пользователей из Интернета, а затем передает эти соединения требуемому контейнеру, используя внутреннюю сеть.

Процедура аутентификации для шлюза SSH в Jelastic делится на две независимые части:

  • соединение с конечным пользователем шлюза (внешняя аутентификация);
  • соединение от шлюза к контейнеру пользователей (внутренняя аутентификация).

Обе части процедуры аутентификации проводятся на основе стандартного протокола SSH, с помощью публичных / приватных пар ключей:

SSH-доступ к облаку Jelastic 1

При помощи SSH-шлюза Jelastic вы можете легко получить доступ:

  • ко всему аккаунту, на котором вы можете перемещаться по окружениям и контейнерам с использованием интерактивного меню без дополнительной аутентификации:

SSH-доступ к облаку Jelastic 2

  • к отдельным контейнерам непосредственно во время работы с ними дистанционно через дополнительные инструменты (например, Capistrano) или с помощью SFTP- и FISH-протоколов:

SSH-доступ к облаку Jelastic 3

При обращении к контейнерам с помощью SSH, пользователь получает все необходимые разрешения и дополнительно может управлять основными приложениями с помощью команды SUDO:

sudo /etc/init.d/jetty start
sudo /etc/init.d/mysql stop
sudo /etc/init.d/tomcat restart
sudo /etc/init.d/memcached status
sudo /etc/init.d/mongod reload
sudo /etc/init.d/nginx upgrade
sudo /etc/init.d/httpd help

Важно: если развернуть любое приложение, изменить конфигурацию или добавить любой дополнительный функционал с помощью SSH в окружении Jelastic, это не будет отображаться в панели управления Jelastic.

Кроме того, предоставляется поддержка SFTP (Secure File Transfer Protocol) за счёт настройки службы для обработки SFTP-соединений. Это позволяет получить доступ к управлению и передаче файлов непосредственно в контейнер через SSH-шлюз, и таким образом обеспечить безопасность данных.

Дополнительным протоколом защиты сети является FISH (файлы передаются по протоколу Shell). Он поддерживается ряд популярных FTP-клиентов и файловых менеджеров (например, Midnight Commander, Konqueror, LFTP, Krusader, и т. д.) и позволяет пользователям безопасно получать доступ и управлять файловой системой контейнера.

Инструкция для Windows

Для подключения вам понадобится два ключа: приватный и публичный. Публичный ключ нужно будет загрузить в панель управления Jelastic, а приватный — в ваш SSH-клиент.

Вам понадобится генератор. Если вы планируете подключаться по SSH через PUTTY, то можете воспользоваться PUTTY Key Generator.

Выберите тип ключа SSH-2 DSA, длину 2048 бит и нажмите Generate:


Полностью скопируйте публичный ключ — содержимое поля «Public key for pasting into OpenSSH authorized_keys file»:

Также вам понадобится сохранить приватный ключ и указать для него пароль. Для этого введите пароль в поля «Key passphrase» и «Confirm passphrase». Для сохранения приватного ключа нажмите Save private key. Выберите, куда нужно сохранить ключ, укажите его имя и нажмите Сохранить.

Откройте панель управления Jelastic и нажмите на значок Настройки в верхнем меню.

В разделе указана информация для подключения:
ssh [имя пользователя]@[имя сервера] —p[порт для подключения] (указывать свои данные без скобок).

Для использования SSH вам понадобится специальный ключ. Чтобы его добавить, нажмите кнопку Добавить SSH-ключ.

Чтобы подключиться к окружениям по SSH, используйте SSH-клиент (в нашем случае — PUTTY). Для работы с ним вам понадобится загрузить приватный ключ.

Перейдите на вкладку «Соединение» — «SSH» — «Аутентификация». В строке «Файл с личным ключом для аутентификации» нажмите Обзор, выберите сохранённый ранее приватный ключ и нажмите Открыть.

Вернитесь на вкладку Сеанс. В поле «Имя хоста (или IP-адрес)» введите имя пользователя и имя сервера. В поле «Порт» укажите порт для подключения (в нашем случае — 3022) и нажмите Соединиться.

Инструкция для Linux / MacOS

Сгенерируйте ключ с помощью следующей команды:
$ ssh-keygen —t dsa

Откройте файл id_dsa.pub , чтобы получить ключ:
~ $ cd .ssh
~/.ssh $ ls
id_dsa id_dsa.pub known_hosts
~/.ssh $ cat id_dsa.pub

Скопируйте сгенерированный ключ SSH.

В примере сгенерирован dsa SSH ключ. Вы также можете сгенерировать rsa ключ, для этого выполните те же команды, заменив соответственно dsa на rsa.

Откройте панель Jelastic и перейдите к верхней панели инструментов. Нажмите кнопку Настройки. В открывшейся вкладке настроек аккаунта выберите «SSH-доступ». затем нажмите кнопку Добавить SSH-ключ и вставьте сгенерированный ранее ключ в нужную область. Название ключа будет сформировано автоматически, если ваш ключ уже содержит это значение. Нажмите Добавить ключ.

В результате добавленный ключ SSH появится в списке. Таким образом вы можете добавить несколько ключей или удалить ненужные.

В открывшейся вкладке настроек аккаунта выберите «SSH-доступ».

Нажмите на ссылку в списке, чтобы открыть SSH-шлюз. В результате вы получите доступ через консоль автоматически. Или просто скопируйте данную командную строку и запустите её с помощью консоли (SSH-клиент).

Вы увидите список сред, доступных для вашей учётной записи. Выберите нужную среду, введя её номер из списка. (Примечание: вы можете получить доступ только к запущенной среде). После этого вы увидите полный список контейнеров выбранной среды. Для доступа к контейнеру введите его номер, соответствующий номеру в списке.

Важно: SSH-доступ возможен на платной версии Jelastic, на триальном аккаунте SSH-доступ отсутствует. Перейти на платную версию вы можете по инструкции: Как перейти на платную версию Jelastic?

Как настроить FTP-соединение в Jelastic

Чтобы использовать FTP-соединения перейдите на платную версию и подключите FTP. В панели управления облачным хостингом наведите курсор на строку с иконками меню (в строке веб-сервера) и нажмите на Дополнения. Ниже откроется вкладка, в которой будет предложено установить FTP-соединение.

Настройка FTP-соединения в Jelastic

Подключение к MySQL (MariaDB) для PHP на Jelastic

Для подключения к базе данных Jelastic посредством PHP используйте в качестве хоста — URL-адрес сервера базы данных (вместо «localhost»). Рассмотрим на примерах основные функции PHP, используемые для связи с базой данных:

1. Функция PHP для соединения с нодой MySQL / MariaDB:

Прописанные значения mysql_connect('HOST', 'USERNAME', 'PASSWORD'); должны быть заменены на ваши:

  • 'HOST' — адрес хоста MySQL-сервера, который вы получили по электронной почте, необходимо указывать без https://. Например, хост может иметь вид: mysql54321-mysql.jelastic.regruhosting.ru
Подробнее о том, как формируется адрес хоста (HOST) для подключения к базе данных

В общем случае данный адрес имеет структуру:
{db_type}{node_id}-{env_name}.jelastic.regruhosting.ru где:
{db_type} — тип базы данных, может принимать значение MySQL или MariaDB;
{node_id} — ID ноды сервера БД, с которой вы хотите установить соединение. Увидеть ID ноды можно в панели управления; {env_name} — имя окружения, в котором создан сервер БД:

Подключение к MySQL (MariaDB) для PHP на Jelastic 2

Адрес хоста может принимать вид: mysql54321-mysql.jelastic.regruhosting.ru. Он указан в письме с доступами, которое вы получили после создания окружения.

  • 'USERNAME' — имя пользователя БД (по умолчанию — пользователь root);

  • 'PASSWORD' — пароль пользователя БД (находится в письме с доступами к базе данных).

Готовый пример функции PHP для подключения: mysql_connect('mysql54321-mysql.jelastic.regruhosting.ru', 'root', '**********');

2. Функция для выбора необходимой БД:

mysql_select_db('DB_NAME');
где 'DB_NAME' — имя базы данных, к которой нужно подключиться.

Готовый пример для выбора базы данных:
mysql_select_db('mydatabase');

3. Функция для закрытия соединения:

mysql_close ()

Все остальные функции PHP для работы с MySQL можно увидеть здесь.

Важно: используйте необходимые функции на каждой странице **.php*, где должно происходить подключение к базе данных.

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

Чтобы убедиться, что все работает корректно, проверьте соединение, используя PHP-код:

<?php

$link = mysql_connect('HOST', 'USERNAME', 'PASSWORD');

//if connection is not successful you will see text error
if (!$link) {
       die('Could not connect: ' . mysql_error());
}
//if connection is successfuly you will see message bellow
echo 'Connected successfully';
 
mysql_close($link);
?>

Важно: не забудьте заменить HOST, USERNAME и PASSWORD в строке соединения на соответствующие значения (как это описано в первом пункте данной инструкции).

Готово, после выполнения скрипта в браузере в случае успеха вы увидите сообщение:

Подключение к MySQL (MariaDB) для PHP на Jelastic 3

Jelastic API

Подробную информацию о API Jelastic можно найти в официальной документации компании Jelastic.
Все запросы из API являются GET или POST HTTP-запросами к URL с набором параметров:
https://app.jelastic.regruhosting.ru/1.0/

Тип URL, который должен быть использован, описывается в каждом методе. Ответ на запрос происходит в UTF-8 кодировке. Пример результата описан в документации.
Для таких запросов в PHP, в качестве примера, Curl можно использовать прямо из командной строки или из браузера, в Perl — LWP :: Simple, в Python — HTTPLIB.

Данные могут быть отправлены в виде строки запроса (после знака «?») при использовании метода GET или в теле запроса POST.

В настоящее время API не делает различий между GET и POST-запросами.

Напомним, существует ограничение на длину запроса URL в 2048 символов. Именно поэтому мы рекомендуем использовать:

  • GET-запрос на получение информации, так как он легко помещается в ограничения длины;
  • POST-запросы для изменения данных (создание среды, изменение конфигурационных файлов и т. д.).

Токены для API в Jelastic

Токены доступа — альтернативный способ для аутентификации API-запросов в Jelastic. Благодаря токенам можно настроить ограниченный доступ к функционалу и обеспечить дополнительную безопасность вашего окружения.

Преимущества токенов:

  • возможность создать несколько токенов для разных задач;
  • упрощенная авторизация: не нужно делать дополнительный запрос для инициализации сеанса;
  • логин и пароль не отображаются в запросе;
  • возможность предоставить доступ только к определенному функционалу;
  • для токена можно установить срок действия;
  • доступ по определенному токену можно отключить в любой момент;
  • доступ в окружение Jelastic по токену.

Инструмент для работы с токенами добавлен в Jelastic 5.5. Данный способ для работы с API больше подходит для тех, у кого установлена двухфакторная авторизация. В версии 5.6. была реализована возможность авторизации в окружении Jelastic с помощью токена.

Как создать токен

  1. 1.
    Авторизуйтесь в панели управления Jelastic.
  2. 2.

    В правом верхнем углу кликните по вашему логину и откройте Настройки:

    развернуть приложение Go в Jelastic 1

  3. 3.

    На вкладке Токен доступа нажмите Сгенерировать:

    развернуть приложение Go в Jelastic 1

  4. 4.

    Введите Описание токена и при необходимости укажите срок действия. Отметьте галочками функционал, к которому будет открыт доступ по API с создаваемым токеном, и нажмите Сгенерировать:

    развернуть приложение Go в Jelastic 1

  5. 5.

    Введите пароль от учетной записи Jelastic и нажмите Продолжить:

    развернуть приложение Go в Jelastic 1

  6. 6.

    После генерации токена вы можете его Скачать или Копировать. Поставьте галочку напротив пункта Я сохранил данные и нажмите Готово:

    развернуть приложение Go в Jelastic 1

    Важно: Обязательно сохраните созданный токен. Повторно увидеть токен в окружении нельзя.

Готово, теперь вы можете гибко настраивать доступ, ограничивая API-запросы к определенному функционалу.

Что делать, если токен утерян

  1. 1.

    Выберите токен, который был утерян, и нажмите Редактировать:

    развернуть приложение Go в Jelastic 1

  2. 2.

    Кликните по ссылке «Нажмите здесь, чтобы восстановить его»:

    развернуть приложение Go в Jelastic 1

  3. 3.

    Нажмите Да, чтобы подтвердить сброс старого токена:

    развернуть приложение Go в Jelastic 1

  4. 4.

    Введите пароль от учетной записи Jelastic и нажмите Продолжить:

    развернуть приложение Go в Jelastic 1

  5. 5.

    Будет сгенерирован новый токен. Вы можете его Скачать или Копировать. Поставьте галочку напротив пункта Я сохранил данные и нажмите Готово:

    развернуть приложение Go в Jelastic 1

Готово, после обновления токена вы можете приступить к работе с API-запросами.

Доступ в окружение Jelastic по токену

В версии Jelastic 5.6. была добавлена возможность создать токен с определёнными правами для авторизации в окружении Jelastic. Чтобы воспользоваться данной возможностью, необходимо создать токен «Расширенный доступ» и отметить функционал, к которому будет открыт доступ:

Готово, те, кому вы предоставите токен, смогут авторизоваться в окружении Jelastic. Для этого на странице входа необходимо ввести е-mail, на который создавалось окружение, а в поле «Пароль» сам токен.

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 0 из 0