Bloqueia o usuário VsFTP no diretório home

0

Eu tenho trabalhado nisso por cerca de uma hora e seguido muitos exemplos, mas ainda assim o novo usuário pode chegar a toda a estrutura de diretório, ou não pode logar com a mensagem "500 OOPS: vsftpd: recusando-se a executar com raiz gravável dentro de chroot () ". Meus passos foram:

adduser user1
nano /etc/passwd (changed home dir to /var/www/domain.com and bash to rbash)
nano /etc/vsftpd (uncommented chroot_local_user=YES, chroot_list_enable=YES, chroot_list_file=/etc/vsftpd.chroot_list)
nano /etc/vsftpd.chroot_list (add a line for user1)

Eu tentei várias variações diferentes disso, mas isso não faz sentido para mim. Primeiro, vamos esclarecer o que significa realmente chroot_local_user = YES? Eu só pergunto porque não parece estar fazendo nada do jeito que eu esperava. Alguns sites dizem para mudar para NO.

Estou tentando configurar um host virtual para acessar o webmaster da minha irmã, mas não quero que ele veja meus outros arquivos para meus outros sites. Existe um passo que eu perdi, ou devo apenas mudar para um servidor ftp diferente?

    
por Alan 11.08.2014 / 05:13

2 respostas

0

Gareth, o Red, pode estar absolutamente certo, acabei abandonando o vsftp porque não descobri antes dele aparecer.

Acabei fazendo tudo através do openssh, que tinha seus próprios desafios. O que eu nunca vi em nenhum dos tutoriais que vou compartilhar aqui.

/etc/ssh/sshd_config: Add these lines:
Subsystem sftp internal-sftp
Match User sftpuser
  X11Forwarding no
  AllowTcpForwarding no
  ChrootDirectory /home  
  ForceCommand internal-sftp

Super importante isso fica em casa! Se você tentar / home / sftpuser, ele irá falhar.

O truque no final foi verificar o auth.log onde vou esse erro: fatal: bad ownership or modes for chroot directory

Isso me levou a esta página: link

Depois que eu mudei o ChrootDirectory para / home, eu chmod 750 todos os diretórios de usuários que prenderam aquele usuário, e então executei este comando:

mount --bind /var/www/example.com /home/sftpuser

Espero que isso ajude alguém, levei várias horas para encontrar as informações corretas, teria sido muito menor se eu tivesse consultado os registros anteriormente.

    
por 12.08.2014 / 16:28
0

A idéia é fixar o usuário em seu diretório pessoal. Adicionar usuários ao /etc/vsftpd.chroot_list concede a eles uma exceção desse grampo, portanto, seu webmaster não deve estar lá.

Você está recebendo o 500 OOPS porque concedeu permissão de gravação na raiz do diretório e tem o chroot ativado.

Você não precisa usar um chroot - basta alterar o diretório inicial do usuário para ser a raiz do site:

usermod -d /var/www/domain.com user1

Verifique se o arquivo vsftpd.conf contém:

anonymous_enable=NO
local_enable=YES
write_enable=YES

Certifique-se de ter removido (ou desativado) qualquer chroot linhas.

    
por 12.08.2014 / 11:48

Tags