У меня есть два удаленных выделенных сервера, один веб-сервер, который выполняет Apache и сервер на один дб, который выполняет MySQL.
Сервер Apache видим в Интернете, конечно, но второй сервер видим только к серверу Apache, потому что они соединены с LAN.
Я должен соединиться с удаленным сервером MySQL через Интернет от моего ПК дома, но только сервер Apache видим к моему ПК дома. Как может я set up перенаправление портов с моего сервера Apache на сервер MySQL, таким образом, я смогу "видеть" сервер MySQL от своего ПК дома?
Этим вопросом является продолжение от моего первого вопроса: https://stackoverflow.com/questions/4159256/connect-to-remote-mysql-server-from-my-application-problem-is-that-mysql-server, в котором Вы ответили мне и помогли мне много, говоря мне сделать "перенаправление портов".
Я просмотрел Интернет, и я не могу найти, что хорошее практическое руководство делает перенаправление портов. Я - опытный программист, но имею небольшой опыт на аппаратных средствах и сетях. Я могу понять хотя, что должно быть сделано, таким образом, я просто нуждаюсь в небольшой помощи для улаживания вещей.:)
P.S. Машина, которую выполняет Apache, находится на CentOS; сервер MySQL также выполняет CentOS. Веб-сервер P.S.2 выполняет WebHostManager. Я не знаю, имеет ли это какое-либо значение, или это может быть сделано легко через это, я просто упоминаю это.
Разожгите свой клиент SSH на Вашем рабочем столе.
Введите это (материал ниже объясняет, что Вы заменяете):
ssh -L desktop_port:database_host:database_port apache_username@apache_host
При запросе введите пароль apache_username. Сохраните этот терминал открытым, поскольку туннель закроется при закрытии этого соединения.
Пример, который работает на меня:
ssh -L 3306:db:3306 user@web
Когда Вы все сделаны, просто введите выход на своем терминале, и соединение закончится.