Como faço para restringir os usuários criados a um diretório e desabilitar o SSH para VSFTPD?

1

Eu estive procurando minhas respostas por algumas boas horas e não consigo responder diretamente às minhas perguntas. Eu encontrei muitos tutoriais, mas muitos são vagos.

De qualquer forma:

Eu configurei recentemente o VSFTPD no meu servidor. Estou rodando o CentOS 6.4 (se isso faz alguma diferença). Eu criei o usuário 'test' usando useradd e ele pode logar com sucesso (com SSH e FTP) No entanto, isso é o que eu estou procurando fazer:

Crie usuários (com useradd) para usar com VSFTPD e desabilite o SSH para eles. Com esse (s) usuário (s), restrinja-os ao seu diretório web (por exemplo, /var/www/domain/example.com) para que eles possam fazer o login com FTP e carregar, editar, excluir e criar diretórios no exemplo.

Para referência, este é o meu arquivo de configuração:

anonymous_enable=NO

     

local_enable = YES

     

write_enable = SIM

     

local_umask = 022

     

dirmessage_enable = YES

     

xferlog_enable = YES

     

connect_from_port_20 = SIM

     

xferlog_std_format = SIM

     

chroot_local_user = YES chroot_list_enable = YES

     

ouvir = SIM

     

pam_service_name = vsftpd userlist_enable = SIM tcp_wrappers = SIM

Muito obrigado. Desculpe se minha explicação não é descritiva o suficiente. Não sei como dizer isso.

    
por Matthew 04.11.2013 / 18:41

1 resposta

1

Estou supondo que você está principalmente perguntando como impedir que um usuário seja capaz de usar o SSH - tanto quanto eu posso dizer - sua configuração do vsftpd deve ser boa para ir com base na opção chroot_local_user sendo definida como yes. / p>

Você pode simplesmente alterar o shell do usuário para algo como / bin / false (certifique-se de adicioná-lo ao / etc / shells para evitar possíveis problemas com o servidor ftp) e seu usuário poderá autenticar para o SSH, mas eles ' Eu só vou desistir de volta.

Alternativamente, você poderia usar AllowUsers / DenyUsers em / etc / ssh / sshd_config - mas isso pode exigir a atualização da configuração ssh toda vez que você alterar quem tem permissão para fazer login, enquanto você pode configurar o shell do usuário para / bin / false com seu comando useradd usando

useradd -s /bin/false <everything else>

Então, se mais tarde você quiser conceder acesso SSH, basta usar o usermod para alterar o shell para bash (por exemplo).

    
por 04.11.2013 / 18:51