Este é o processo:
-
Adicione o usuário ao grupo:
sudo usermod -aG www blub
como em Qual é a maneira mais simples de editar e adicionar arquivos para" / var / www "?ou use apenas
sudo adduser <username> www-data
- Instalar o vsftpd
sudo apt-get install vsftpd
-
Configure o vsftpd para acesso remoto:
sudo nano /etc/vsftpd.conf
e dentro do conjunto de arquivoschroot_local_user=YES
e garantir que isso seja comentado:
#chroot_list_enable=YES
de acordo com a documentação .
- Reinicie o nsftp:
sudo service vsftpd restart
-
Configure o diretório pessoal do usuário para o diretório da web (não em
/home
):sudo usermod -d /var/www/mysite/ftpaccessdir <username>
-
Configure o ssh chroot
sudo nano /etc/ssh/sshd_config
adicione o seguinte ao final:
Subsystem sftp internal-sftp Match user <username> ChrootDirectory /var/www/site ForceCommand internal-sftp AllowTcpForwarding no
e assegure-se de que, mais adiante no arquivo, isso seja comentado (ou seja, antes do que você acabou de adicionar)
#Subsystem sftp /usr/lib/openssh/sftp-server
-
Reinicie o ssh
sudo service ssh restart
-
Altere as permissões do apache:
chown root:root /var/www chown root:root /var/www/site chmod 755 /var/www
Como nos documentos aqui .
-
Verifique se o seu diretório tem acesso a dados www
sudo chown -R www-data:www-data /var/www/site chmod 755 /var/www/site