Страница 1 из 1

Работа Apache за шлюзом.

Добавлено: 2015-12-26 23:25:02
Скорпион
Уважаемые гуру!
Подскажите возможна ли такая схема работы и как её реализовать.
lan.jpg
Имеется две машины на FreeBSD 10:
GATE:
Имеет один физ. интерфейс, через который подключена к интернету со статическим IP (A).
На данной машине также запущен PPTP-сервер, поднимающий линк C-D, где С - адрес шлюза, а D - удаленный адрес.

APACHE:
Из названия понятно что на нем крутиться апач.
Имеет один физ. интерфейс подключенный к интернет с динамическим IP.
Также на данной машине настроен PPTP-клиент, который через интернет подключается (фиолетовая стрелка) к GATE.

Задача.
Перебросить запросы с A:80 на D:80 на котором крутиться сервер с сайтом.

Попробовал сделать редирект при помощи rinetd.
Все работает.
НО, в логах все запросы к серверу идут от IP адреса (С) машины GATE, что естественно и так и должно быть, но меня это не устраивает.
Во первых пропадает возможность определять IP нарушителей спокойствия средствами самого сайта. Точнее средствами CMS, на которой он построен.
Во вторых (и самое главное) у меня есть подозрения, что используя всевозможные счетчики будет не правильно считаться статистика, так как IP пользователя на самом сайте будет один и тот-же.
Поэтому данное решение мне совсем не симпотизирует. Хотя и работает.

Почитал что редирект можно реализовать через NATD.
Вообщем настроил и дошел до того что трафик от пользователя доходит до апача, а вот дальше - затык.
Так как в пакете, который добрался таки до точки D:80, в качестве отправителя указан IP (Пусть будет точка F) с которого поступил запрос на точку A:80 (чего я собственно и добиваюсь), а вот обратно вернуться у него не получается.
Смотрю ptcpdump-ом что апач отвечает D:80 > F:xxx, и пакет соответственно не знает куда ему идти.
Точнее я подозреваю что он пытается выйти через точку B

Я понимаю что нужно на машине APACHE завернуть весь трафик от сервера через точку-шлюз С в точку A на которой NATD уже отправить его тому кто его запросил, так как именно он в этом месте "заворачивал" трафик к серверу.
Но что-то у меня не получается это реализовать.

Подскажите где почитать и как победить данную задачу.

P.S. Друзья. О причинах необходимости такой схемы работы давайте не будем рассуждать - ну вот так вот надо.

Отправлено спустя 3 минуты 48 секунд:
За основу брал вот эту статью - http://subnets.ru/blog/?p=1605

Работа Apache за шлюзом.

Добавлено: 2015-12-29 8:29:23
Alex Keda
Курить ман, секции про просовывание портов

Работа Apache за шлюзом.

Добавлено: 2015-12-29 13:37:50
Скорпион
Весь сыр бор в том, что основная задача не потерять по пути IP вопрощающего.
Если начинать манипулировать кто и куда послал - он теряется.

Работа Apache за шлюзом.

Добавлено: 2015-12-30 8:47:29
kharkov_max
Ставим на gateway apache, делаем proxy pass куда нужно, и там где нужно доставляем модуль rpaf2. Как то так...

Работа Apache за шлюзом.

Добавлено: 2015-12-30 20:45:54
Скорпион
хм...а вот про proxy pass я что-то слышал....надо будет посмотреть...спасибо большое. С наступающим!