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

    Доступ к локальному ftp через WAN?

    Scheduled Pinned Locked Moved Russian
    43 Posts 5 Posters 7.4k Views
    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
      luha @werter
      last edited by

      @werter Всё открыто как надо. Я этой фигнёй несколько дней занимался, всё надеялся поправить как-то. Пойми - оно работает. Но только снаружи.

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

        @luha
        Вкл. дампинг трафика и смотри. Клиент же через ви-фи к фтп подключается? На ви-фи он не в ГОСТЕВОЙ сети?

        L 2 Replies Last reply Reply Quote 0
        • L
          luha @werter
          last edited by

          @werter Любая сеть, которая не "снаружи" провоцирует глюки при соединении с FTP. Клиент подключается нормально к серверу, нормально логинится, но дальше не получает ответ и сессия как-бы зависает. В терминале ничего не происходит.

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

            @luha В логах фтп-сервера что при этом? Не может быть , чтобы там ничего не было.

            L 1 Reply Last reply Reply Quote 0
            • L
              luha @werter
              last edited by

              @werter На вот, полюбуйся что творится.

              Статус: Определение IP-адреса для ftp.bobik.com
              Статус: Соединяюсь с 192.168.1.18:21...
              Статус: Соединение установлено, ожидание приглашения...
              Статус: Небезопасный сервер, не поддерживает FTP через TLS.
              Статус: Авторизовались
              Статус: Получение списка каталогов...
              Команда: PWD
              Ответ: 257 "/" is the current directory
              Команда: TYPE I
              Ответ: 200 Type set to I
              Команда: PASV
              Ответ: 227 Entering Passive Mode (XXX,XX,XX,XX,XXX,XX). - тут я подправил адрес
              Команда: MLSD
              Ошибка: Соединение прервано после 20 секунд неактивности
              Ошибка: Не удалось получить список каталогов
              Статус: Отключен от сервера
              Статус: Определение IP-адреса для ftp.bobik.com
              Статус: Соединяюсь с 192.168.1.18:21...
              Статус: Соединение установлено, ожидание приглашения...
              Статус: Небезопасный сервер, не поддерживает FTP через TLS.
              Статус: Авторизовались
              Статус: Получение списка каталогов...

              ... и так бесконечно.

              1 Reply Last reply Reply Quote 0
              • L
                luha @werter
                last edited by

                @werter А вот я соединяюсь с vsftpsd сервером

                Статус: Определение IP-адреса для ftp.tuzik.com
                Статус: Соединяюсь с 192.168.1.23:21...
                Статус: Соединение установлено, ожидание приглашения...
                Статус: Небезопасный сервер, не поддерживает FTP через TLS.
                Статус: Сервер не поддерживает символы не ASCII.
                Статус: Авторизовались
                Статус: Получение списка каталогов...
                Статус: Список каталогов "/" извлечен

                ))

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

                  @luha
                  На втром листинге нет пассив моде.

                  Покажите iptables -L -v -n на проблемном сервере.

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    luha @werter
                    last edited by

                    @werter Браво! Я же говорю - два сервера. На одном работает на другом нет.

                    Оба настроены с пассивным режимом. Вот настройки со второго сервера:

                    by luha

                    ** Use the hostname in the PASV response (DNS must be setup and match!)
                    pasv_addr_resolve=YES
                    ** Enable Passive Mode
                    pasv_enable=YES
                    ** Set the passive port range (1000 ports)
                    pasv_min_port=20000
                    pasv_max_port=20999

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

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

                      Я могу посоветовать временно отключить фаервол для проверки

                      Проверь этот момент.

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

                        @luha
                        https://docs.netgate.com/pfsense/en/latest/recipes/ftp-without-proxy.html

                        # Do not allow the client to use PORT
                        **port_enable=NO**
                        # Use the hostname in the PASV response (DNS must be setup and match!)
                        pasv_addr_resolve=YES
                        # Enable Passive Mode
                        pasv_enable=YES
                        # Set the passive port range (1000 ports)
                        pasv_min_port=20000
                        pasv_max_port=20999
                        
                        1 Reply Last reply Reply Quote 0
                        • L
                          luha @werter
                          last edited by luha

                          @werter Я думаю что клиент в случае с proftpd получает жёстко установленный адрес IP и в локальной сети это создаёт проблемы. У vsftpd не надо жёстко указывать IP, он его сам вычисляет, видимо сам находит нужный в зависимости какой адрес видит клиент.

                          @werter Я с этих доков и брал эти настройки. ))
                          Ссылку на доки выше кинул.

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

                            @luha

                            ** Use the hostname in the PASV response (DNS must be setup and match!)
                            pasv_addr_resolve=YES

                            Получается, что клиент получает ВНЕШНЕЕ имя фтп-сервера и пытается работать с ним. Поставь там NO, рестартани службу фтп и проверь. Должно сработать внутри сети.

                            Или настраивай split dns для разрешения имени фтп-сервера в ЛОКАЛЬНЫЙ ip.

                            L 1 Reply Last reply Reply Quote 0
                            • L
                              luha @werter
                              last edited by

                              @werter Да. Всё именно так. Клиент получает внешний адрес и пытается работать с ним. Если выключить то будет работать и снаружи и изнутри. Но только для тех клиентов у кого активный режим действует. Остальные идут лесом плакать.

                              Ладно. Я пойду работать. У меня проблем нету, мы с этого FTP считываем по локалке папки по SMB.

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

                                @luha said in Доступ к локальному ftp через WAN?:

                                Да. Всё именно так. Клиент получает внешний адрес и пытается работать с ним. Если выключить то будет работать и снаружи и изнутри. Но только для тех клиентов у кого активный режим действует. Остальные идут лесом плакать.

                                Что и требовалось доказать.

                                Настраивай сплит днс и спи спокойно. И снаружи и ВНУТРИ все будет работать в пассивном режиме.

                                L 1 Reply Last reply Reply Quote 0
                                • L
                                  luha @werter
                                  last edited by

                                  @werter У нас свой DNS, всё настроено, имена правильно разрешаются, дело совсем не в этом. Не работает по причине которую ты сам выше озвучил. Пассивный режим мешает тем что там IP внешний в настройках.

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

                                    @luha

                                    Имя РАЗРЕШАЕТСЯ в IP. Если внутри имя будет разрешаться в ЛОКАЛЬНЫЙ ip для ЛОКАЛЬНЫХ клиентов и во ВНЕШНИЙ ip для ВНЕШНИХ клиентов, то все будет ок.

                                    L 1 Reply Last reply Reply Quote 0
                                    • L
                                      luha @werter
                                      last edited by

                                      @werter Внутри имя разрешается внутренним сервером DNS во внутренний IP. Снаружи имя разрешается внешними публичными серверами DNS во внешний IP. Если бы были проблемы с разрешением имени то не нашло бы сервера, не залогинилось бы и т.д.. А он логинит и потом сливается! Короче proftpd лучше не использовать с PF - вот такой можно делать вывод. Юзайте vsftpd

                                      werterW 1 Reply Last reply Reply Quote 0
                                      • I
                                        Igor Filth
                                        last edited by

                                        Спасибо за проявленное внимание к проблеме.
                                        Именно в моём случае проблема доступа в локальной сети по локальному IP сервера в пассивном режиме кроется в нерабочей галочке "Don't use external IP for local connection".

                                        Почему же она "не работает"?
                                        Потому что на этой фирме ещё задолго до моего трудоустройства адресация локальной сети была в диапазоне, отличающимся от стандарта RFC1918 (передаю привет всем причастным к этому товарищам).
                                        Из-за того, что согласно международным стандартам адресации, IP, c которого пытается зайти программа-клиент в локальной сети, не является частным сервер Filezilla считает, что подключение в пассивном режиме идёт откуда-то извне и не соединяет.

                                        Так что осуществлю давно задуманное мной желание сделать локальную сеть в правильном диапазоне. Осталось лишь договориться с руководством когда можно сделать простой в работе фирмы, т.к. у нас круглосуточный режим работы предприятия.
                                        Перевод на нормальную адресацию хотел сделать уже года 2, но вроде всё это время проблем не было. Поэтому идти договариваться с руководством насчёт приостановки деятельности предприятия на несколько часов желания не было. А теперь есть повод.

                                        P.S. Хотя сегодня ночью мне удалось сделать так, чтобы работало напрямую по локальной сети. На основном ftp-сервере filezilla и на клиентской машине с программой задал дополнительные ip из стандартизированного диапазона частных сетей. И подключение с доп. адреса клиентской программы на доп. адрес FZ осуществляется без проблем. Но это чёртов костыль, поэтому перестройке адресации в LAN быть!

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

                                          @igor-filth said in Доступ к локальному ftp через WAN?:

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

                                          Найти предыдущего. Набить морду. Отобрать трудовую, написать в ней матом отзыв.

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

                                            @luha said in Доступ к локальному ftp через WAN?:

                                            Внутри имя разрешается внутренним сервером DNS во внутренний IP

                                            И ip этого ДНС клиент получает подключившись по ви-фи себе в кач-ве ДНС? Или он получает в кач-ве ПЕРВОГО ДНС ip ви-фи роутера? Сдается мне, что последнее.
                                            Я бы перепроверил )

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