The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Вебсервер за натом."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Маршрутизация, NAT / FreeBSD)
Изначальное сообщение [ Отслеживать ]

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

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


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

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

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


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

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


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

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

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

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


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

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

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

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

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

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


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

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

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

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

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

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

Да

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

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

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


Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

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

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

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Вебсервер за натом."  +/
Сообщение от isvd on 10-Окт-12, 21:20 
У меня несколько web серверов за nat.  nginx спас. Ставите его на шлюз легкая правка конфига и все летает. И геморрой с пробросом отпадает. Спокойно ходите на сайты как изнутри так и с снаружи.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру