Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    проброс ftp в версии 2.2

    Russian
    3
    9
    3.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      lamerrrr
      last edited by

      После обновления до 2.2 перестал работать проброс с WAN на внутренний FTP сервер. откатываться? или есть какие новые тонкости?

      1 Reply Last reply Reply Quote 0
      • P
        paulroot
        last edited by

        Аналогично, из локалки на внешние ftp через NAT и снаружи на мой ftp перестало бегать. Я в легком шоке как такое обновление можно было выложить для рабочих шлюзов (squid+Lightsquid перестали работать, ftp через NAT перестал), причем по ftp это похоже осознанно сделали "pfSense 2.2-RELEASE does not include an FTP Proxy" (https://doc.pfsense.org/index.php/FTP_without_a_Proxy).
        В итоге решил пока так:
        1. Для клиентов из локалки наружу - перенастроил их не через NAT, а через Squid3 (он поддерживает ftp проксирование).
        2. Для клиентов снаружи на мой ftp сервер - на ftp сервере указал диапазон портов для пассивных соединений клиентов и его пробросил на ftp сервер с WAN интерфейса шлюза (потому что в 2.1 релизе автоматом открывались и пробрасывались порты пассивного соединения передачи данных ftp протокола, а в 2.2 придется по старинке вручную жестко закреплять пул портов проброса)

        1 Reply Last reply Reply Quote 0
        • werterW
          werter
          last edited by

          @lamerrrr:

          После обновления до 2.2 перестал работать проброс с WAN на внутренний FTP сервер. откатываться? или есть какие новые тонкости?

          В каком режиме работает ftp ?

          1 Reply Last reply Reply Quote 0
          • werterW
            werter
            last edited by

            Аналогично, из локалки на внешние ftp через NAT и снаружи на мой ftp перестало бегать. Я в легком шоке как такое обновление можно было выложить для рабочих шлюзов (squid+Lightsquid перестали работать, ftp через NAT перестал), причем по ftp это похоже осознанно сделали "pfSense 2.2-RELEASE does not include an FTP Proxy" (https://doc.pfsense.org/index.php/FTP_without_a_Proxy).
            В итоге решил пока так:
            1. Для клиентов из локалки наружу - перенастроил их не через NAT, а через Squid3 (он поддерживает ftp проксирование).

            http://peterhost.ru/wiki/Активный-и-пассивный-режим-работы-FTP/

            В пассивном режиме, после того как клиент сказал «Привет!», сервер сообщает клиенту номер TCP-порта (из динамического диапазона 1024-65535), к которому можно подключится для установки соединения передачи данных.

            Попробуйте разрешить временно на адрес внешнего ftp всё tcp и попробовать подключиться.

            Что при этом в логах fw ?

            2. Для клиентов снаружи на мой ftp сервер - на ftp сервере указал диапазон портов для пассивных соединений клиентов и его пробросил на ftp сервер с WAN интерфейса шлюза (потому что в 2.1 релизе автоматом открывались и пробрасывались порты пассивного соединения передачи данных ftp протокола, а в 2.2 придется по старинке вручную жестко закреплять пул портов проброса)

            Странно, у меня и в 2.0.х - 2.1.х приходилось для пассива порты явно пробрасывать. Ибо не работало и с ftp proxy.

            P.s. Как вариант, поставить 2.2 с нуля и проверить работу проблемных мест
            P.p.s. Попробуйте set "Firewall Optimization Options" to Conservative under System -> Advanced

            1 Reply Last reply Reply Quote 0
            • L
              lamerrrr
              last edited by

              @paulroot:

              Аналогично, из локалки на внешние ftp через NAT и снаружи на мой ftp перестало бегать. Я в легком шоке как такое обновление можно было выложить для рабочих шлюзов (squid+Lightsquid перестали работать, ftp через NAT перестал), причем по ftp это похоже осознанно сделали "pfSense 2.2-RELEASE does not include an FTP Proxy" (https://doc.pfsense.org/index.php/FTP_without_a_Proxy).
              В итоге решил пока так:
              1. Для клиентов из локалки наружу - перенастроил их не через NAT, а через Squid3 (он поддерживает ftp проксирование).
              2. Для клиентов снаружи на мой ftp сервер - на ftp сервере указал диапазон портов для пассивных соединений клиентов и его пробросил на ftp сервер с WAN интерфейса шлюза (потому что в 2.1 релизе автоматом открывались и пробрасывались порты пассивного соединения передачи данных ftp протокола, а в 2.2 придется по старинке вручную жестко закреплять пул портов проброса)

              О! Всё так и есть, лучше не напишешь :( Я на момент создания поста еще не столкнулся с "клиентской частью"…

              @werter:

              @lamerrrr:

              После обновления до 2.2 перестал работать проброс с WAN на внутренний FTP сервер. откатываться? или есть какие новые тонкости?

              В каком режиме работает ftp ?

              И так и так все не работает. Раньше эксплуатировался в пассивном, был проброшен только 21 порт и ВСЁ!
              теперь на одном из шлюзов пробросил 21,20 и диапазон, на нем заработало в активном режиме с машин имеющих белые адреса, а которые за любым НАТом так и не работают… В пассивном так и не работает.
              жуть :(

              1 Reply Last reply Reply Quote 0
              • werterW
                werter
                last edited by

                теперь на одном из шлюзов пробросил 21,20 и диапазон, на нем заработало в активном режиме с машин имеющих белые адреса, а которые за любым НАТом так и не работают… В пассивном так и не работает.
                жуть

                Покажите скрины правил fw на этом шлюзе.

                1 Reply Last reply Reply Quote 0
                • P
                  paulroot
                  last edited by

                  http://peterhost.ru/wiki/Активный-и-пассивный-режим-работы-FTP/

                  В обоих направлениях используется пассивный режим ftp (как самый удобный).

                  Что при этом в логах fw ?

                  Без поддержки фаером трассировки комплексного ftp протокола (чтения номера порта ftp-data внутри пакета и последующее автоматическое открытие этого порта с NAT), что внутрь, что наружу ftp клиенты после нормального общения по 21 порту управления пытаются подключится к пассивным (непривилегированным,  высоким) портам данных, указанным ftp сервером, но не проходят фаервол (т.к. в фаерволе правило о проходе ftp-data автоматически не появляется), в логе фаера соответственно - отметка о блокировке этого соединения клиента (при этом ftp клиент внутри или снаружи неважно - ответа на свой посланный TCP SYN не получит никогда).
                    Решение было давно найдено, либо фаер должен поддерживать трассировку протокола ftp, например iptables помню с параметром related в правиле это делал (модуль IPTABLES_MODULES="ip_nat_ftp" http://www.tudimon.com/2009/04/16/razreshenie-dostupa-k-ftp-sredstvami-iptables.html). Здесь pf думаю не дурнее iptables. Это и был вариант через NAT в 2.1. Надо в настройках pf фаера pfSense 2.2 поковырятся, похоже они там отключили поддержку автоматической трассировки ftp-data через фаер.

                  Либо второй вариант, через специальный ftp-proxy демон/компонент прокси, проводящий эти соединения через фаер от своего имени (по сути выполняющий трассировку ftp за фаер).

                  Странно, у меня и в 2.0.х - 2.1.х приходилось для пассива порты явно пробрасывать. Ибо не работало и с ftp proxy.

                  У меня всю линейку 2.1 пассивный ftp автоматом через NAT фаером отрабатывался без явного задания пула пассивных портов и их проброса.

                  P.p.s. Попробуйте set "Firewall Optimization Options" to Conservative under System -> Advanced

                  Ок

                  1 Reply Last reply Reply Quote 0
                  • werterW
                    werter
                    last edited by

                    В обоих направлениях используется пассивный режим ftp (как самый удобный).

                    Направление только одно - это режим работы ftp-сервера.

                    1 Reply Last reply Reply Quote 0
                    • P
                      paulroot
                      last edited by

                      @werter:

                      В обоих направлениях используется пассивный режим ftp (как самый удобный).

                      Направление только одно - это режим работы ftp-сервера.

                      В "обоих направлениях" у меня имеется в виду следующие противоположные относительно шлюза pfSense направления:
                      1. ftp клиенты из LAN на ftp серверы в Интернете
                      2. ftp клиенты из Интернета на мой ftp сервер в DMZ
                      Для каждого направления в 2.1.x было одно автоматическое решение (модуль трассировки ftp), в 2.2 разные решения.
                      А если в п.1 внешний ftp сервер работает в активном режиме, пусть идет в пень, не собираюсь в фаере вручную настраивать/разрешать ему проход ко мне в LAN к ftp клиентам. Никто еще не жаловался.

                      Насчет модуля трассировки ftp в моем предыдущем посте - в дистрибутиве pfSense 2.1.4 в файле usr\local\share\protocols\ftp.pat упоминается его необходимость (tracking module):

                      Usually runs on port 21.  Note that the data stream is on a dynamically

                      assigned port, which means that you will need the FTP connection

                      tracking module in your kernel to usefully match FTP data transfers.

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post
                      Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.