
Ao configurar uma conta FTP para um propósito específico - por exemplo, como um ponto de entrega para compartilhar arquivos de dados - parece sensato dar ao usuário acesso apenas ao diretório específico, e nenhuma visão de um sistema de arquivos mais amplo.
Em sistemas *nix, em particular, cada usuário geralmente tem acesso de leitura a muitos arquivos de sistema, como /etc/passwd
. Os daemons FTP geralmente permitem que você os esconda executando um chroot
login, para que o usuário fique em uma "prisão" virtual.
Maschroot
não foi projetado como uma medida de segurança[cópia do arquivo, pois o site parece inativo] e pode até introduzir problemas de segurança próprios; por esse motivo, vsftpdrestringiu esse recursode modo que você possa chroot
acessar apenas um diretório somente leitura e o usuário deverá então navegar para um subdiretório para executar qualquer operação de gravação.ProFTPDalerta sobre o problema, mas não oferece alternativa, e o PureFTPD exige a criação de vários arquivos especiais para poder usar um arquivo chroot
.
Parece-me que não há nenhuma razão fundamental para o acesso FTP mapear a noção de acesso ao sistema de arquivos do sistema operacional; como um daemon HTTP, um daemon FTP poderia "reescrever" todas as solicitações de acordo com um conjunto de regras de configuração. Se você solicitar o path a um host Apache /
, ele o mapeará para o diretório definido no diretório, não para o diretório DocumentRoot
atual do sistema operacional host ./
Minha pergunta é: algum daemon FTP *nix usa um mecanismo de "reescrita" como este (ou alguma outra forma de limitar o acesso) e, se não, existe uma razão fundamental?
Nota: há alguma sobreposição comesta questão existente, mas as respostas discutem principalmente se deve chroot
ou não usar, em vez de alternativas completas.
Responder1
http://www.ietf.org/rfc/rfc959.txt
Vou assumir que a especificação não diz que o 'destino' ou o lado do servidor deve apontar para um tipo específico de sistema de arquivos. Sem se aprofundar muito nisso, suspeito que qualquer um poderia escrever um daemon que prendesse os usuários de qualquer maneira razoável e ainda assim fosse viável.
Alternativamente, algo como o selinux pode restringir usuários de FTP a determinados diretórios sem exigir uma alteração no daemon de FTP.