Встановлення vsftpd в системі Debian 11
У наступному посібнику описано, як встановити сервер ftp vsftpd у системі Debian 11.
Ми будемо робити все з терміналу, виконавши кілька простих команд.
Перший крок - запустити термінал або увійти на наш сервер через ssh і встановити:
sudo apt install vsftpd -y
Запускаємо його в системі:
sudo systemctl start vsftpd
sudo systemctl status vsftpd
systemctl enable vsftpd.service
Додаємо нового користувача в систему:
sudo adduser testowyftp
Додаємо до конфігурації програми:
echo "testowyftp" | sudo tee -a /etc/vsftpd.userlist
Створюємо каталог для файлів користувача:
sudo mkdir -p /home/testowyftp/ftp_directory
sudo chown nobody:nogroup /home/testowyftp/ftp_directory
sudo chmod a-w /home/testowyftp/ftp_directory
sudo mkdir -p /home/testowyftp/ftp_directory/ftp_data
sudo chown testowyftp:testowyftp /home/testowyftp/ftp_directory/ftp_data
cd /home/testowyftp/ftp_directory/
chmod -R 777 ftp_data
Робимо резервну копію конфігураційного файлу ftp
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
Редагуємо файл і вносимо зміни:
nano /etc/vsftpd.conf
Ми змінимо наступним чином:
anonymous_enable=NO
local_enable=YES
Oraz ustawiamy w tym samym pliku:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
user_sub_token=$USER
local_root=/home/$USER/ftp_directory
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
Перезавантажуємо ftp сервер і перевіряємо службу:
sudo systemctl restart vsftpd
sudo systemctl status vsftpd
Це все, тепер ми маємо правильно увійти до ftp на ftp тестового користувача.
Сервер для цього посібника надав statnet.pl https://www.statnet.pl/vps/root-vps/
Як завжди, нижче наведено відео всього процесу установки:
Все працює добре, але: вони забули захистити можливість ftp-клієнта входити в кореневий каталог після підключення через ftp, а цього не може бути, оскільки всі системні файли доступні. Як це змінити , де розмістити DefaultRoot ~ ??