--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Steps Fri Nov 04 06:29:26 2005 +0000
@@ -0,0 +1,127 @@
+Damit cyrus22 mit LDAP funktioniert.
+
+__LDAP aufsetzen (logisch)
+
+ - nicht erforderlich sollten ldap_pam und ldap_nss sein
+ - Den Cyrus-Admin eintragen, z.B:
+
+ Als Anregung 'populate.ldif'...
+
+
+
+
+__cyrus22
+ - sources.list: deb http://mail.incase.de/cyrus22/i386/ ./
+ - auch den cyrus22-imapd (Der wird für cyradm gebraucht. Wie wollen die
+ Mailboxen sonst angelegt werden?)
+
+ - virtual Domain support. Achtung, die 'default_domain' wird immer
+ abgeschnitten und dann werden ldap usw gefragt ohne diese Domain
+ hinten dran. Scheint ein anderes Konzept zu sein...
+
+ - unixhierarchysep: yes
+ - altnamespace: yes
+
+ Offenbar muss auxprop wissen, dass ldap genutzt werden soll. Wie das?
+ Oder der saslauthd muss es wissen.
+
+ (Oder aber über pam? Vielleicht auch das als Lösung. Aber kann Cyrus
+ mit pam? - das wird als die krankeste Lösung dargestellt.)
+
+ Jetzt mit saslauthd (aus sasl2-bin) - der muß in
+ /etc/default/saslauthd ldap eingetragen gekommen und natürlich eine
+ Config-Datei haben.
+
+ In /etc/saslauthd.conf
+
+ Wenn über ein LDAP-Bind geprüft werden soll, dann muss dort
+ kein Nutzer und kein Passwort drinstehen.
+
+ Mit der Methode 'custom' wird nach userPassword gesucht und dann
+ offenbar wirklich das Passwort verglichen. (?)
+
+ ,---[ saslauthd.conf ]---
+ ldap_auth_method: bind
+ #ldap_auth_method: custom
+ #ldap_bind_dn: cn=admin,dc=ddc-consult,dc=de
+ #ldap_bind_pw: x
+
+ ldap_search_base: dc=ddc-consult,dc=de
+ #ldap_servers: ldap://localhost:389/
+ #ldap_default_realm: ddc-dresden.de
+ `--------------------------
+
+ => APOP geht nicht (siehe auch Manual-Seite: dazu müsste auxprop
+ Klartext-Passworte haben, die's aber nicht hat, wenn es saslauthd
+ nutzt.
+
+__exim4
+
+ Exim soll mit Cyrus über LMTP sprechen, also muss ein exim-Transport
+ her (und gleich noch einer für Amavis):
+ begin transports
+ ...
+
+ cyrdeliver:
+ driver = lmtp
+ socket = /var/run/cyrus/socket/lmtp
+ transport_filter = /usr/bin/spamc -u $local_part@$domain
+ group = mail
+
+ amavis:
+ driver = smtp
+ port = 10024
+ allow_localhost
+
+
+ Und natürlich müssen die Router auch Bescheid wissen:
+ ldap_default_servers = localhost::389
+ LDAP_USERS = ou=MailAccounts,dc=ddc-consult,dc=de
+ LDAP_ALIASES = ou=MailAliases,dc=ddc-consult,dc=de
+
+ local_interfaces = 0.0.0.0.25 : 127.0.0.1.10025
+
+ begin router
+
+ amavis:
+ driver = manualroute
+ condition = ${if eq{interface_port}{10025} {0}{1}}
+ route_list = * localhost byname
+ transport = amavis
+ self = send
+ no_verify
+
+ # Ein Router der so wie die alten Aliase funktioniert
+ ldap_aliases:
+ driver = redirect
+ data = ${lookup ldap{ldap:///cn=${quote_ldap:$local_part},LDAP_ALIASES?rfc822MailMember?base?}}
+
+ ...
+ # Ein Router, der die Alternativen Namen der
+ # Nutzer findet
+ alternative_names:
+ driver = redirect
+ data = ${lookup ldap{ldap:///LDAP_USERS?uid?sub?(mail=${quote_ldap:$local_part@$domain})}}
+
+
+ # Ein Router, der dann wirklich nur an Cyrus übergibt, wenn LDAP
+ # vermuten läßt, dass das funktionieren wird.
+ # nach den local users
+ cyrus:
+ driver = accept
+ condition = ${lookup ldapdn{ldap:///uid=${quote_ldap:$local_part},LDAP_USERS??base?}}
+ transport = cyrdeliver
+
+
+
+__SpamAssassin
+
+ Das PID-File geht nicht zu schreiben, wenn er als Nutzer spamd
+ läuft -> /etc/default/spamassassin
+ (dort auch gleich noch 'export LANG=de_DE' eintragen, damit die
+ Meldungen eventuell in Deutsch kommen)
+
+
+# $Id$
+# $URL$
+# vim:sts=2 sw=2 aw ai sm fo+=n tw=72: