При использовании пакета npm node-mysql
npm можно ли подключиться к серверу MySQL с помощью ключа SSH вместо пароля?Подключение к MySQL с использованием SSH-туннелирования в узле-mysql
ответ
с today версия v2.1.0 поддержка защищена connection over ssl. Обратите внимание, что ключи SSH конфигурации не связана с MySQL: смотрите, как настроить mysql secure connection for server and client
Я получил это точно работающую систему сегодня, и это должно быть принято 10 минут, но я потратил 5 часов на немой ошибка, которую я написал (который был прямым результатом того, что я слишком старался сделать это через 5 минут).
Вы можете выполнить компонент туннеля SSH полностью независимо, а затем указать узел-mysql (или любой другой клиент sql ...) в вашу БД, используя TCP, туннелированный через SSH.
Просто настроить SSH туннель, как этот
ssh -N -p 22 [email protected] -L 33306:localhost:3306
Оставьте, что происходит в фоновом режиме (см articles like this больше в глубине информации).
Затем просто отправьте любой клиент MySQL на порт 33306 на localhost. Он будет фактически подключен, как если бы вы были на удаленном сервере и использовали порт 3306.
Спасибо! работал как шарм! –
Это действительно сработало! Каков наилучший способ убедиться, что соединение всегда работает? –
Я не уверен, что лучший метод, но [это] (http://software.clapper.org/daemonize/) может быть началом. –
Большое спасибо Стив, мой ответ мне очень помогает. просто, чтобы сделать его более четкое использование
SSH -f [email protected] -L 2000: personal-server.com: 25 -N
Параметр -f указывает SSH идти на задний план как раз перед ним выполняет команду. За этим следует имя пользователя и сервер, в который вы входите. -L 2000: personal-server.com: 25 находится в виде -L local-port: host: remote-port. Наконец, -N инструктирует OpenSSH не выполнить команду на удаленной системе
Для подключения к Монго использовать любой порт вы установили, как локальный порт (в данном случае порт 2000)
Для примера скажу, я хочу для подключения на удаленном сервере с IP 192.168.0.100, а mongo работает на порту 27017.
Предположим, что пользователь, называемый elie, с паролем eliepassword имеет доступ к ssh на порту 22 Мне нужно будет это сделать Первый запуск на терминале следующие:
ssh -f [email protected] -L 2002: 127.0.0.1: 2 7017 -N
В моей связи Монго я буду делать:
вар мангуст = требуется ('мангуст');
mongoose.connect ('mongodb: // localhost: 2002/mydatabase');
module.exports = mongoose.connection;
Надеюсь, это даёт понять.
- 1. Подключение к удаленному MySQL с использованием Xamarin
- 2. Подключение к MySql с использованием C#
- 3. Подключение к MySQL с использованием JDBC драйвер
- 4. Подключение к MySQL с использованием JDBC
- 5. Подключение к MySQL с использованием Java
- 6. Подключение к MYSQL с использованием C
- 7. Подключение к mysql с использованием сервера zend
- 8. Подключение к старой установке mysql с использованием python-mysql,
- 9. Подключение к MySQL с JDBC
- 10. Подключение к MySQL с использованием python без установки Mysql
- 11. Подключение удаленно к MySQL
- 12. Случайное подключение к MySQL
- 13. Подключение к MySQL с Tcl
- 14. Подключение к MySQL с PHP
- 15. подключение к mysql с java
- 16. Подключение к MySQL в Ruby с использованием NetBeans
- 17. подключение к MySQL с использованием JDBC в eclipse
- 18. Подключение к серверу MySQL с использованием IPv6 в C#
- 19. Подключение к MySQL с использованием драйвера ODBC в PHP-коде
- 20. Подключение к MySQL с Джанго
- 21. Подключение к MySql через
- 22. медленное подключение к серверу MySQL
- 23. Подключение к MySQL с JSP с использованием Eclipse
- 24. Подключение к Cloud SQL с использованием IP
- 25. Подключение к серверу MySQL
- 26. Подключение к AWS RDS с использованием eclipse
- 27. Подключение к MySQL БД
- 28. Подключение к mysql db
- 29. подключение к базе данных с использованием распорок
Привет @AndreySidorov ... Можете ли вы сказать мне, поддерживает ли 'node-mysql' подключение к MySQL через SSH-туннель? –
Нет, это вне области node-mysql. Просто создайте туннель и используйте его с node-mysql. Вы можете использовать (ssh2) [https://github.com/mscdex/ssh2] модуль для пересылки порта.Кроме того, node-mysql2 может принимать любые двунаправленные потоки в качестве транспорта, вы даже можете совершать магию socat и передавать порожденный процесс stdin/out как базовый поток –
Я запускаю SSH-туннель на своей машине, и я могу подключиться к удаленной базе данных через командную строку 'mysql' здесь (127.0.0.1, порт 13306), но' node-mysql' не может быть успешным с соединением 'ECONNREFUSED'. Похоже, я не могу заставить его фактически попробовать хост и порт, которые я передаю ему. –