- OS CONFIG - http://osc.dondub.com -

FTP-сервер ProFTPd на Ubuntu Server 12.10

ProFTPdВ этой статье рассмотрим развёртку FTP-сервера ProFTPd на установленной ОС Ubuntu Server 12.10. Перед тем, как выполнить все действия, описанные в этой статье, необходимо, чтобы была настроена сеть и желательно установлен Midnight Commander. Всю первичную настройку Ubuntu Server можно прочитать здесь [1].

Первым делом установим ProFTPd:

sudo apt-get install proftpd

Выбираем самостоятельный запуск (standalone)

Добавим пару пользователей в систему, например ftpuser1 и ftpuser2

sudo adduser ftpuser1

sudo adduser ftpuser2

После этого система создаст две пользовательские папки: /home/ftpuser1 и /home/ftpuser2

Открываем файл /etc/proftpd/proftpd.conf и в нём делаем следующие исправления:

UseIPv6 off

ServerName «MyFTPserver»

DefaultRoot ~.

После этого пользователь уже не сможет перейти на верхний уровень файловой системы и не сможет просматривать папки других пользователей.

Если на этой же машине поднять web-сервер (например, LAMP), то будет целесообразно также дать доступ web мастеру сайта. Делаем это следующим образом:

sudo adduser webmaster —ingroup www-data

sudo chown –R webmaster:www-data /var/www

Открываем /etc/passwd и в нём исправляем путь пользователя webmaster к домашнему каталогу и оболочку на …,,,:/var/www:/bin/false и путь пользователя ftp на /home/public.

То же самое — в файле /etc/passwd-

Открываем файл /etc/proftpd/proftpd.conf и в самом конце файла дописываем:

<Anonymous /var/www>

User      webmaster

Group     www-data

RequireValidShell    off

AnonRequirePassword  on

<Directory /var/www>

AllowOverwrite  on

<Limit ALL>

AllowALL       on

</Limit>

</Directory>

</Anonymous>

Теперь сделаем доступной только для чтения всем пользователям папку public (так называемый, анонимный вход). Для этого открываем /etc/proftpd/proftpd.conf и в нём в самом конце дописываем:

<Anonymous /home/public>

User ftp

Group nogroup

UserAlias anonymous ftp

RequireValidShell off

<Directory /home/public>

<Limit WRITE>

DenyAll

</Limit>

</Directory>

</Anonymous>

Создадим папку /home/public:

sudo mkdir /home/public

И последний шаг — перезагрузим систему:

sudo shutdown -r now

Теперь проверим.

С помощью FTP-клиента мы можем на него войти со следующими учётками:

Первые 4 учётки поддерживают чтение и запись, последняя — только чтение.

Всё. Наш FTP-сервер готов.