Acabei de atualizar o Ubuntu 12.04 LTS (Precise Pangolin) do Ubuntu Server 11.10 (Oneiric Ocelot).
Atualizou minha instalação do vsFTPd e parece que algo mudou: / Uso a autenticação PAM. O que poderia ter mudado para causar isso?
Ao tentar conectar ao servidor FTP, recebo este erro:
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Eu tentei pesquisá-lo no Google e disse para adicionar allow_writable_root=YES
ao arquivo de configuração - no entanto, quando eu tento isso e tento reiniciar o vsftpd, ele não pode ser reiniciado. Por quê?
Aqui está como eu realmente consertei:
wget http://http.us.debian.org/debian/pool/main/v/vsftpd/vsftpd_3.0.2-3_amd64.deb -O vsftpd.deb
dpkg -i vsftpd.deb
echo "allow_writeable_chroot=YES" >> /etc/vsftpd.conf
service vsftpd reload
E pronto :)
wget
parâmetro, está morto. Provavelmente, porque a versão3.0.2-3
está agora fora. Qualquer pessoa que enfrente esse problema deve visitar este site para obter o link correto. O link acima mencionado é para a plataforma de 64 bits. Para encontrar links para este pacote para outras plataformas, como por exemplo 32 bits, siga para esta página e role para baixo até aDownload vsftpd
seçãoRespostas:
Eu também tenho esse problema e acho que é por causa da nova atualização vsFTPd para aumentar a segurança, então, enquanto isso, uso esta solução.
Eu chmod a pasta na qual meu usuário FTP entra quando ele / ela faz o primeiro login (pasta raiz) usando isto no terminal:
sudo chmod a-w /home/user
Você pode mudar
/home/user
para a pasta raiz do usuário do FTP.Crie uma subpasta dentro da pasta, usando a GUI ou, se você tiver apenas um terminal, é:
sudo mkdir /home/user/newfolder
Agora você deve conseguir fazer o login e ler a gravação na "nova pasta". Você NÃO poderá escrever na própria pasta raiz a partir do cliente FTP com o chmod aw, de modo que esse é o motivo da subpasta, e você poderá.
Acho que haverá uma correção em um período não muito longo, mas, enquanto isso, espero que isso ajude.
fonte
Alguém suportou o recurso a ser adicionado
allow_writeable_chroot=YES
da versão 3.0.0 à 2.3.5 (consulte esta entrada do blog ).Para instalar no Ubuntu 12.04 (Precise Pangolin), execute os seguintes comandos como root:
Observe que parece haver uma opção
allow_writable_chroot=YES
no vsftpd-ext - observe o mssing e ! (ou isso é um erro de digitação na postagem do blog?)fonte
O vsFTPd 3.0.0 adiciona uma opção de configuração,
para ativar novamente o comportamento anterior (fonte: Fixing 500 OOPS: vsFTPd: recusando-se a executar com raiz gravável dentro de chroot () , comentário de Brian K. White).
Infelizmente, o 3.0.0 ainda não está empacotado pelo Ubuntu. Enquanto isso, faça o downgrade para uma versão mais antiga. Por exemplo, estou usando este no Ubuntu 12.04 (Precise Pangolin): http://packages.ubuntu.com/oneiric-updates/vsftpd
fonte
Outra maneira de fazer as coisas como o usuário Kristian faz: Funcionou para mim. O nome de usuário que eu uso é 'john'. Substitua-o pelo nome de usuário desejado.
sudo chmod a-w /home/john
- Remove a permissão de todos os usuários para excluir ou modificar um arquivo.sudo mkdir /home/john/ftp
- Cria uma pasta chamada 'ftp' no diretório inicial do usuário 'john'sudo chown -Rv john.john /home/john/ftp
- Altera a propriedade do diretório para o grupo 'john' e o usuário 'john'.fonte
Por quê?
Tomado e adaptado da minha própria resposta no bug 1065714 .
Para manter as versões estáveis estáveis, as atualizações após a liberação são consideradas apenas em circunstâncias específicas. Os detalhes do processo e dos critérios necessários estão listados aqui: https://wiki.ubuntu.com/StableReleaseUpdates#When
Isso dificulta que os usuários da versão LTS tenham chroots graváveis, uma vez que o projeto vsftpd upstream decidiu lançar sem esse recurso no momento em que a versão 12.04 foi lançada. Agora que o 12.04 foi lançado e a correção não atende aos critérios acima, acho que isso não será alterado para o 12.04. Mas observe que a Equipe de Atualizações de Liberação Estável toma a decisão final sobre isso, e uma atualização não foi proposta a eles.
Se você deseja disponibilizar geralmente uma versão mais recente do vsftpd para usuários que desejam usar a opção "allow_writeable_chroot", o repositório de backports é um local apropriado para isso. Com um backport, os usuários que desejam o recurso podem apenas adicionar o repositório de backports e instalar o vsftpd a partir daí. Você pode descobrir mais sobre backports e como solicitar um aqui: https://wiki.ubuntu.com/UbuntuBackports
Enquanto isso, o The Frontier Group gentilmente forneceu um PPA, como descrito na resposta de lumbric. Ou você pode usar uma das outras respostas aqui que funciona para você.
fonte