Проксирование внешних запросов PHP/Perl/Python/т.п. - реально?

L
На сайте с 06.04.2013
Offline
4
2035

Приветствую.

Знающие подскажите. Имеется нода под динамические скрипты PHP/Perl/Python (Fastcgi/CGI). Требуется все внешние подключения, кроме запросов к localhost как минимум (и желательно 127.0.0.1 и IP-адреса машины), проксировать, направлять через сторонний сервер/несколько серверов.

Самым адекватным методом мне кажется сделать отдельный сетевой интерфейс, который прозрачно проксировать и как-то направить приложения на этот интерфейс. Но я не представляю как это реализовать и вообще возможно ли.

Подскажите - какой наилучший метод реализации?

Если кто-то может сделать за N-ую сумму - можете сразу написать в пм.

Himiko
На сайте с 28.08.2008
Offline
560
#1

Задача не понятна.

Распишите более точно и подробно.

Что значит "направлять через сторонний сервер". Куда направлять?

Профессиональное администрирование серверов (https://systemintegra.ru). Круглосуточно. Отзывы (/ru/forum/834230) Лицензии (http://clck.ru/Qhf5) ISPManager,VDSManager,Billmanager e.t.c. по низким ценам.
Andreyka
На сайте с 19.02.2005
Offline
822
#2

Отчего бы и нет

Делаем проброс портов на файрволе и готово

Не стоит плодить сущности без необходимости
Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#3
С уважением, Борис Долгов. Администрирование, дешевые лицензии ISPsystem, Parallels, cPanel, DirectAdmin, скины, SSL - ISPlicense.ru (http://www.isplicense.ru/?from=4926)
L
На сайте с 06.04.2013
Offline
4
#4
Andreyka:
Отчего бы и нет
Делаем проброс портов на файрволе и готово

Но каких портов? Ведь при отправки внешних запросов фреймворки отправляют запрос с случайного порта (по дефолту 1024-65535). Вы имеете в виду 1024-65535 пробросить?

Спасибо, но похоже, что очень много недочётов.

tsocks does NOT work correctly with asynchronous sockets
tsocks is NOT fully RFC compliant in its implementation of version 5 of SOCKS
tsocks can only proxy outgoing
Последнее самое "противное", если имеется в виду, что "ответ" назад не придёт.
Andreyka
На сайте с 19.02.2005
Offline
822
#5

Проброс делать по порту с которого он идет а не на который

Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#6
Lomax:

Спасибо, но похоже, что очень много недочётов. Последнее самое "противное", если имеется в виду, что "ответ" назад не придёт.

Разумеется, ответ придёт -- речь о том, что нельзя проксировать входящие соединения.

На самом деле, лучше варианта Вы не найдёте -- либо пользоваться этим, либо переписывать свои приложения, чтобы они использовали прокси.

P
На сайте с 08.03.2007
Offline
250
#7

Вы можете сделать простой вариант - поставить виртуалку с nginx, который будет общаться с внешним миром (через реальную сеть) и Вашими скриптами (через приватную сеть), а default router у сервера (виртуалки) с скриптами направить туда куда Вам хочется.

L
На сайте с 06.04.2013
Offline
4
#8
Andreyka:
Проброс делать по порту с которого он идет а не на который

А я как написал? Я проверил на PHP. Php-fpm отправляет запросы с портов 1024-65535, например с порта 31241 только что отправило.

Boris A Dolgov:
Разумеется, ответ придёт -- речь о том, что нельзя проксировать входящие соединения.

На самом деле, лучше варианта Вы не найдёте -- либо пользоваться этим, либо переписывать свои приложения, чтобы они использовали прокси.

Мне кажется это можно сделать стандартными средства, только нужно "придумать", как это реализовать, а у меня похоже не хватает воображения.

Pilat:
Вы можете сделать простой вариант - поставить виртуалку с nginx, который будет общаться с внешним миром (через реальную сеть) и Вашими скриптами (через приватную сеть), а default router у сервера (виртуалки) с скриптами направить туда куда Вам хочется.

Тоже неплохой вариант, но с виртуалками если честно не хочется иметь дело на кластере.

Andreyka
На сайте с 19.02.2005
Offline
822
#9

Вот теперь я понял чего хочет ТС

Ну тут все просто. Пускаем процессы под опредленным юзером и делаем проброс через владельца (owner).

L
На сайте с 06.04.2013
Offline
4
#10
Andreyka:
Вот теперь я понял чего хочет ТС

Ну тут все просто. Пускаем процессы под опредленным юзером и делаем проброс через владельца (owner).

Хм, а так можно?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий