PureFTPd está usando portas acima de 50000, mesmo com PassivePortRange especificado

1

Instalei o pacote pure-ftpd com o PureFTP 1.0.24 no Ubuntu 10.04 usando o apt-get.

Mesmo assim, este é o intervalo de portas padrão, eu adicionei o arquivo / etc / pure-ftpd / conf / PassivePortRange contendo:

30000 50000

Isso adiciona a opção correta ao comando enquanto ele é executado ( -p 30000:50000 ), mas por algum motivo, eu ainda consigo conexões tentando usar portas acima de 50000. Eu acho que o problema é que estas são sessões ftp ativas, mas qual é o ponto de especificar um intervalo de portas se ele só funciona para o modo passivo? Então eu ainda preciso abrir todas as portas no meu firewall ...

Existe uma maneira de especificar um intervalo de portas para todas as conexões (em vez de apenas as passivas)?

    
por mltsy 08.10.2012 / 20:10

2 respostas

1

No modo ativo, o servidor inicia uma conexão com um endereço IP definido pelo cliente, portanto, o servidor não tem como afetar o número da porta que está sendo usado. Neste caso, você não precisa abrir outras portas de entrada do que 21, porque o servidor inicia a conexão de dados em direção ao cliente.

No modo passivo, o cliente abre uma conexão com uma porta definida pelo servidor e esse é o ponto em que o intervalo de portas passivas entra em ação. O servidor escolhe uma porta livre dentro do intervalo e a entrega ao cliente. Isso significa que todo o intervalo de portas precisa estar aberto no firewall do servidor, o que tem implicações de segurança.

O Linux possui um recurso interessante para reduzir os efeitos da abertura de um grande intervalo de portas para o rastreamento passivo de conexões FTP-iptables. Para tirar proveito disso, você precisa ter certeza de que o módulo ip_conntrack_ftp está carregado, e então você pode permitir o tráfego como este # iptables -A your_chain -i your_iface -m state --state RELATED -m helper --helper ftp -j ACCEPT (você pode incluir seu intervalo de portas se necessário). Isso diz ao iptables para aceitar conexões relacionadas gerenciadas pelo auxiliar do conntrack FTP. Portanto, se qualquer outro serviço estiver escutando em um soquete em seu intervalo de portas passivo, o iptables negaria o acesso à porta porque não pode reconhecê-lo relacionado a FTP.

    
por 08.10.2012 / 21:26
1

No modo passivo, o servidor informa ao cliente para se conectar novamente em uma porta aleatória. Você configurou o servidor para usar um intervalo específico, por isso só deve usá-los. Esse intervalo precisará ser aberto pelo seu firewall para permitir conexões. (A menos que seu firewall seja inteligente o bastante para procurar nos pacotes FTP e adicionar regras dinâmicas).

No modo ativo, o cliente pede ao servidor para se conectar a ele em uma porta aleatória. Porque o cliente escolhe isso, você não tem controle sobre isso. No entanto, para que o Active funcione, você só precisa adicionar uma regra de keep-state para permitir que essas conexões saiam do seu servidor. você não precisa abrir todas as portas totalmente.

    
por 08.10.2012 / 20:57