Ð§ÐµÑ ÐºÐ°Ñ Ð ÐµÐ·Ð³Ð¸Ð½ÐºÐ° Ð ÐµÐ²Ñ Ñ ÐºÐ° ÐºÐ»Ð°Ñ Ñ Ð½Ð¾ Ñ Ð°Ð½Ñ Ñ ÐµÑ !
Оглавление:
По умолчанию сервер MySQL прослушивает только локальный хост, а это значит, что к нему могут обращаться только приложения, работающие на одном хосте.
Однако в некоторых ситуациях может потребоваться подключение к серверу из удаленных мест. Одним из вариантов может быть настройка сервера MySQL для разрешения удаленных подключений, но для этого требуются права администратора, что может привести к угрозе безопасности.
Более безопасной альтернативой было бы создание SSH-туннеля от локальной системы до сервера. Туннелирование SSH - это метод создания зашифрованного соединения SSH между клиентом и сервером, через который можно ретранслировать сервисные порты.
В этом руководстве мы объясним, как создать SSH-туннель и подключиться к серверу MySQL из удаленных клиентов. То же самое относится и к MariaDB.
Предпосылки
- SSH Client.SSH доступ к системе, в которой работает сервер MySQL.
Создайте SSH-туннель в Linux и MacOS
Клиент
ssh
предустановлен на большинстве систем Linux и Unix.
ssh -N -L 3336:127.0.0.1:3306 @
Используются следующие параметры:
-
-N
- Указывает SSH не выполнять удаленную команду.-L 3336:127.0.0.1:3306
- Создает переадресацию локального порта. Локальный порт (3306
), IP-адрес назначения (127.0.0.1
) и удаленный порт (3306
) разделяются двоеточием (:).@
- Удаленный пользователь SSH и IP-адрес сервера. Чтобы запустить команду в фоновом режиме, используйте параметр-f
Если сервер SSH прослушивает порт, отличный от 22 (по умолчанию), укажите порт с параметром-p
.
После запуска команды вам будет предложено ввести пароль пользователя SSH. После входа вы будете авторизованы на сервере, и SSH-туннель будет установлен. Рекомендуется настроить аутентификацию на основе ключей SSH и подключиться к серверу без ввода пароля.
Теперь вы можете указать клиенту MySQL на локальном компьютере
127.0.0.1:3336
ввести учетные данные для входа в удаленную базу данных и получить доступ к серверу MySQL.
Например, чтобы подключиться к серверу MySQL с помощью клиента командной строки
mysql
вы должны выполнить:
mysql -u MYSQL_USER -p -h 127.0.0.1
Где
MYSQL_USER
- удаленный пользователь MySQL, имеющий права доступа к базе данных.
При появлении запроса введите пароль пользователя MySQL.
Чтобы завершить туннель SSH, введите
CTRL+C
в консоли, где работает клиент ssh.
Создайте SSH-туннель в Windows
Пользователи Windows должны сначала загрузить и установить клиентскую программу SSH. Самый популярный SSH-клиент для Windows - это PuTTY. Вы можете скачать PuTTY здесь.
Выполните следующие шаги для создания туннеля SSH к серверу MySQL с PuTTY:
-
Запустите Putty и введите IP-адрес сервера в поле
Host name (or IP address)
:Вывод
MySQL, самый популярный сервер баз данных с открытым исходным кодом, прослушивает входящие соединения только на локальном хосте. Создание туннеля SSH позволяет безопасно подключаться к удаленному серверу MySQL с локального клиента.
mysql mariadb ssh
Как использовать туннель vpn на вашем телефоне Android

Вам нужен отслеживаемый, зашифрованный просмотр на Android? Узнайте, как использовать TunnelBear VPN на вашем телефоне Android. Это бесплатно и достойно.
Как подключиться к серверу ftp через macfusion - путеводитель

Узнайте, как подключиться к FTP-серверу в Mac прямо из Finder через Macfusion.
Как передать файлы с помощью rsync через ssh

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