Quando eu me conecto ao FTP usando um arquivo pem, ele está se conectando bem e, por padrão, mostra este diretório:/home/ubuntu
Agora estou tentando mudar o /home/ubuntu
diretório para /var/www/myApplication
. Sou novo no Linux, alguém pode dizer quais comandos preciso usar?
E como posso ver o caminho FTP padrão, não há vsftpd
pastas/arquivos na minha /etc
pasta?
Responder1
O diretório FTP é padronizado como o diretório do usuário HOME
, então a maneira mais fácil de atingir seu objetivo é criar um novo usuário e definir seu HOME
diretório como /var/www/myApplication
:
usermod -d /var/www/myApplication/ exampleuser
Se você quiserrestringiro acesso a este diretório você precisa definir
chroot_local_user=YES
na tua vsftpd.conf
. Em seguida, reinicie o serviço vsftpd com:
service vsftpd restart
Pode haver uma maneira ainda mais simples, vejaaqui:
Para alterar o diretório de login padrão do vsftpd, altere o diretório inicial do usuário FTP em
/etc/passwd
:ftp:x:116:116:vsftpd daemon:/var/vsftpd:/bin/false
O diretório inicial do usuário FTP (userID=116) foi alterado para
/var/vsftpd
. Isso permitirá que o usuário padrão/anônimo/desconhecido chegue a um local específico (/var/vsftpd).
Responder2
Não tenho certeza de como você configurou isso, mas você precisa instalar o vsftpd
.
Passos:
Instalar
vsftpd
:sudo apt-get install vsftpd
Faça backup de
vsftpd.conf
:sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
Configure regras de firewall:
sudo ufw allow 20/tcp sudo ufw allow 21/tcp sudo ufw allow 990/tcp sudo ufw allow 40000:50000/tcp sudo ufw status
Não tem firewall, então instale:
sudo apt-get install ufw
- Habilitar:
sudo ufw enabe
Crie um usuário e torne o diretório inicial este
/var/www/ftp/myApplication
- crie uma pasta adicional chamada
ftp
conforme visto acima caso precise adicionar mais pastas para outros usuários. Criar usuário:
sudo usermod -d /var/www/ftp/myApplication ftpuser
- crie uma pasta adicional chamada
Defina sua propriedade e certifique-se de remover as permissões de gravação com os seguintes comandos
sudo chown nobody:nogroup /var/www/ftp sudo chmod a-w /var/www/ftp
Atribuir propriedade do
myApplication
foler ao usuárioftpuser
sudo chown ftpuser:ftpuser /var/www/ftp/myApplication
Instalação
/etc/vsftpd.conf
adicione as seguintes configurações:# Allow anonymous FTP? (Disabled by default). anonymous_enable=NO # # Uncomment this to allow local users to log in. local_enable=YES write_enable=YES # Prevent the FTP-connected user from accessing any files or commands outside # the directory tree chroot_local_user=YES # Add a user_sub_token in order to insert the username in our local_root directory # path so our configuration will work for this user and any future users that might # be added user_sub_token=$USER local_root=/var/www/ftp # Set up the configuration so that access is given to a user only when they # are explicitly added to a list rather than by default userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=NO
Crie e adicione usuário ao user_list:
echo "ftpuser" | sudo tee -a /etc/vsftpd.userlist
Reinicie
daemon
para carregar novas configurações:sudo systemctl restart vsftpd
Fontes):