[RESOLVIDO] Problemas acessar FTP
-
Em questão de sites de banco estava tendo problemas sim dai configurei pra só sair por um link.
Agora com o Use sticky connections você não precisa mais fixar rota de saída pra este tipo de conexão. Pelo link que a conexão for iniciada, ela será encerrada! ;)
Abraços!
Jack -
leandruco,
Faz uns testes via tcpdump para saber em que passo a comunicação interrompe.
Veja tanto a porta de comandos quanto a de dados. Abra duas consoles e Escute na wan e na lan ao mesmo tempo.
Desabilite tambem os helpers de FTP e refaça os mesmos testes.
Você consegue ver via tcpdump o que esta acontecendo? pacote saindo sem nat, pacote morrendo no firewall, pacote alternando entre dois links,etc?
Como já disse em alguns outros posts, o tcpdump é seu amigo. A interface gráfica ajuda muito, mas debug de verdade é feito na console.
-
Opa Marcello eu sempre trabalhava só no console com o iptables, mas como ainda não sou muito intimo do BSD ainda fico meio acanhando de mecher no console dele com medo de estragar kkkkk. Mas vou instalar o TCPDUMP e ver quais informações consigo tirar.
Obrigado.
-
Mas vou instalar o TCPDUMP e ver quais informações consigo tirar.
leandruco,
O tcpdump é nativo no pfSense. Basta usar!
Para saber como iniciar os trabalhos com o tcpdump: http://www.pedropereira.net/como-usar-o-tcpdump/
Abraços!
Jack -
Obrigado pelo material muito bom,
Porem estou tendo um pequeno problema para extrair os logs dele para um arquivoestou executando o seguinte comando:
tcpdump -nn -ni (interface) host (ip do host) -w /tmp/dump/arquivo.pcapPorem este comando está dando um erro de syntax.
Onde será que eu estou errando?
-
costumo usar desta forma:
console 1
tcpdump -ni (interface_wan) host (ftp_remoto)
console 2
tcpdump -ni (interface_lan) host (ftp_remoto)
deste sintaxe simples, voce consegue saber o que não esta dando certo.
são raros os casos em que você precisa salvar o log para analisar no wireshark.
no ftp ativo, fique de olho nas requisições com origem porta 20
-
Já descobri
O correto é:tcpdump -w /tmp/dump/arquivo.pcap -nn -ni (interface) host (ip do host)
;)
-
Pois é Marcello eu fiz a análise mas não sei se sou muito juvenil, mas não encontrei nada de errado.
As conexões estão sendo realizadas normalmente.Ser que posso colar o log aqui pra vcs darem uma olhada?
-
LOG ETH WAN
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on em1, link-type EN10MB (Ethernet), capture size 96 bytes
15:43:08.771240 IP IP WAN.32378 > IP FTP.21: Flags [P.], ack 3588619334, win 8153, length 13
15:43:08.786177 IP IP FTP.21 > IP WAN.32378: Flags [.], ack 13, win 46, length 0
15:43:08.786219 IP IP FTP.21 > IP WAN.32378: Flags [P.], ack 13, win 46, length 34
15:43:08.986044 IP IP WAN.32378 > IP FTP.21: Flags [.], ack 35, win 8119, length 0
15:43:13.603366 IP IP WAN.32378 > IP FTP.21: Flags [P.], ack 35, win 8119, length 17
15:43:13.625555 IP IP FTP.21 > IP WAN.32378: Flags [P.], ack 30, win 46, length 23
15:43:13.825326 IP IP WAN.32378 > IP FTP.21: Flags [.], ack 58, win 8096, length 0
15:43:16.771686 IP IP WAN.32378 > IP FTP.21: Flags [P.], ack 58, win 8096, length 27
15:43:16.786957 IP IP FTP.21 > IP WAN.32378: Flags [P.], ack 57, win 46, length 27
15:43:16.790997 IP IP WAN.32378 > IP FTP.21: Flags [P.], ack 85, win 8069, length 6
15:43:16.806116 IP IP FTP.21 > IP WAN.32378: Flags [P.], ack 63, win 46, length 29
15:43:17.006350 IP IP WAN.32378 > IP FTP.21: Flags [.], ack 114, win 8040, length 0LOG ETH LAN
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on em0, link-type EN10MB (Ethernet), capture size 96 bytes
15:43:08.771219 IP IP LAN.30497 > IP FTP.21: Flags [P.], ack 3588619334, win 8153, length 13
15:43:08.786211 IP IP FTP.21 > IP LAN.30497: Flags [.], ack 13, win 46, length 0
15:43:08.786232 IP IP FTP.21 > IP LAN.30497: Flags [P.], ack 13, win 46, length 34
15:43:08.986020 IP IP LAN.30497 > IP FTP.21: Flags [.], ack 35, win 8119, length 0
15:43:13.603350 IP IP LAN.30497 > IP FTP.21: Flags [P.], ack 35, win 8119, length 17
15:43:13.625569 IP IP FTP.21 > IP LAN.30497: Flags [P.], ack 30, win 46, length 23
15:43:13.825312 IP IP LAN.30497 > IP FTP.21: Flags [.], ack 58, win 8096, length 0
15:43:16.771664 IP IP LAN.30497 > IP FTP.21: Flags [P.], ack 58, win 8096, length 27
15:43:16.786984 IP IP FTP.21 > IP LAN.30497: Flags [P.], ack 57, win 46, length 27
15:43:16.790979 IP IP LAN.30497 > IP FTP.21: Flags [P.], ack 85, win 8069, length 6
15:43:16.806138 IP IP FTP.21 > IP LAN.30497: Flags [P.], ack 63, win 46, length 29
15:43:17.006327 IP IP LAN.30497 > IP FTP.21: Flags [.], ack 114, win 8040, length 0 -
O FTP remoto rejeita seu comando e não faz mais nada.
Só tem log na 21.
Nenhuma tentativa de transferencia é feita.
-
Galera resolvi todos os problemas com FTP.
Se eu contar pra vcs vcs não vão acreditar.Eu segui os passos dos tutoriais antes de tentar.
Então eu fui em system->advanced->system tunables e coloquei o valor do debug.pfftpproxy como 1.Então comecei a fazer as regras e os testes e nada de dar certo.
Hoje já injuriado sem saber mais o que fazer, fui lá e mudei essa opção para 0 que é o padrão.
Pronto problema resolvido funcionou tanto as publicações do meu FTP quanto o acesso passivo/ativo de ftps externos.Obrigado mais uma vez pela ajuda e atenção de vocês fico muito grato e contente em saber que tenho pra onde correr quando preciso.
-
É isso mesmo leandruco,
Você deve ativar ou desativar o "debug.pfftpproxy" de acordo com a configuração, principalmente, do seu FTP (o teu servidor que é acessado de fora da rede). Ela define se o pfSense fará ou não proxy nas conexões FTP!
Cada caso é um caso!
Abraços!
Jack -
FTP é um dos protocolos mais chatos que tem pra configurar.
Serve até para testar habilidades de candidatos para emprego de administrador de firewall :)
-
Pessoal voltei a ter probleas com FTP.
Quando o cliente acessa o ftp pelo link A o modo passivo/ativo funcionam perfeitamente.
Quando o cliente acesso o ftp pelo link B só funciona o passivo (windows explorer)Via TCPDUMP realizei o mesmo tipo de conexão pelos 2 links e observei que as seguintes conexões não são realizadas no link B, porem as mesmas regras de liberação e NAT estão definidas para ambos os links.
200.195.x.x -> IP LINK A
201.22.95.99 -> IP CLIENTE10:40:52.708716 IP 200.195.x.x.50767 > 201.22.95.99.55090: Flags
, seq 11229273, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
10:40:55.735015 IP 200.195.x.x.50767 > 201.22.95.99.55090: Flags, seq 11229273, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0
10:41:01.780760 IP 200.195.x.x.50767 > 201.22.95.99.55090: Flags, seq 11229273, win 8192, options [mss 1460,nop,nop,sackOK], length 0 -
Segue o log do TCPDUMP no momento em que é executando o comando para listar os diretórios.
OBS. A conexão é feita normalmente pelos 2 links porem quando é solicitado que liste o diretório que só funciona pelo link A.TCPDUMP link A:
11:34:00.125920 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 691336811, win 2041, length 16
11:34:00.126308 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 16, win 260, length 38
11:34:00.374007 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 39, win 2031, length 0
11:34:03.388468 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 39, win 2031, length 19
11:34:03.389122 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 35, win 260, length 21
11:34:03.637331 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 60, win 2026, length 0
11:34:05.458092 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 60, win 2026, length 27
11:34:05.458663 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 62, win 260, length 30
11:34:05.524721 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 90, win 2019, length 6
11:34:05.525131 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 68, win 260, length 41
11:34:05.768959 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 131, win 2008, length 0
11:34:26.472034 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 68, win 260, length 6
11:34:26.745356 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 137, win 2007, length 0TCPDUMP link B
11:36:00.160894 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [P.], ack 2523323193, win 2026, length 27
11:36:00.161612 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [P.], ack 27, win 260, length 30
11:36:00.206559 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [P.], ack 31, win 2019, length 6
11:36:00.207220 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [P.], ack 33, win 260, length 41
11:36:00.478272 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [.], ack 72, win 2008, length 0
11:36:21.199448 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [P.], ack 33, win 260, length 6
11:36:21.467695 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [.], ack 78, win 2007, length 0
11:38:28.714855 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [R.], seq 78, ack 33, win 0, length 0 -
leandruco,
Alguns provedores de internet simplesmente bloqueiam as conexões para a porta de comandos do FTP. Já peguei vários casos assim!
Neste caso voltamos a indicação de uso ou não da diretiva debug.pfftpproxy, bem com, a questão do tipo de configuração do seu FTP Server! :-\
Abraços!
Jack -
Os dois links estão comunicando na porta 21, confere agora a porta de dados.
Segue o log do TCPDUMP no momento em que é executando o comando para listar os diretórios.
OBS. A conexão é feita normalmente pelos 2 links porem quando é solicitado que liste o diretório que só funciona pelo link A.TCPDUMP link A:
11:34:00.125920 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 691336811, win 2041, length 16
11:34:00.126308 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 16, win 260, length 38
11:34:00.374007 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 39, win 2031, length 0
11:34:03.388468 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 39, win 2031, length 19
11:34:03.389122 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 35, win 260, length 21
11:34:03.637331 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 60, win 2026, length 0
11:34:05.458092 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 60, win 2026, length 27
11:34:05.458663 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 62, win 260, length 30
11:34:05.524721 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [P.], ack 90, win 2019, length 6
11:34:05.525131 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 68, win 260, length 41
11:34:05.768959 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 131, win 2008, length 0
11:34:26.472034 IP 189.42.54.183.21 > 201.22.95.99.55914: Flags [P.], ack 68, win 260, length 6
11:34:26.745356 IP 201.22.95.99.55914 > 189.42.54.183.21: Flags [.], ack 137, win 2007, length 0TCPDUMP link B
11:36:00.160894 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [P.], ack 2523323193, win 2026, length 27
11:36:00.161612 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [P.], ack 27, win 260, length 30
11:36:00.206559 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [P.], ack 31, win 2019, length 6
11:36:00.207220 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [P.], ack 33, win 260, length 41
11:36:00.478272 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [.], ack 72, win 2008, length 0
11:36:21.199448 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [P.], ack 33, win 260, length 6
11:36:21.467695 IP 201.22.95.99.55966 > 189.42.54.183.21: Flags [.], ack 78, win 2007, length 0
11:38:28.714855 IP 189.42.54.183.21 > 201.22.95.99.55966: Flags [R.], seq 78, ack 33, win 0, length 0 -
Opa galera
@JackL:leandruco,
Alguns provedores de internet simplesmente bloqueiam as conexões para a porta de comandos do FTP. Já peguei vários casos assim!
Neste caso voltamos a indicação de uso ou não da diretiva debug.pfftpproxy, bem com, a questão do tipo de configuração do seu FTP Server! :-\
Abraços!
JackJá está habilitado esta opção. Testei das 2 formas habilitado e desabilitado.
Os dois links estão comunicando na porta 21, confere agora a porta de dados.
Marcello, as mesmas regras que tem para um tem para o outro liberado a porta 20,21,22 e da 1024 até a 65000
Não sei mas o que fazer, já conferi tudo umas 10x -
monitora via tcpdump o ip remoto e não só a porta 21 na wan
e monitora o ip do servidor ftp na dmz/lan
desta forma você consegue ver aonde esta o problema
-
…as mesmas regras que tem para um tem para o outro liberado a porta 20,21,22 e da 1024 até a 65000
Justamente,
Talvez seja um bloqueio por parte do provedor de internet (a conexão é barrada no provedor, não no seu pfSense).
Verifique se não é este o caso (porta 20 bloqueada no provedor, por exemplo)!
Abraços!
Jack