Для начала создадим системного пользователя, от которого будут хранится файлы. И домашний каталог фтп сервера /ftp
groupadd ftpusers useradd -g ftpusers -d /ftp/ -s /sbin/nologin ftpusers chown ftpusers:ftpusers /ftp
Теперь создаем пользователей для авторизации ftp
pure-pw useradd ftpuser -u ftpusers -g ftpusers -d /ftp/vod
Это пользователь ftpuser с домашним каталогом /ftp/vod
Включаем авторизацию на ftp
cd /etc/pure-ftpd/auth ln -s /etc/pure-ftpd/conf/PureDB 50pure
Пользователи сохраняются сначала в pureftpd.passwd потом необходимо сделать хеш командой
pure-pw mkdb
И перезапустить сервис
/etc/init.d/pure-ftpd restart
При создании новых каталогов, необходимо дать права пользователю ftpuser
chown ftpusers:ftpusers /ftp -R
Опции создания пользователей
pure-pw useradd login [-f file]
-u uid [-g gid]
-D/-d dir
[-c name]
[-t num] [-T num]
[-n num] [-N num]
[-q num] [-Q num]
[-r ip,..]
[-R ip,..]
[-i ip,..]
[-I ip,..]
[-y num]
[-z hhmm-hhmm] [-m]
Рассмотрим значения используемых опций:
| Опция | Значение |
| login | Имя добавляемого аккаунта |
| -f file | Задает имя файла списка аккаунтов, отличное от значения. По умолчанию, т.е. от '/etc/pureftpd.passwd'. |
| -u uid | Задает uid пользователя |
| -g gid | Задает gid пользователя |
| -D/-d dir | Задает директорию для пользователя аккаунта,
При использовании '-d' автоматически назначается chroot в этой директории, При использовании '-D' chroot не будет включен; При запуске сервера с опцией '-j' директории пользователей будут создаваться автоматически при первом их подключении к системе, в противном случае, вы сами должны будете создать указанную директорию; |
| -c name | Задает полное имя пользователя аккаунта; |
| -t num | Задает скорость download (в Kb/s) |
| -T num | Задает скорость upload (в Kb/s); |
| -n num | Задает ограничение на количество файлов в директории пользователя; |
| -N num | Задает ограничение на размер файлов в директории пользователя (в Mb) |
| -q num | Задает соотношение upload к download |
| -Q num | Задает соотношение download к upload |
| -r ip | Задает ip адреса, с которых пользователю разрешено подключаться, также можно задавать целые подсети, используя CIDR маску; |
| -R ip | Задает ip адреса, с которых пользователю запрещено подключаться |
| -i ip | При нескольких интерфейсах на сервере позволяет указать ip адрес того интерфейса, на который данный пользователь может подключаться |
| -I ip | При нескольких интерфейсах на сервере позволяет указать ip адрес того интерфейса, на который пользователь подключаться не может |
| -y num | Задает количество одновременных подключений для аккаунта; |
| -z hhmm-hhmm | Задает временной промежуток, в течение которого пользователь может получать доступ к аккаунту, например '-z 1830-2240' задает временной промежуток для доступа к аккаунту с 18:30 до 22:40, причем если пользователь подключен к серверу во время истечения указанного значения, соединение не будет прервано. |