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

    [RESOLVIDO_ABERTO-COMENTAR]Não acesso servidor ftp externamente!

    Portuguese
    5
    18
    5.6k
    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.
    • C
      claudevan
      last edited by

      Bom dia,

      Estou usando o CentOS 6.5 com o servidor ftp (vsftpd). só consigo conectar internamente!

      Gente coloquei um servidor "ftp" aqui na empresa em firewall-NAT liberei a porta 21 e apontei para o IP da máquina da LAN "192.168.1.202" tento acessar externamente fora da empresa e não consigo, segui em anexo a configuração.

      Por favor quem tiver alguma dica eu agradeço!

      Desde já obrigado!
      ftp.png
      ftp.png_thumb

      1 Reply Last reply Reply Quote 0
      • E
        emanuelbotelho
        last edited by

        Estou com o mesmo problema. Acabei de realizar um post, mas dei mais detalhes. Se encontrar alguma solução por favor avisa. Obrigado.

        1 Reply Last reply Reply Quote 0
        • C
          celsosticanella
          last edited by

          Eu vou ser sincero pra vocês, eu desisti de usar o FTP do Windows porque cada hora o Windows utiliza por uma porta diferente, então acabei abandonando e agora utilizo um programa chamado HFS, que utiliza apenas a porta que você configura, você consegue criar usuários para autenticar em cada pasta e ele fica ainda disponível pelo navegador!
          Olhem como é:
          http://intranet.grupoplconfeccoes.com.br:7000/

          Uso o FTP apenas localmente agora!


          att.
          Celso Sticanella
          celsosticanella@hotmail.com
          Administrador de Redes
          TI - Tecnologia da Informação -

          1 Reply Last reply Reply Quote 0
          • E
            emanuelbotelho
            last edited by

            No meu caso o problema não é com o FTP em si. É com o redirecionamento de portas. Estou tentando redirecionar um TOMCAT.

            1 Reply Last reply Reply Quote 0
            • marcellocM
              marcelloc
              last edited by

              Eu recomendo fortemente olhar a definição do protocolo ftp.

              Já postei várias vezes aqui no fórum sobre isso e o problema cai sempre no entendimento do uso do protocolo.

              O ftp usa a porta 21 para comandos somente.
              No modo ativo, a porta 20 é utilizada no sentido contrário para a transferência de dados.
              No modo passivo, o servidor separa uma faixa de portas para essa transferência no mesmo sentido de comunicação que o cliente fez para acessar a porta 21.

              Estou anexando mais uma vez imagens demonstrando o uso, já que só nesse tópico temos três com dúvidas sobre ftp.

              Funcionamiento_ftp_1.png
              Funcionamiento_ftp_1.png_thumb
              Funcionamiento_ftp_2.png
              Funcionamiento_ftp_2.png_thumb

              Treinamentos de Elite: http://sys-squad.com

              Help a community developer! ;D

              1 Reply Last reply Reply Quote 0
              • C
                claudevan
                last edited by

                Vasculhado na NET vir em um topico de um usuário a forma que ele fez para liberar o "FTP" na empresa dele. Eu estou usando o CentOS 6.5 e o servidor ftp (vsftpd) e comigo funcionou a liberação de portas no NAT do Firewall pfsense.

                Link onde eu vir a dica!
                https://forum.pfsense.org/index.php?topic=44733.0

                Fiz uma "aliases" chamado "Portas_ftp" e nele coloque as seguintes portas: 20, 21, 22, 1024:6500, 443 e liberei uma regra de firewall NAT como segui na imagem em anexo.

                Tentei de varias outras formas e não conseguir conectar!  da forma descrita acima funcionou!

                ftp2.png
                ftp2.png_thumb
                ftp3.png
                ftp3.png_thumb

                1 Reply Last reply Reply Quote 0
                • marcellocM
                  marcelloc
                  last edited by

                  @claudevan:

                  Fiz uma "aliases" chamado "Portas_ftp" e nele coloque as seguintes portas: 20, 21, 22, 1024:6500, 443 e liberei uma regra de firewall NAT como segui na imagem em anexo.

                  Claudevan:

                  • porta 443 é https, não é ftp

                  • porta 22 é ssh, você está expondo o ssh do seu servidor ftp para qualquer um tentar acertar a senha.

                  • a porta 20, como informei no post anterior, é no sentido inverso, ou seja o server solicita a conexão ao cliente com porta oritem 20, essa regra que você criou não vai alcançar essa comunicação

                  • 1024:65000, você liberou acesso a qualquer porta alta, o que pode ser um risco para sua segurança.

                  Treinamentos de Elite: http://sys-squad.com

                  Help a community developer! ;D

                  1 Reply Last reply Reply Quote 0
                  • doguibnuD
                    doguibnu
                    last edited by

                    @marcelloc:

                    Eu recomendo fortemente olhar a definição do protocolo ftp.

                    Já postei várias vezes aqui no fórum sobre isso e o problema cai sempre no entendimento do uso do protocolo.

                    O ftp usa a porta 21 para comandos somente.
                    No modo ativo, a porta 20 é utilizada no sentido contrário para a transferência de dados.
                    No modo passivo, o servidor separa uma faixa de portas para essa transferência no mesmo sentido de comunicação que o cliente fez para acessar a porta 21.

                    Estou anexando mais uma vez imagens demonstrando o uso, já que só nesse tópico temos três com dúvidas sobre ftp.

                    Marcelo, bom dia tudo bem?

                    Não é mais ou menos seguir isso aqui:

                    https://doc.pfsense.org/index.php/FTP_without_a_Proxy

                    em Server Behind pfSense

                    Mesmo você colocando este esquema aí, não consegui entender bem. Já configurei a NAT de várias formas e também o vsftp  está em modo passivo.

                    Pelo que entendi, precisa-se ter uma range de portas altas para que possa ser feito a conexão. Mas onde e de que maneira configura-se isso de modo correto.

                    Estou algumas semanas tentando configurar isso de modo que funcione, mas nada está dando certo!

                    Obrigado pela atenção

                    Douglas

                    1 Reply Last reply Reply Quote 0
                    • marcellocM
                      marcelloc
                      last edited by

                      Se usou a configuração do link, seu servidor de ftp está com essas linhas:

                      
                      # 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
                      

                      Isso significa que seu nat precisar ter a porta 21 e o range definido no arquivo de configuração.

                      Treinamentos de Elite: http://sys-squad.com

                      Help a community developer! ;D

                      1 Reply Last reply Reply Quote 0
                      • C
                        claudevan
                        last edited by

                        marcelloc
                        Cara você tem razão!

                        As portas 22 (ssh), 443(https) e todas as portas altas de 1024:65000 não faz sentido nesta configuração para esta aplicação. Eu estava testando em casa e só tinha testado de Linux para Linux e como disse ocorria tudo bem, porem ao chegar no trabalho no ambiente corporativo onde tem XP, Win7, Win8 e Linux essas configurações que eu mencionei acima não funciona.

                        Solução!

                        O marcelloc falou essas palavras acima:

                        1_O ftp usa a porta 21 para comandos somente.
                        2_No modo ativo, a porta 20 é utilizada no sentido contrário para a transferência de dados.
                        3_No modo passivo, o servidor separa uma faixa de portas para essa transferência no mesmo sentido de comunicação que o cliente fez para acessar a porta 21.

                        Está correto, é isso mesmo! Então vendo a figura que você postou iten 3 “Modo Passivo” é dessa forma que o vsftpd trabalha, como dito “o servidor separa uma faixa de portas” como pode ver na Figura0 o cliente inicia na porta: 1036 pois o servidor esta definido como “> 1023” no meu caso eu configurei como: 9040 a 9050 e no arquivo vsftpd.conf eu habilitei o modo passivo, segui abaixo a configuração do modo passivo:

                        Colocar no fim da linha do arquivo: /etc/vsftpd/vsftpd.conf

                        Habilitando o modo passivo.

                        pasv_enable=YES
                        pasv_address=IPMAQUINA onde esta instalado!
                        pasv_max_port=9050
                        pasv_min_port=9040

                        No firewall pfsense:

                        Firewall: Aliases

                        Fiz uma "aliases" chamado "Portas_ftp" e nele coloque as seguintes portas: 20, 21, 9040:9050 como segui na Figura1.

                        Firewall: NAT: Port Forward

                        Liberei uma regra de firewall NAT como segui na Figura2.

                        Erro encontrado no Windows:

                        O erro que você pode ver na Figura3 é clássica do Windows e eu já mim deparei varias vezes com ele e não soube resolver, "Errro de permissão!" como você pode ver no link essa era uma duvida de um usuário aqui no fórum: “https://forum.pfsense.org/index.php?topic=44733.0” aqui vai a solução no: Windows Explore ou Internet Explore vá em: Ferramentas/Opções da Internet/Avançadas/Navegação e desabilite a opção “Usar FTP Passivo(para compatibilidade com firewall e modem DSL)” olhar Figura4. Gente eu li em vários artigos para deixar essa opção habilitada, mas é o contrario, com ela habilitada vai da o erro da Figura3, testei em varias máquinas aqui na empresa.

                        Observação: No Windows8 e em server no “Windowns Explore” não tem a opção Ferrametas.

                        Gente aqui na empresa agora tá funcionando normalmente o "ftp" vsftpd tanto internamente como externamente.

                        Qualquer duvida posta ai…

                        Figura0.jpg
                        Figura0.jpg_thumb
                        Figura1.jpg
                        Figura1.jpg_thumb
                        Figura2.jpg
                        Figura2.jpg_thumb
                        Figura3.jpg
                        Figura3.jpg_thumb
                        Figura4.jpg
                        Figura4.jpg_thumb

                        1 Reply Last reply Reply Quote 0
                        • doguibnuD
                          doguibnu
                          last edited by

                          Claudevan,
                          Tudo bem?

                          Na sua empresa vc usa estrutura de MPLS.

                          Aqui nós temos rotas para outras "pontas"

                          Por exemplo aqui é: 10.1.1.x dentro do pfsense está a rotas para outras pontas: 10.10.6.254, 10.10.4.254 e assim por diante. Então, se eu estou nessas "pontas" e tento conectar o ftp por nosso IP público 200.x.x.x.x, ele até pede a usuário e senha, mas não faz a conexão. Já se estou forma de nossa estrutura, ou seja, qualquer outra rede que não faça parte da nossa rede, ele conecta normalmente via ip público.
                          Eu tentarei fazer da forma que você fez pois, já li uns quinhentos foruns e não consigo vencer heuehueheueh.

                          Obrigado

                          Se obter sucesso eu posto aqui!

                          Douglas

                          @claudevan:

                          marcelloc
                          Cara você tem razão!

                          As portas 22 (ssh), 443(https) e todas as portas altas de 1024:65000 não faz sentido nesta configuração para esta aplicação. Eu estava testando em casa e só tinha testado de Linux para Linux e como disse ocorria tudo bem, porem ao chegar no trabalho no ambiente corporativo onde tem XP, Win7, Win8 e Linux essas configurações que eu mencionei acima não funciona.

                          Solução!

                          O marcelloc falou essas palavras acima:

                          1_O ftp usa a porta 21 para comandos somente.
                          2_No modo ativo, a porta 20 é utilizada no sentido contrário para a transferência de dados.
                          3_No modo passivo, o servidor separa uma faixa de portas para essa transferência no mesmo sentido de comunicação que o cliente fez para acessar a porta 21.

                          Está correto, é isso mesmo! Então vendo a figura que você postou iten 3 “Modo Passivo” é dessa forma que o vsftpd trabalha, como dito “o servidor separa uma faixa de portas” como pode ver na Figura0 o cliente inicia na porta: 1036 pois o servidor esta definido como “> 1023” no meu caso eu configurei como: 9040 a 9050 e no arquivo vsftpd.conf eu habilitei o modo passivo, segui abaixo a configuração do modo passivo:

                          Colocar no fim da linha do arquivo: /etc/vsftpd/vsftpd.conf

                          Habilitando o modo passivo.

                          pasv_enable=YES
                          pasv_address=IPMAQUINA onde esta instalado!
                          pasv_max_port=9050
                          pasv_min_port=9040

                          No firewall pfsense:

                          Firewall: Aliases

                          Fiz uma "aliases" chamado "Portas_ftp" e nele coloque as seguintes portas: 20, 21, 9040:9050 como segui na Figura1.

                          Firewall: NAT: Port Forward

                          Liberei uma regra de firewall NAT como segui na Figura2.

                          Erro encontrado no Windows:

                          O erro que você pode ver na Figura3 é clássica do Windows e eu já mim deparei varias vezes com ele e não soube resolver, "Errro de permissão!" como você pode ver no link essa era uma duvida de um usuário aqui no fórum: “https://forum.pfsense.org/index.php?topic=44733.0” aqui vai a solução no: Windows Explore ou Internet Explore vá em: Ferramentas/Opções da Internet/Avançadas/Navegação e desabilite a opção “Usar FTP Passivo(para compatibilidade com firewall e modem DSL)” olhar Figura4. Gente eu li em vários artigos para deixar essa opção habilitada, mas é o contrario, com ela habilitada vai da o erro da Figura3, testei em varias máquinas aqui na empresa.

                          Observação: No Windows8 e em server no “Windowns Explore” não tem a opção Ferrametas.

                          Gente aqui na empresa agora tá funcionando normalmente o "ftp" vsftpd tanto internamente como externamente.

                          Qualquer duvida posta ai…

                          1 Reply Last reply Reply Quote 0
                          • C
                            claudevan
                            last edited by

                            doguibnu

                            Cara você de uma dessas pontas: 10.10.6.254 consegui pingar seu IP externo do firewall?

                            Já testou fazer uma conexão remota com o (Terminal Service) de sua casa para a maquina com o IP: 10.10.6.254?

                            Testa fazer uma conexão remota primeiro, se não souber diz que te passo como faz, e vai testando, se precisar de ajuda posta ai.

                            1 Reply Last reply Reply Quote 0
                            • doguibnuD
                              doguibnu
                              last edited by

                              @claudevan:

                              doguibnu

                              Cara você de uma dessas pontas: 10.10.6.254 consegui pingar seu IP externo do firewall?

                              Já testou fazer uma conexão remota com o (Terminal Service) de sua casa para a maquina com o IP: 10.10.6.254?

                              Testa fazer uma conexão remota primeiro, se não souber diz que te passo como faz, e vai testando, se precisar de ajuda posta ai.

                              Claudevan, tudo bem?

                              Respondendo suas perguntas

                              1 - sim as pontas pingam o para o ip externo do firewall
                              2- Sim, já foi feito conexão remota de outra ponta normalmente, assim como teamviewer.

                              Configurei o Pfsense do jeito que você sugeriu e…não funcionou.

                              Coisa triste mesmo!

                              Obrigado por enquanto!

                              Douglas

                              1 Reply Last reply Reply Quote 0
                              • doguibnuD
                                doguibnu
                                last edited by

                                Bom dia Pessoal!
                                Tudo bem?

                                Bom, segui a sugestão de configuração do Claudevan. Ainda não tive sucesso porém, parece que falta alguma coisa pra ser liberado. Vejam o que diz o Log do Filezila, está conectando 99,99 porcento:

                                Alguém teria uma luz:

                                Estado: Conectando 200.x.x.x
                                Estado: Conexão estabelecida, esperando mensagem de boas-vindas…
                                Resposta: 220 FTP Server
                                Comando: USER ftpuser
                                Resposta: 331 Please specify the password.
                                Comando: PASS *******
                                Resposta: 230 Login successful.
                                Comando: SYST
                                Resposta: 215 UNIX Type: L8
                                Comando: FEAT
                                Resposta: 211-Features:
                                Resposta: EPRT
                                Resposta: EPSV
                                Resposta: MDTM
                                Resposta: PASV
                                Resposta: REST STREAM
                                Resposta: SIZE
                                Resposta: TVFS
                                Resposta: UTF8
                                Resposta: 211 End
                                Comando: OPTS UTF8 ON
                                Resposta: 200 Always in UTF8 mode.
                                Estado: Conectado
                                Estado: Obtendo lista de pastas...
                                Comando: PWD
                                Resposta: 257 "/"
                                Comando: TYPE I
                                Resposta: 200 Switching to Binary mode.
                                Comando: PASV
                                Erro: A conexão excedeu limite de tempo
                                Erro: Falha na obtenção da lista de pastas

                                Muito Obrigado e fiquem com Deus

                                Douglas

                                1 Reply Last reply Reply Quote 0
                                • marcellocM
                                  marcelloc
                                  last edited by

                                  doguibnu, Monitore o trafego dessa conexão no firewall. Você tem que ver conexões além da porta 21. Se for no modo passivo, uma porta alta.

                                  Treinamentos de Elite: http://sys-squad.com

                                  Help a community developer! ;D

                                  1 Reply Last reply Reply Quote 0
                                  • doguibnuD
                                    doguibnu
                                    last edited by

                                    @marcelloc:

                                    doguibnu, Monitore o trafego dessa conexão no firewall. Você tem que ver conexões além da porta 21. Se for no modo passivo, uma porta alta.

                                    Marcello, eu vi o seu post em para um gringo e pedindo pro cara dar uma olhada nesse link: http://slacksite.com/other/ftp.html#pasvexample

                                    Eu estou estudando e tentando segui-lo. Percebi que em modo passivo ele abre mais do que a porta 21 e pelo que vi a 20 nem é usada. Já configurei o vsftp em modo passivo, assim como fiz as Nat para as portas altas (no caso 20000 e 20999), mas ainda estou apanhando em algo que está faltando pra ele realmente concretizar a conexão!

                                    Bom, vou continuar estudando o devido protocolo ftp!

                                    Obrigado por enquanto!

                                    1 Reply Last reply Reply Quote 0
                                    • doguibnuD
                                      doguibnu
                                      last edited by

                                      Pessoal e Marcello, Bom dia!

                                      Bom, nessa última semana passei estudando como configurar o FTP vsftp em modo passivo pois, o servidor de ftp está atrás do pfsense.
                                      Então, visto que o modo passivo não usa somente a porta 21 e 20 e sim, portas altas a partir de 1023, e quando o protocolo ftp abre essa conexão ela usa essas portas.

                                      Certo, é necessário que façamos alterações no arquivo vsftpd.conf e façamos com que ele mude a forma de conexão para modo passivo ou seja, pasv:

                                      port_enable=YES

                                      connect_from_port_20=YES

                                      OBS: no nosso caso tivemos que deixar dessa forma se não nem o início da conexão ele consegue iniciar!

                                      pasv_enable=YES
                                      pasv_address=ip servidor (lan)
                                      pasv_max_port=4244
                                      pasv_min_port=4243

                                      Certo, após isso. Configuramos a NAT no Pfsense.

                                      E quando tentamos conectar via filezila:

                                      Estado: Conectando 200.x.x.x.
                                      Estado: Conexão estabelecida, esperando mensagem de boas-vindas…
                                      Resposta: 220 FTP Server
                                      Comando: USER ftpuser
                                      Resposta: 331 Please specify the password.
                                      Comando: PASS *******
                                      Resposta: 230 Login successful.
                                      Comando: OPTS UTF8 ON
                                      Resposta: 200 Always in UTF8 mode.
                                      Estado: Conectado
                                      Estado: Obtendo lista de pastas...
                                      Comando: PWD
                                      Resposta: 257 "/"
                                      Comando: TYPE I
                                      Resposta: 200 Switching to Binary mode.
                                      Comando: PASV
                                      Erro: A conexão excedeu limite de tempo
                                      Erro: Falha na obtenção da lista de pastas

                                      Verificando outros foruns e blogs. O que pude constatar é que grande parte dos administradores abriram estas portas altas a partir do iptables e assim garantiram a conexão efetiva para seu servidor de ftp em modo passivo, como neste link:

                                      http://ifzenelse.net/en/install-and-configure-your-very-secure-ftp-vsftp-server-centos-linux

                                      ou

                                      http://lost-and-found-narihiro.blogspot.com.br/2014/03/ubuntu-1310-vsftpd-passive-activeport.html

                                      Fora outros mais que foram pesquisados e que de certa forma, todos liberavam acesso a essas portas.

                                      Creio que é isso que falta fazer dentro do pfsense. Mas de que forma libero estas portas se já foram feitas uma Nat para elas juntamente com o aliases e lá dentro em Ports especificado as portas altas?

                                      Marcello, de que forma posso monitorar o tráfego da conexão?

                                      Eu acredito que este é o único detalhe que resta para que a conexão seja efetivamente feita.

                                      Muito obrigado

                                      Att

                                      Douglas

                                      1 Reply Last reply Reply Quote 0
                                      • doguibnuD
                                        doguibnu
                                        last edited by

                                        Olá Claudevan e Marcello

                                        Eu mudei de servidor ftp, e passei a usar o Proftpd. Está configurado em modo passivo da forma que você sugeriu aqui.
                                        No filezilla ele conectou uma maravilha com o ip público. Deu certo.
                                        Mas nos navegadores, nem no firefox e nem no chrome tive sucesso.

                                        Alguma sugestão?

                                        Muito Obrigado!

                                        Douglas

                                        @claudevan:

                                        marcelloc
                                        Cara você tem razão!

                                        As portas 22 (ssh), 443(https) e todas as portas altas de 1024:65000 não faz sentido nesta configuração para esta aplicação. Eu estava testando em casa e só tinha testado de Linux para Linux e como disse ocorria tudo bem, porem ao chegar no trabalho no ambiente corporativo onde tem XP, Win7, Win8 e Linux essas configurações que eu mencionei acima não funciona.

                                        Solução!

                                        O marcelloc falou essas palavras acima:

                                        1_O ftp usa a porta 21 para comandos somente.
                                        2_No modo ativo, a porta 20 é utilizada no sentido contrário para a transferência de dados.
                                        3_No modo passivo, o servidor separa uma faixa de portas para essa transferência no mesmo sentido de comunicação que o cliente fez para acessar a porta 21.

                                        Está correto, é isso mesmo! Então vendo a figura que você postou iten 3 “Modo Passivo” é dessa forma que o vsftpd trabalha, como dito “o servidor separa uma faixa de portas” como pode ver na Figura0 o cliente inicia na porta: 1036 pois o servidor esta definido como “> 1023” no meu caso eu configurei como: 9040 a 9050 e no arquivo vsftpd.conf eu habilitei o modo passivo, segui abaixo a configuração do modo passivo:

                                        Colocar no fim da linha do arquivo: /etc/vsftpd/vsftpd.conf

                                        Habilitando o modo passivo.

                                        pasv_enable=YES
                                        pasv_address=IPMAQUINA onde esta instalado!
                                        pasv_max_port=9050
                                        pasv_min_port=9040

                                        No firewall pfsense:

                                        Firewall: Aliases

                                        Fiz uma "aliases" chamado "Portas_ftp" e nele coloque as seguintes portas: 20, 21, 9040:9050 como segui na Figura1.

                                        Firewall: NAT: Port Forward

                                        Liberei uma regra de firewall NAT como segui na Figura2.

                                        Erro encontrado no Windows:

                                        O erro que você pode ver na Figura3 é clássica do Windows e eu já mim deparei varias vezes com ele e não soube resolver, "Errro de permissão!" como você pode ver no link essa era uma duvida de um usuário aqui no fórum: “https://forum.pfsense.org/index.php?topic=44733.0” aqui vai a solução no: Windows Explore ou Internet Explore vá em: Ferramentas/Opções da Internet/Avançadas/Navegação e desabilite a opção “Usar FTP Passivo(para compatibilidade com firewall e modem DSL)” olhar Figura4. Gente eu li em vários artigos para deixar essa opção habilitada, mas é o contrario, com ela habilitada vai da o erro da Figura3, testei em varias máquinas aqui na empresa.

                                        Observação: No Windows8 e em server no “Windowns Explore” não tem a opção Ferrametas.

                                        Gente aqui na empresa agora tá funcionando normalmente o "ftp" vsftpd tanto internamente como externamente.

                                        Qualquer duvida posta ai…

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