Заходим под рутом
yum install pure-ftpd
После этого редактируем файл /etc/pure-ftpd/pure-ftpd.conf
- PAMAuthentication yes
- #UnixAuthentication yes
- MinUID 600
- PureDB /etc/pure-ftpd/pureftpd.pdb
- PassivePortRange 48000 50000
Создать файл passwd для виртуальных пользователей FTP:
touch /etc/pure-ftpd/pureftpd.passwd
Запустим FTP сервер
service pure-ftpd start
Включение PureFTPd в автозагрузку сервера
chkconfig pureftpd on
Перезагрузка
service pure-ftpd restart
Настройка фаервола
sudo firewall-cmd --add-service=ftp --permanent
sudo firewall-cmd --add-port={20/tcp,21/tcp,3000/tcp,5000/tcp} --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
Скачать и положить в недоступное для обычных пользователей место (например, папку /root/scripts) скрипт добавления пользователя, удаление и смену пароля.
Добавить пользователю root права для запуска скаченного скрипта:
chmod u+x <путь до скрипта>
Скрипт принимает на вход четыре параметра:
- <user> — пользователь в системе, под которым будут редактироваться файлы (apache, bitrix и т.п.);
- <ftp_login> — логин для доступа по FTP;
- <ftp_password> — пароль для доступа по FTP;
- <ftp_path> — абсолютный путь до папки, которая будет являться корневой для данного FTP-аккаунта.
Перед запуском скрипта рекомендуется добавлять пробел, чтобы запуск (и пароль) не фиксировался в истории bash (конечно, если используется bash).
Пример запуска (предполагается, что скрипт был сохранен в файл /root/utils/add_ftp_account.sh):
/root/utils/add_ftp_account.sh "bitrix" "ftp_user" "secret_password" "/var/www/site.ru"
Применяем изменения
pure-pw mkdb
Полезные команды
pure-pw list - Просмотр списка пользователей
pure-pw show pureusertest - Получение информации, касающейся определенного пользователя
sudo pure-pw passwd pureusertest - Изменение пароля пользователя
|