Sava Chankov wrote:
Не. Направо съм писал как стоят при мен записите в LDAP директорията. примерно потребителя user е описан като uid=user,ou=People,dc=test,dc=example,dc=com.Vesselin Kolev wrote:
За да ви улесня указвам какво разбирам под виртуален хостинг базиран на LDAP? Всички потребители на пощенския домейн са описани в LDAP в отделен DN (примерно потребителите на домейна test.example.com са описани в LDAP в директория ou=People,dn=test,dn=example,dn=com, тези за домейна mail.domain.net в директория ou=People,dn=mail,dn=domain,dn=net и т.н.).
Може би имаш предвид dc=test,dc=example,dc=com (dc - domain component, стандартният начин за map-ване на DNS върху LDAP)? Т.е. LDAP топологията да е гора, в което домейните се представят като отделни дървета, а не като клони на дърво.
Проверката на идентичността на потребителя (т.нар. автентикиране) чрез LDAP в cyrus може да правиш по два начина - чрез auxprop плъгина за OpenLDAP на Howard Cho и saslauthd на Igor Brezac. Аз лично използвам втория начин. Не знам за начин, по който може да държиш информацията за различните домейни в различни LDAP сървъри, без да ползваш референции (referrals), но ако има такъв ще ми е наистина интересно да го науча.saslauthd не ти върши никаква работа, защото първо задаваш единствен сървър и единствена база за търсене. Примерно, опиши ми как можеш чрез saslauthd да удостовериш следните потребители (подавани в REALM): [EMAIL PROTECTED] и [EMAIL PROTECTED]
Всички конфигурационни ключове на cyrus, които започват с ldap_ се отнасят за ОТОРИЗИРАНЕТО през ptloader модула, а не за автентикирането им. Въпреки това,Добре, да приемем, че накарам собствениците на домейни да работят в моя LDAP root и там да им направя съответните директории, като sub на основната. Напиши ми примерно как би изглеждал по горната схема файла saslauthd за да проверява дали са налични [EMAIL PROTECTED] и domain1.tld? Това не става ясно от документацията.
може да използваш %1, %2, ... %9 за разбиването на нивата на домейна в ldap_base - от man страницата на imapd.conf, която общо взето може да разбереш само ако си хаквал кода :) %1-9 = domain tokens (%1 = tld, %2 = domain when %d = domain.tld), т.е.
ldap_base = dc=%3,dc=%2,dc=%1
ще работи в твоя случай.
Не знам защо смяташ, че LDAP гората се администрира по-лесно от LDAP дърво, в което домейните са представени така:
<root of LDAP> | +--->domain1.tld | | | +--->Group | | | | | +--->cn=groupname | | | | | ... | | | +--->People | | | +--->uid=username | | | ... ... +--->domainN.tld
Иначе...
Всичко, което казваш е така. Но при мен се налага да има различни LDAP сървъри и на тях да се пазят различни директории. Може да не е удобно, но такава е реалната ситуация:(
В твоя случай не ми е ясно как многобройните MTA ще доставят пощата - не знам какво е socket map и какви са другите варианти за доставка.
Socket map използват примерно едни embeded USB устройства, който комуникират със cyrus през lmtp демона му. Подобно предаване, базирано разбира се и на съответен протокол (в моя случай cyrusv2), се нарича socket map. Специално за Sendmail и Cyrus е обяснено тук:
http://anfi.homeunix.net/sendmail/rtcyrus-socket.html
За embeded устройствата:) не е обяснено. Но принципа е същия.
Поздрави и благодарности за отговора.
Весо
============================================================================ A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers). http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html ============================================================================