Sou novato no Linux / Unix. Basicamente, estou tentando configurar um servidor Web e um servidor FTP em uma máquina Linux via SSH.
Meu plano é ter a pasta raiz do Apache dentro da conta de usuário principal, como
/home/giuseppe/www/public_html
e ter uma conta de usuário ftp que deve ter rw- de acesso via FTP para /home/giuseppe/www/public_html
Ainda não consigo que ftp-user consiga acessar o diretório public_html na pasta pessoal da outra conta.
Quando me conecto via FTP usando o ftp-user , o padrão é seu diretório inicial.
Estes são os passos que tomei até agora:
Instalei vsftpd e editei /etc/vsftpd/vsftpd.config ports e assim por diante para poder me conectar com a conta ftp-user . Eu também defini o local_root=/home/giuseppe/www/public_html/
Eu reiniciei o vsftpd service após qualquer alteração de configuração.
Eu adicionei um grupo chamado developers
Eu fiz ftp-user membro de developers , então id ftp-user deu:
uid=500(ftp-user) gid=502(developers) groups=502(developers)
Eu alterei o grupo de public_html com chgrp developers /home/giuseppe/www/public_html/
No entanto, sempre que me conecto via FTP, a conta ftp-user tem acesso rw à sua própria pasta pessoal.
Ao testar, adicionei um link simbólico ln -s /home/giuseppe/www/public_html /home/ftp-user/ . Embora eu possa ver o link simbólico no diretório home ftp-user , não consigo navegar pelo link simbólico public_html . Aqui está o log de status do Filezilla quando clico duas vezes no symlink:
Status: Retrieving directory listing...
Command: CWD /home/ftp-user
Response: 250 Directory successfully changed.
Command: CWD public_html
Response: 550 Failed to change directory.
Error: Failed to retrieve directory listing
Status: Starting download of /home/ftp-user/public_html
Command: PASV
Response: 227 Entering Passive Mode (XXX,XXX,XXX,XXX,4,14).
Command: RETR public_html
Response: 550 Failed to open file.
Error: Critical error
Minha configuração planejada é sensata ou você configuraria as coisas de maneira diferente?
Tags permissions vsftpd linux unix