Implementar servidor ProFTPd sem chroot

2

Posso usar o ProFTPd sem usar uma chroot jail (impedindo assim o acesso a qualquer coisa fora da raiz do FTP)? Eu tenho um requisito para ter links simbólicos na minha fonte de FTP que apontam para locais fora do diretório onde eu torço meu serviço de FTP.

Todos os documentos e discussões que li no ProFTPd falam sobre como usar a funcionalidade chroot (mesmo no dentro do StackExchange ), mas eu estou querendo saber se eu posso ignorar usando isso e usar um método diferente para servir minha raiz de FTP. Como os links simbólicos devem permanecer como links simbólicos, montar os diretórios como uma forma de contornar a restrição chroot (a "solução" inteligente para o problema) não funciona.

    
por palswim 25.01.2013 / 22:02

2 respostas

1

O ProFTPD tem o módulo mod_vroot para esse fim. Você pode compilar este módulo no ProFTPD ou instalá-lo se seus repositórios o tiverem ( apt-get install proftpd-mod-vroot para certos repositórios Debian).

mod_vroot permite que um usuário configure um "chroot virtual", definindo a diretiva DefaultRoot (o diretório inicial / raiz de uma sessão; o ProFTPD executaria o chroot nesse diretório sem mod_vroot ), mas permitindo que links simbólicos apontem para fora do caminho DefaultRoot . O mod_vroot também suporta a diretiva VRootServerRoot , para a qual o ProFTPD executará um chroot real, o que significa que os links simbólicos podem apontar para fora do DefaultRoot , mas devem direcionar locais dentro do VRootServerRoot caminho .

Exemplo de configuração:

<IfModule mod_vroot.c>
    VRootEngine on

    VRootServerRoot /usr/share/ # Symlinks can only point to location within /usr/share/
    VRootOptions allowSymlinks
    DefaultRoot /usr/share/ftproot/
</IfModule>
    
por 23.01.2015 / 19:24
1

O problema é que o FTP foi definido na pré-história mais antiga da Internet, e por isso tem não disposições para segurança (senhas em texto simples, ...). É por isso que os servidores FTP são geralmente usados apenas para login anônimo, e como ele está aberto à Internet e possui um rico conjunto de comandos (e muita funcionalidade surpreendente, isso foi criado para transferir arquivos entre máquinas com realmente arquiteturas bizarras, representações de caracteres diferentes e sistemas operacionais estranhos). Para a sanidade, uma dessas feras é reprimida.

É uma opção para usar algo como scp (1)? Use um servidor web (deve ser mais eficiente)?

Por que os links simbólicos têm que ser links simbólicos?

    
por 25.01.2013 / 23:42