Настройка proftpd на Debian/Ubuntu


Настройка proftpd в Debian и Ubuntu сводится к редактированию конфигурационного файла и перезапуске службы. Выполним эти действия.

ProFTPD является лучшим для большинства конфигураций вариантом FTP сервера, он просто, быстро и гибко конфигурируется. ProFTPD применяется чаще аналогов, таких как TWOFTPD и VSFTPD.



Пакет устанавливается из репозитория в Debian и Ubuntu

apt-get install proftpd



Если пакета не нашлось в репозиториях нужно обновить данные о пакетах в них и повторить попытку установки

apt-get update && apt-get install proftpd



В процессе установки запустится псевдографический интерфейс в котором стоит выбрать необходимость установки standalone версии пакета.


Убеждаемся в том, что служба запущена.

systemctl status proftpd

Настройка proftpd на Debian/Ubuntu


Проверка статуса выполняется через systemctl в большинстве современных операционных систем, в старых системах могут использоваться другие системы инициализации.


Настройки выполняются в главном конфигурационном файле /etc/proftpd/proftpd.conf, они интуитивно понятны.



Если IPv6 не используется на сервере опцию следует деактивировать:

UseIPv6 off



После этого в конец файла добавляются строки

<Global>

RequireValidShell off

</Global>

DefaultRoot ~ ftpuser

<Limit LOGIN>

DenyGroup !ftpgroup

</Limit>



Они устанавливают отсутствие необходимости указывать пользовательскую оболочку (т.е. можно использовать /bin/false), ProFTPd дается инструкция не выпускать системных пользователей за пределы домашнего каталога. Это важно для ограничения доступа.



Последняя опция определяет запрет на авторизацию всех системных пользователей, не входящих в группу ftpgroup.



Перезапускаем службу

systemctl restart proftpd



Создаем необходимую группу пользователей

addgroup ftpgroup



И пользователя

adduser user1 -shell /bin/false -home /var/www



Добавляем пользователя в группу

adduser user1 ftpgroup

На этом базовая настройка завершена, user1 может подключиться к серверу по FTP и работать с данными в пределах своего домашнего каталога.



Настройка proftpd с анонимными пользователями


Дополнительные коррективы основного конфигурационного файла /etc/proftpd/proftpd.conf могут дать анонимным пользователям возможность просматривать файлы на сервере.


 User anonuser
 Group nogroup
 # We want clients to be able to login with "anonymous" as well as "ftp"
 UserAlias anonymous ftp
 # Cosmetic changes, all files belong to ftp user
 DirFakeUser on ftp
 DirFakeGroup on ftp

RequireValidShell off

# Limit the maximum number of anonymous logins
 MaxClients 10

# We want 'welcome.msg' displayed at login, and '.message' displayed
 # in each newly chdired directory.
 DisplayLogin welcome.msg
 DisplayFirstChdir .message

# Limit WRITE everywhere in the anonymous chroot
 
 
 DenyAll
 
 

# # Uncomment this if you're brave.
 # # 
 # # # Umask 022 is a good standard umask to prevent new files and dirs
 # # # (second parm) from being group and world writable.
 # # Umask 022 022
 # # 
 # # DenyAll
 # # 
 # # 
 # # AllowAll
 # # 
 # # 




Пользователь добавляется в группу

adduser anonuser ftpgroup



Перезапускается служба

systemctl restart proftpd



После этого у anonuser появился доступ на просмотр содержимого каталогов файлов.

FTP сервер после выполненных настроек будет доступен по стандартному порту 21, подключаться к нему можно используя FTP клиент, например filezilla.


Также вместо FTP можно использовать SFTP, подключение выполняется точно также, но указывается порт 22 и реквизиты пользователя SSH. Такой доступ безопаснее и быстрее FTP, а также не требует никаких настроек.

Доступ по FTP обычно необходим для загрузки информации о товарах в интернет магазины.

Сказать спасибо