proftpd and mod_ldap howto Введение Целью этого How-To является облегчение связки Proftpd и OpenLDAP, в котором будут храниться учетные записи виртуальных ftp-пользователей 1. Установка proftpd Сперва его надо пересобрать на предмет mod_ldap.c, поскольку в Сизифе он собран без такового. Проверить наличие можно, сделав #proftpd -l | grep mod_ldap.c У меня с mod_ldap.c, который шел в составе родного .src.rpm собираться не захотело, поэтому пришлось извращаться- качаем с proftpd.org последний mod_ldap.c и кладем его в /SOURCES/. Теперь в spec-файле дописываем : Source5: mod_ldap.c И после PatchN дописываем %__cp -f %SOURCE5 -f ./contrib В строчку --with-modules добавляем mod_ldap, исправляем версию proftpd и вперед : $rpm -ba proftpd.spec Итого, у нас готовая rpm`ка в ./RPM/RPMS/k6/ (у меня athlon, поэтому в k6)- её-то и ставим - #rpm -avh proftpd-1.2.10rc1-alt2solar.k6.rpm В принципе, можно сделать немного быстрее и проще, но это будет не кошерно, как меня поправил thresh: скопировать скаченный mod_ldap.c в /contrib/ поверх mod_ldap.c из .src.rpm и исправить только строчку --with-modules (ну и версию, естественно) 2. Настройка proftpd Будем считать, что proftpd уже настроен по вкусу и осталось его только научить забирать логины/пароли из ldap: #joe /etc/proftpd.conf ... LDAPServer localhost LDAPDNInfo cn=Manager,dc=mytyshi.ru yourROOTPW LDAPDoAuth on uid=%v,ou=users,dc=mytyshi.ru LDAPAuthBinds on LDAPDoUIDLookups off LDAPDoGIDLookups off LDAPHomedirOnDemand off LDAPHomedirOnDemandPrefix /var/ftp/pub LDAPDefaultAuthScheme clear PersistentPasswd off #AuthPAMAuthoritative off ... 3. OpenLDAP Вот мы и подобрались к концу этого удивительного путешествия без движения:) - к OpenLDAP - осталось только завести пользователей : #less /etc/openldap/ldifs/ftp.ldif dn: uid=test,ou=users,dc=mytyshi,ru objectClass: posixAccount objectClass: posixGroup cn: test userPassword: testpass homeDirectory: /home/test/incoming loginShell: /bin/bash uidNumber: 501 gidNumber: 501 uid: test Пользователей можно чрутить, скажем, в /var/ftp, но мне было удобнее в /home/test/incoming. P.S.: В принципе, еще можно добавить mod_conf_ldap, чтобы весь proftpd.conf хранился в ldap-директориях, если надо кому - пишите в личку (solar sobaka solar dot net dot ru),можно будет сделать это по требованию. Михаил solar Покидько (solar at solar dot net dot ru)