URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 93827
[ Назад ]

Исходное сообщение
"Вебсервер за натом."

Отправлено evg89 , 23-Сен-12 09:11 
Добрый день! Продолжаю свое изучение freebsd как шлюза. Фряха у меня стоит на виртуальной машине в hyper-v, настроена шлюзом и раздает интернет, на ней вертится почтовый сервер. Фряха имеет белый ip, к которому привязано некоторое доменное имя qwerty.ru (собственное и почтовик имеет ящик - 123@qwerty.ru). Хочу реализовать следующую схему - поднимается вторая виртуалка с вебсервером (дебиан\убунту), имеющая выход только в локалку, туда ложится сайт, фряха же настраивается таким образом, что перебрасывает посетителей на вебсервер. Вопрос - как это грамотнее сделать? Пробрасывать 80й порт на линуксовый вебсервер? А если там будет 2 сайта, апач сам разрулит, куда пустить посетителя?
Извините, если немного путано....

Содержание

Сообщения в этом обсуждении
"Вебсервер за натом."
Отправлено PavelR , 23-Сен-12 09:58 
> Пробрасывать 80й порт на линуксовый вебсервер?
> А если там будет 2 сайта, апач сам разрулит, куда пустить посетителя?

Файрволл (проброс портов) работает на пакетном уровне протокола TCP, не влезая в данные пакета. Какой сайт запрошен - определяется заголовком Host: в данных запроса.

Т.е. Если внутренний веб-сервер один, то тупо пробрасываем 80 порт, все запросы пойдут на веб-сервер и он всё разрулит сам.


Если внешний шлюз один, а веб-серверов несколько, то, соответственно, шлюз должен уметь работать на уровне данных пакета и перенаправлять запрос на соответствующий веб-сервер в соответствии с какими-то правилами.

Проще всего в этом случае поставить проксирующий веб-сервер типа nginx на шлюз, т.е. обрабатывать пакеты приложением. На уровне ядра анализировать пакеты и потом перенаправлять "в разные пробросы" тоже можно, но в массы такие решения не ушли (теоретическое рассуждение).
Обработка на уровне приложения дает определенные плюсы, типа полной буферизации ответа и т п и не особо проигрышна по сравнению обработкой трансляции порта.



"Вебсервер за натом."
Отправлено evg89 , 23-Сен-12 10:12 
> Если внешний шлюз один, а веб-серверов несколько, то, соответственно, шлюз должен уметь
> работать на уровне данных пакета и перенаправлять запрос на соответствующий веб-сервер
> в соответствии с какими-то правилами.
> Проще всего в этом случае поставить проксирующий веб-сервер типа nginx на шлюз,
> т.е. обрабатывать пакеты приложением. На уровне ядра анализировать пакеты и потом
> перенаправлять "в разные пробросы" тоже можно, но в массы такие решения
> не ушли (теоретическое рассуждение).
> Обработка на уровне приложения дает определенные плюсы, типа полной буферизации ответа
> и т п и не особо проигрышна по сравнению обработкой трансляции
> порта.

1. а если вебсервер один, а на нем несколько виртуальных хостов? получается пробрасываем 80й порт и апач в сответствии с хост разрулит какой сайт запрошен?

2. если несколько вебсерверов. при помощи squid на шлюзе можно осуществить описываемую вами схему? (сквид уже стоит и фильтрует доступ к сайтам из локалки)



"Вебсервер за натом."
Отправлено PavelR , 23-Сен-12 10:35 
> 1. а если вебсервер один, а на нем несколько виртуальных хостов? получается
> пробрасываем 80й порт и апач в сответствии с хост разрулит какой
> сайт запрошен?

Перечитайте ответ выше.

Попробуйте читать форум, а не только писать в него.

> 2. если несколько вебсерверов. при помощи squid на шлюзе можно осуществить описываемую
> вами схему? (сквид уже стоит и фильтрует доступ к сайтам из
> локалки)

см. http://www.opennet.me/openforum/vsluhforumID12/6882.html
Попробуйте читать форум, а не только писать в него.


Универсальный ответ на все вопросы: Попробуйте _читать_. Форумы, официальные сайты проектов. Там есть частозадаваемые вопросы, примеры конфигураций, документация, и т п.


"Вебсервер за натом."
Отправлено lavr , 24-Сен-12 14:29 
>[оверквотинг удален]
>> сайт запрошен?
> Перечитайте ответ выше.
> Попробуйте читать форум, а не только писать в него.
>> 2. если несколько вебсерверов. при помощи squid на шлюзе можно осуществить описываемую
>> вами схему? (сквид уже стоит и фильтрует доступ к сайтам из
>> локалки)
> см. http://www.opennet.me/openforum/vsluhforumID12/6882.html
> Попробуйте читать форум, а не только писать в него.
> Универсальный ответ на все вопросы: Попробуйте _читать_. Форумы, официальные сайты проектов.
> Там есть частозадаваемые вопросы, примеры конфигураций, документация, и т п.

поправка: читать мало, еще нужно думать и понимать. :)


"Вебсервер за натом."
Отправлено tux2002 , 24-Сен-12 11:29 
> 1. а если вебсервер один, а на нем несколько виртуальных хостов? получается
> пробрасываем 80й порт и апач в сответствии с хост разрулит какой
> сайт запрошен?

Да

> 2. если несколько вебсерверов. при помощи squid на шлюзе можно осуществить описываемую
> вами схему? (сквид уже стоит и фильтрует доступ к сайтам из
> локалки)

Можно например сделлать доступ к нескольким веб серверам, но в url надо будет писать напимер
http://host:81 http://host:82 http://host:83

И эти порты 81 82 83 пробрасывать в локалку на слушающие порты вебсерверов. Сквидом это наврядли можно сделать, для Win есть Winroute с триалом.



"Вебсервер за натом."
Отправлено AdVv , 03-Окт-12 04:15 
> Добрый день! Продолжаю свое изучение freebsd как шлюза. Фряха у меня стоит
> на виртуальной машине в hyper-v, настроена шлюзом и раздает интернет, на
> ней вертится почтовый сервер. Фряха имеет белый ip, к которому привязано
> некоторое доменное имя qwerty.ru (собственное и почтовик имеет ящик - 123@qwerty.ru).
> Хочу реализовать следующую схему - поднимается вторая виртуалка с вебсервером (дебиан\убунту),
> имеющая выход только в локалку, туда ложится сайт, фряха же настраивается
> таким образом, что перебрасывает посетителей на вебсервер. Вопрос - как это
> грамотнее сделать? Пробрасывать 80й порт на линуксовый вебсервер? А если там
> будет 2 сайта, апач сам разрулит, куда пустить посетителя?
> Извините, если немного путано....

На FreeBSD поднят NAT ? rc.conf покажи ?


"Вебсервер за натом."
Отправлено isvd , 10-Окт-12 21:20 
У меня несколько web серверов за nat.  nginx спас. Ставите его на шлюз легкая правка конфига и все летает. И геморрой с пробросом отпадает. Спокойно ходите на сайты как изнутри так и с снаружи.