proftpd - настройки

Категория: / DEV Блог / Сервер (FreeBSD)
Привязываем пользователя по IP
<Class webadminsip>
From 62.123.21.12
</Class>
 
<IfUser user1 OR user2>
<Limit LOGIN>
AllowClass webadminsip
DenyAll
</Limit>
</IfUser>


proftpd должен быть собран с поддержкой модуля if_sessions.

Другое:

MaxLoginAttempts 5 #ограничиваем количество попыток логинов в систему
DeferWelcome    off #не показываем баннер сервиса до авторизации
 
UseReverseDNS                   off #реверсивный днс, отключаем ибо медленно
IdentLookups                    off #отключаем (текст приветствия, выдаваемого клиенту после соединения - ProFTPD v1.X Server (host))
 
AccessDenyMsg сообщение
AccessGrantMsg сообщение



Невозможно залогинится созданным пользователем

Dec 05 17:40:53 proftpd[24789] host.ru. (213.147.42.168[213.147.42.168]): USER myuser: Login successful.
Dec 05 17:40:53 proftpd[24789] host.ru. (213.147.42.168[213.147.42.168]): notice: unable to use '~/' [resolved to '/www/test/moo/']: Permission denied
Dec 05 17:40:53 proftpd[24789] host.ru. (213.147.42.168[213.147.42.168]): Preparing to chroot to directory '~/'
Dec 05 17:40:53 proftpd[24789] host.ru. (213.147.42.168[213.147.42.168]): atlant chroot("~/"): No such file or directory
Dec 05 17:40:53 proftpd[24789] host.ru. (213.147.42.168[213.147.42.168]): error: unable to set default root directory


ProFTPD рекурсивно проверяет директории от / до папки chrootа пользователя. Если он не сможет прочесть хоть одно звено из цепочки папок (то есть для папки не будет установлен X бит [листинг директорий]), то доступ будет запрещен.

Пример:
-www [webadmin:www 750]
--test [myuser:www 750]

Если для пользователя myuser указан home - /www/test, он не получит к нему доступа, пока для www не поставить 751 (либо сменить группу/владельца).