Віддалене підключення до MySQL-сервера на нашому віртуальному хостингу заборонено, але є безпечніший спосіб підключення — це використовувати SSH (Secure SHell) для шифрування даних між клієнтом та сервером. Такий спосіб спілкування називається SSH-тунелювання, або прокидання портів. Створений SSH-тунель перенаправить та зашифрує з’єднання з порту на локальному комп’ютері на віддалений MySQL-сервер. У статті розглянемо варіанти підключення з Windows та MacOS.
Як прокинути порт на Windows
1. Відкрити на своєму ПК SSH-клієнт (завантажити його можна тут).
2. Перейти в Connection -> SSH -> Tunnels.
3. Введіть номер порту Source Port (для MySQL це 3306) і точку з’єднання Destination у форматі домен:порт (в даному випадку це може бути localhost:3306) і натиснути кнопку Add:
4. Перейти до розділу Session та вказати деталі доступу до сервера, а саме: Host name **shared.servers.net та Port 21098 та натиснути кнопку «Open». Замість **shared.servers.net вкажіть назву сервера, де знаходиться ваш cPanel-аккаунт. Назва сервера присутня у посиланні, за яким ви здійснюєте вхід до cPanel, а також у листі про створення хостингового облікового запису.
5. Щоб не виконувати ці дії щоразу при встановленні SSH-з’єднання, можна зберегти введену інформацію, давши ім’я сесії підключення та зберігши її назву (кнопка Save).
6. Відкриється консоль, в якій потрібно ввести ваш логін та пароль (це дані доступу від cPanel). Після встановлення з’єднання ви побачите запрошення для введення команд. Якщо ви раніше не користувалися Putty, спочатку може здатися дивним спосіб вставки тексту в програму. Замість Ctrl+C потрібно використовувати праву клавішу миші. Текст паролів ніколи не відображається з метою безпеки.
7. Тепер можна підключатися до сервера MySQL, вказавши у вашому MySQL-клієнті як сервер localhost, а як порт 3306.
Як прокинути порт з MacOS
Запускаємо консоль. Консоль можна знайти через Spotlight. Для цього натисніть клавіші <Ctrl> і <Пробіл>. Введіть Термінал і натисніть клавішу Enter.
У консолі пишемо одну з команд, залежно від користувача:
а) якщо підключення з-під root-користувача:
ssh username@**shared.servers.net -L localhost:3306:localhost:3306 -p21098
б) якщо підключення не з-під привілейованого користувача:
ssh username@**shared.servers.net -L localhost:13306:localhost:3306 -p21098
username — це ім’я користувача cPanel, а **shared.servers.net — це назва сервера, де знаходиться ваш cPanel-аккаунт. Назва сервера присутня у посиланні, за яким ви здійснюєте вхід до cPanel, а також у листі про створення хостингового облікового запису. Як деталі входу потрібно використовувати логін та пароль від cPanel.
Після того, як з’єднання встановиться і ви побачите запрошення для введення команд, ви зможете підключитися до MySQL-сервера, вказавши в MySQL-клієнті як сервер localhost, а в якості порту 3306.