Получаем доступ к папке по протоколу FTP
В данной заметке показан пример по получению доступа к папке /home/<USER_NAME>/ftp по протоколу FTP
Установка компоненов системы
Установим пакет для работы с FTP
bash
sudo apt install -y vsftpdbash
sudo dnf install -y vsftpdВключаем службу
bash
sudo systemctl enable --now vsftpdУзнать статус работы службы можно выполнив команду
bash
systemctl status vsftpdКонфигурация пакета vsftpd
Создадим резервную копию файла конфигурании FTP
bash
sudo mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bakСоздадим новый файл конфигурации
bash
sudo nano /etc/vsftpd/vsftpd.confЗаполним следущим образом (выбираем один из уровней доступа)
ini
anonymous_enable=YES
anon_root=/home/<USER_NAME>/ftp
anon_upload_enable=YES
anon_mkdir_write_enable=YES
local_enable=NO
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
no_anon_password=YES
hide_ids=YES
pasv_min_port=40000
pasv_min_port=40001ini
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YESНастройка firewall для работы FTP
Добавим сервис в исключения фаерволла
bash
sudo firewall-cmd --permanent --add-service=ftpЕсли настраивали анонимный доступ, также добавим в исключения порты
bash
sudo firewall-cmd --permanent --add-port=40000-40001/tcpПерезапускаем фаерволл
bash
sudo firewall-cmd --reloadНастройка SELinux для работы FTP
Настраеваем SELinux для разрешения пассивного режима FTP
bash
sudo setsebool -P ftpd_use_passive_mode onПерезапускаем службу FTP
bash
sudo systemctl restart vsftpdГотово. После выполненных операций у нас должен появится доступ к папке по протоколу FTP.