Проблема с форвардингом портов



  • Всем здравствуйте!
    В локальной сети есть маршрутизатор с pfSense, в котором одна сетевая карта смотрит в локаьную сеть, другая смотрит наружу. Также в локальной сети есть веб-сервер(mydomain.com). Я добавил правило в NAT, которое перенаправляет все http-запросы на вебсервер. С наружки все работает отлично - на сайт заходят без проблем. А вот изнутри (из локальной сети), набрав "mydomain.com" в строке браузера на вебсервер не зайти. В чем может быть загвоздка?



  • У Вас на внутренних хостах mydomain.com должно разрешаться в локальный (серый) IP адрес веб-сервера, а не в адрес WAN . Настройте локальный DNS.



  • хм… У меня дома маршрутизатор D-Link со встроенной прошивкой, но даже он понимает, когда из локальной сети я захожу на mydomain.com, то он выходит во внешку(так как получает от DNS внешний ip) и потом уже стучится на сайт.
    Если такой мощный продукт, как pfSense не умеет подобной опции, то это серьезный косяк. Кроме настройки локального DNS можно ли как-то по-другому решить этот вопрос? Я не хочу поднимать локальный DNS для решения подобной задачи.
    NAT pfSense этого умеет?



  • NAT Reflection
    в
    System: Advanced: Firewall and NAT

    не решит эту задачу?

    У меня опубликованы в интернет несколько служб,  в настройках клиентов указан адрес типа  mydomain.com, все  работает и снаружи и внутри.



  • @pigbrother:

    NAT Reflection

    пардон, он должен быть включен или выключен?
    @pigbrother:

    У меня опубликованы в интернет несколько служб,  в настройках клиентов указан адрес типа  mydomain.com, все  работает и снаружи и внутри.

    можете привести пару правил NATa и файрволла как пример?



  • @Pashka:

    @pigbrother:

    NAT Reflection

    пардон, он должен быть включен или выключен?
    @pigbrother:

    У меня опубликованы в интернет несколько служб,  в настройках клиентов указан адрес типа  mydomain.com, все  работает и снаружи и внутри.

    можете привести пару правил NATa и файрволла как пример?

    В версиях 2.0.х -  галка для включения NAT Reflection  должна быть снята, 2.1 сейчас под рукой нет, в 2.1 настройка iшире и  несколько отличается.

    NAT:

    WAN TCP * * * 1352 10.0.0.10 1352 Domino server

    Firewall, автоматически созданное правило:

    TCP * * 10.0.0.10 1352 * none   NAT Domino server



  • @Pashka:

    хм… У меня дома маршрутизатор D-Link со встроенной прошивкой, но даже он понимает, когда из локальной сети я захожу на mydomain.com, то он выходит во внешку(так как получает от DNS внешний ip) и потом уже стучится на сайт.
    Если такой мощный продукт, как pfSense не умеет подобной опции, то это серьезный косяк. Кроме настройки локального DNS можно ли как-то по-другому решить этот вопрос? Я не хочу поднимать локальный DNS для решения подобной задачи.
    NAT pfSense этого умеет?

    Я Вам предлагал простой способ при наличии локального DNS сервера. Можно и по другому - Вам уже ответили - с помощью NAT.



  • pigbrother, спасибо огромное. надеюсь все прокатит - спасибо.

    Хм… пробовал - неполучается. NAT Reflection - Disabled



  • System: Advanced: Firewall and NAT > Network Address Translation / NAT Reflection mode for port forwards

    Если эта функция включена , это автоматически создает дополнительный NAT правила перенаправления для доступа к портовых форвардов на внешнем IP адресe из вашего внутренних сетей .



  • @dvserg:

    System: Advanced: Firewall and NAT > Network Address Translation / NAT Reflection mode for port forwards

    Если эта функция включена , это автоматически создает дополнительный NAT правила перенаправления для доступа к портовых форвардов на внешнем IP адресe из вашего внутренних сетей .

    я вот только не понял, в чем отличие того, что я делаю здесь "System: Advanced: Firewall and NAT > Network Address Translation / NAT Reflection mode for port forwards" и того, что я отключаю его, когда создаю правило NAT? К сожалению нет возможности экспериментировать, так как маршрутизатор находится в работе, поэтому приходится выяснять все до подробностей.



  • Попробую описать проблему при доступе локального клиента к локальному Веб серверу через внешний адрес WAN с пробросом портов.

    1. В локальной сети все компьютеры находятся в одном адресном пространстве и общаются напрямую по своим IP адресам.
    2. NAT - меняет (маскирует) адрес отправителя
    3. МАПИНГ - меняет адрес получателя

    В технологии мапинга портов с WAN на внутренний IP Веб сервера происходит замена WAN адреса на внутренний серый, а адрес отправителя сохраняется.
    Для внешних запросов это не критично, ответ от ВЕБ-сервера идет назад на pfSense и тот уже производит обратные манипуляции де-мапинга.
    Проблема есть для внутренних запросов. Локальный клиент отправляя запрос на WAN желает получить ответ от него-же, но мапинг переадресовывает пакет на локальный сервер, который видит, что пакет от клиента, и пытается ответить ему напрямую (см. п. 1 ) минуя pfSense. Обратного де-мапинга пакета не происходит и он игнорируется клиентом ("х.з. от кого пришло - я такого не спрашивал").

    Опция System: Advanced: Firewall and NAT > Network Address Translation / NAT Reflection mode for port forwards вроде как позволяет добавочными NAT правилами обманывать локальный веб сервер и заставляет его отсылать ответ назад локальному клиенту через pfSense. Делается это еще одним правилом NAT, которое подменяет адрес отправителя на адрес WAN (? вроде да) интерфейса, и тогда локальный Веб-сервер уверен, что запрос отправлял сам pfSense.

    Но в этой опции нужно почитать описание ее режимов, чтобы выбрать подходящий.

    Как-то так.



  • @dvserg:

    Делается это еще одним правилом NAT, которое подменяет адрес отправителя на адрес WAN (? вроде да) интерфейса, и тогда локальный Веб-сервер уверен, что запрос отправлял сам pfSense.

    хм… а как это сделать?



  • @Pashka:

    @dvserg:

    Делается это еще одним правилом NAT, которое подменяет адрес отправителя на адрес WAN (? вроде да) интерфейса, и тогда локальный Веб-сервер уверен, что запрос отправлял сам pfSense.

    хм… а как это сделать?

    System: Advanced: Firewall and NAT > Network Address Translation / NAT Reflection mode for port forwards



  • @dvserg:

    @Pashka:

    @dvserg:

    Делается это еще одним правилом NAT, которое подменяет адрес отправителя на адрес WAN (? вроде да) интерфейса, и тогда локальный Веб-сервер уверен, что запрос отправлял сам pfSense.

    хм… а как это сделать?

    System: Advanced: Firewall and NAT > Network Address Translation / NAT Reflection mode for port forwards

    А это обзательно делать в глобальных настройках?
    я создал правило NAT(в опциях правила NAT Reflection mode указал "Pure NAT"), но у меня по-прежнему нет доступа к вебсерверу из локалки.



  • @Pashka:

    А это обзательно делать в глобальных настройках?

    Можно и не делать!
    Но и работать не будет. :-))



  • Паша ты задаешь слишком много вопросов ( с тебя уже 1000р на адрес модера;)))  а вообще почитай сперва про правила что такое нат и как организовать локальную сеть с DNS а потом уже пиши сюда 1000% все вопросы твои сами собой пропадут



  • @dr.gopher:

    @Pashka:

    А это обзательно делать в глобальных настройках?

    Можно и не делать!
    Но и работать не будет. :-))

    хм… Вот значит как?! Попробую.



  • В общем ничего у меня не заработало…  :(
    То ли руки кривые, то ли что-то с pfSense не решаемо.



  • И за всё время переписки ни одного скриншота правил.



  • А что у Вас в Source в этом правиле? Я вижу отрицание !*



  • И в Dest. addr не выбран WAN address.

    Pfsense - это инструмент. Как вы с ним будете обращаться - так он будет работать. Если неверно написано правило, то нечего и требовать от него работоспособности.

    P.s. 3-е снизу правило Port forwarding - зачем оно там? Объясните его смысл, пож-та.



  • @dvserg:

    А что у Вас в Source в этом правиле? Я вижу отрицание !*

    пардон, в прошлом сообщении было много "секретной" информации…
    @werter:

    P.s. 3-е снизу правило Port forwarding - зачем оно там? Объясните его смысл, пож-та.

    Перенаправляет пользователей в сеанс RDP.




  • То что вы показали на скриншоте–это портфорвард на web server (http на 80 порт), а 3 правило в удаленном скрине было другое. Вы хотя бы правила показали.



  • Собственно правила.




  • Второе сверху правило что должно делать?
    Имеет значение порядок правил.
    Поднимите последнее правило на 2 место.



  • @dvserg:

    Поднимите последнее правило на 2 место.

    поднял… эффекта нет. ???



  • @Pashka:

    @dvserg:

    Поднимите последнее правило на 2 место.

    поднял… эффекта нет. ???

    Вышлите текущие скриншоты и файл /tmp/rules.debug мне на мыло.


Log in to reply