Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Сеть > php ssh тунель mesql


Автор: studentigor 22.8.2013, 23:35
Всем привет.
Есть виртуальный сервак - сервер1. И есть другой сервер, сервер2, с развернутым проектом.

В этом проекте есть модуль, который оперирует данными с сервера 1. То-есть в себе он должен создавать соелинение с удаленной базой.

Но вот беда, на сервере1 запрешены внешние коннекты к базе, и поддержка сказала что законектится можно через ssh тунель.

Ну понятно, я погуглил и вот есть такая команда
Код

shell_exec("ssh -L 3307:127.0.0.1:3306 user@host");

которая должна создавать тунель и дальше работаем как с локалхостом.
Но вот чето она не делает то что надо.

Я её выполняю, дальше сразу конекчусь к базе, а мне говорит что я не законектился.


Выполнил команду 
Код

ssh -L 3307:127.0.0.1:3306 user@host
 в консоли, потом подключился к mysql и все отлично прошло, а из приложения ну никак.
подскажите как это можно решить?



и вопрос №2. С локалки я конекчусь на сервер1 через ssh ключи, а как мне конектится к серверу1 из сервера2, как с ключами все разруливать?

Спасибо.

Автор: krypt3r 23.8.2013, 07:08
Цитата
(remember, only root can open sockets on privileged ports)

Не?

Автор: studentigor 23.8.2013, 15:48
ну я из консоли открывал от обычного пользователя, по этому only root отпадает.

А на php exect возвращает текст который будет отдан в ответ на команду, но у меня это значение пустое.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)