Installera OpenLDAP i Gentoo
Denna guide beskriver hur man installerar OpenLDAP, skapar en adressbok och hur man kan få olika mailklienter att söka upp email adresser ur denna adressbok.
Förberedelser
Logga in som root. Börja med att lägga till LDAP support för dina program genom att editera filen /etc/make.conf och lägg till ldap till USE flaggan
Om du inte vill ha LDAP stöd för något program, så lägg till lokala undantag i filen /etc/portage/package.use
Bygg sedan om de program som redan är installerade så att de får med LDAP stöd:
# emerge --newuse -u world
Installera OpenLDAP
Installera LDAP:
# emerge openldap
Konfigurera OpenLDAP
För att anpassa OpenLDAP behöver vi göra några justeringar av filen /etc/openldap/slapd.conf.
LDAP Scheman
Eftersom vi i första hand tänker använda LDAP för att centralisera en adressbok, så behöver vi stöd för ett schema som heter inetorgperson. Lägg till dessa två rader efter raden som inkluderar core.schema:
include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema
Suffix och rootdn
Ändra raderna suffix och rootdn till något som passar din domän. Om du har domänen foo.homeip.net så bör du ändra till:
suffix "dc=foo,dc=homeip,dc=net" rootdn "cn=Manager,dc=foo,dc=homeip,dc=net"
Det verkar vara ett fel i slapd.conf filen. Raden:
checkpoint 32 30 # <kbyte> <min>
måste flyttas. Lägg den efter suffix och rootdn raderna.
Sätta ett root password
För att generera ett LDAP root lösenord kör följande kommando:
# slappasswd
Ange ett valfritt lösenord. Editera raden med rootpw och klipp in ditt hashade lösen. Exempel:
rootpw {SSHA}sBmM93T6h1uTwscEdkbIvbMGSx/s2VaL
Starta OpenLDAP
Starta LDAP servern:
# /etc/init.d/slapd start
Lägg även till så att servern startar vid start av systemet:
# rc-update add slapd default
Skapa adressboken i LDAP
Skapa följande LDIF fil. Namnge den till /etc/openldap/addressbook.ldif. Anpassa den till din domän.
Template:Box Kod Kör sedan följande kommando och byt som vanligt ut så det passar din domän:
# ldapadd -x -D 'cn=Manager,dc=foo,dc=homeip,dc=net' -W -f /etc/openldap/addressbook.ldif
Ange ditt LDAP root lösen som du satte i steget ovan.
Installera phpldapadmin
LDAP är inte helt lätt att förstå, så ska vi ha någon chans att kunna lägga till och editera poster behöver vi något som gör livet lite enklare: phpldapadmin. Se till att installera phpldapadmin 1.0.1 eller nyare. De äldre versionerna saknade bl.a. edit stöd på poster. Kolla vilken version som kommer att installeras:
# emerge -p phpldapadmin
Om 1.0.1 eller nyare visas, kör om kommandot utan -p. Annars editera filen /etc/portage/package.keywords och lägg till följande:
net-nds/phpldapadmin ~<arch>
där <arch> är x86, amd64 eller vad du nu använder för arkitektur. Kör sedan om emerge kommandot och installera phpldapadmin.
Konfigurera phpldapadmin
Editera filen /var/www/localhost/htdocs/phpldapadmin/config/config.php och ändra följande. Sätt valfritt blowfish lösen:
$config->custom->session['blowfish'] = '<slumpmässig text>';
Avkommentera följande rad och justera den så den passar din domän:
$ldapservers->SetValue($i,'login','dn','cn=Manager,dc=foo,dc=homeip,dc=net');
Spara filen och pröva att logga in via sidan http://localhost/phpldapadmin och ange följande som Login DN: cn=Manager,dc=foo,dc=homeip,dc=net och ditt LDAP root lösen. Istället för localhost kanske du måste ange IP adressen på din LDAP server.
Lägga till poster
Antingen använder du en mailklient som har skrivstöd för LDAP eller så använder du phpldapadmin. Mailprogram som har LDAP skrivstöd är tyvärr få. Evolution är det enda jag känner till som har det. Om du använder phpldapadmin, logga in som manager/root enligt ovan och klicka på plustecknen till vänster tills du har expanderat din adressbok. Klicka sedan på Create new entry here och välj sedan Addressbook entry. Det finns olika mallar för detta. Välj t.ex. mozillaOrgPerson som lär passa t.ex. Thunderbird bäst. Mata in uppgifterna och klicka sedan på Proceed och sedan Create object.
Inställningar för mailprogram
Squirrelmail
För att kunna använda LDAP i squirrelmail krävs det att du kompilerat squirrelmail med LDAP support.
Sedan behöver du köra konfigurationsskriptet för squirrelmail och addera din LDAP server. Kör följande kommandon som root:
# cd /var/www/localhost/htdocs/squirrelmail # ./configure
Välj Address Books från menyn. Välj sedan Change LDAP Servers. Skriv ett + tecken och tryck sedan på Return. Mata sedan in uppgifterna för din LDAP server:
- Mata in IP adressen till din LDAP server
- Base DN sätter du till ou=addressbook,dc=foo,dc=homeip,dc=net
- Ange portnummer eller använd default
- Ange default charset
- Ange ett namn för din adressbok
- Ange default antal rader i sökresultaten
- Ange default Bind DN om du bara vill söka i adressboken
- Sätt LDAP protokollet till 3
När du är klar anger du ett d för done och trycker på Return. Välj sedan Save och Quit.
Logga in i squirrelmail. Börja skriva ett mail. Klicka på Address knappen och se om du kan söka upp någon person i din LDAP adressbok.
Thunderbird
Detta gäller för Thunderbird 1.5:
- Starta Thunderbird
- Välj Address Book från Tools menyn
- Välj New från File menyn och sedan LDAP Directory...
- Under General fliken matar du inte valfritt namn under Name, Hostname sätter du till IP adressen till LDAP servern och Base DN sätter du till ou=addressbook,dc=foo,dc=homeip,dc=net
- Klicka på OK
Sedan behöver vi lägga till LDAP adressboken så den används vid uppslagning av adresser då man skapar mail:
- Välj Options... från Tools menyn
- Klicka på Composition knappen och sedan på Addressing fliken
- Markera Directory Server under Address Autocompletion och välj sedan adressbok från listan
- Klicka på OK
Nu kan du pröva att skapa ett mail och se om Thunderbird hittar adressen från din LDAP adressbok.
Outlook
Detta gäller för Outlook 2003:
- Starta Outlook
- Välj E-mail Accounts... från Tools menyn
- Välj Add a new directory or addressbook och klicka sedan på Next
- Välj Internet Directory Service (LDAP) och klicka sedan på Next
- Ange IP adressen till LDAP servern under Server Name
- Klicka på More Settings...
- Under Connection fliken; Mata in lämpligt namn under Display Name och portnummer
- Under Search fliken anger du Search Base till ou=addressbook,dc=foo,dc=homeip,dc=net
- Klicka på OK knappen
- Klicka på Next och sedan Finish
Sedan behöver vi lägga till LDAP adressboken så den används vid uppslagning av adresser då man skapar mail:
- Välj Address Book från Tools menyn
- Välj Options... från Tools menyn
- Klicka på Add... knappen
- Markera din LDAP adressbok och klicka på Add och sedan Close
- Justera ev. sökordningen bland adressböcker
- Klicka sedan på OK
- Stäng adressboken
Nu kan du pröva att skapa ett mail och se om Outlook hittar adressen från din LDAP adressbok.