Katalogtjänst med OpenLDAP [7 och final?]: Ldap Account Manager

Hej kompisar!. Vi ville inte publicera den här artikeln eftersom den finns i kompendiet i PDF-format som många läsare har begärt. Ja, vi kommer att skriva en sammanfattning med intressanta tillägg. Och som en förhandsvisning av kompendiet transkriberar vi Inledning:

Många personer som ansvarar för tjänsterna i företagsnätverket, när de tar ansvar för ett nätverk vars tjänster är baserade på Microsoft-produkter, om de vill migrera till Linux överväger de migrering av domänkontrollanterna bland andra tjänster.

Om de inte väljer en tredjepartsprodukt som ClearOS eller Zentyal, eller om de av andra skäl vill bli oberoende, åtar de sig den noggranna uppgiften att bli sin egen domänkontrollant eller från Samba 4 - eller andra - sina egna Active Directory.

Sedan börjar problemen och några andra besvikelser. Driftsfel. De hittar inte platsen för problemen för att kunna lösa dem. Upprepade installationsförsök. Delvis drift av tjänsterna. Och en lång lista med problem.

Om vi ​​tittar noga använder de flesta Internet inte nätverk av Microsoft-typ. Men i vår affärsmiljö gör vi mycket.

Med detta kompendium försöker vi visa att vi kan skapa ett företagsnätverk utan Microsofts filosofi. Tjänster baserade på autentisering av användare mot en OpenLDAP-katalog som: E-post, FTP, SFTP, Business Cloud baserat på Owncloud, etc.

Vi strävar efter att erbjuda ett annat tillvägagångssätt baserat på 100% fri programvara, och som inte använder eller emulerar - vilket för fallet är detsamma - filosofin i Microsoft-nätverk, vare sig med Microsoft-programvara eller med OpenLDAP och Samba som de viktigaste.

Alla lösningar som använder den fria programvaran Openldap + Samba, måste nödvändigtvis gå igenom grundläggande kunskaper om vad som är en LDAP-server, hur den installeras, hur den konfigureras och administreras etc. Senare integrerar de Samba och möjligen Kerberos, och till slut erbjuder de oss att "emulera" en domänkontrollant i stil med Microsofts NT 4, eller en Active Directory.

En svår uppgift när vi implementerar och konfigurerar den från förvarets paket. De som har studerat och tillämpat den omfattande Samba-dokumentationen vet mycket väl vad vi menar. Samba 4 föreslår till och med administrationen av din Active Directory genom att använda den klassiska administrationskonsolen som vi hittar i en Microsoft Active Directory, vare sig det är 2003 eller en annan mer avancerad.

Rekommenderad läsning.

https://wiki.debian.org/LDAP
OpenLDAP Software 2.4 Administratörshandbok
Ubuntu Server Guide 12.04
Serverkonfiguration med GNU / Linux.

Utmärkt manual som El Maestro, Joel Barrios Dueñas ger oss och som tjänar Debians spelare mycket bra, även om den är inriktad på CentOS och Red Hat.

Vilka tjänster och programvara planerar vi att installera och konfigurera?

  • Oberoende NTP, DNS och DHCP, det vill säga de två sista är inte integrerade i katalogen
  • Katalogtjänst eller «Katalogtjänst»Baserat på OpenLDAP
  • E-post, "Citadel" Group Work Suite, FTP och SFTP,
  • Business Cloud «OwnCloud«
  • Oberoende filserver baserad på Samba.

I alla fall kommer processen att autentisera användarnas autentiseringsuppgifter att utföras direkt mot katalogen eller genom libnss-ldap y PAM beroende på egenskaperna hos programvaran i fråga.

Och utan vidare, låt oss gå ner i affärer.

Ldap Account Manager

Innan vi fortsätter måste vi läsa:

De som har följt serien av tidigare artiklar kommer att ha märkt att vi redan har en katalog att hantera. Vi kan uppnå detta på många sätt, antingen genom konsolverktygen grupperade i paketet ldapscripts, webbgränssnitten PhpLDAPadmin, Ldap Account Manager, etc., som finns i förvaret.

Det finns också möjlighet att göra det genom Apache Directory Studio, som vi måste ladda ner från Internet. Den väger cirka 142 megabyte.

För att administrera vår katalog rekommenderar vi starkt att du använder Ldap Account Manager. Och det första vi kommer att säga om det är att efter installationen kan vi komma åt det dokumentation som finns i mappen / usr / share / doc / ldap-account-manager / docs.

Genom Ldap Account Managerhädanefter LAM, vi kan hantera användar- och gruppkonton som är lagrade i vår katalog. LAM körs på vilken webbserver som stöder PHP5, och vi kan ansluta till den via en okrypterad kanal eller genom StartTLS, vilket är den form vi kommer att använda i vårt exempel.

Första installationen och konfigurationen:

: ~ # aptitude install ldap-account-manager

Efter installationen av Apache2 -apache2-mpm-pregaffel-, från PHP5 och andra beroenden, och från själva paketet ldap-kontoansvarigDet första vi måste göra är att skapa en symbolisk länk från LAM-dokumentationsmappen till rotmappen för dokumenten på vår webbserver. Exempel:

: ~ # ln -s / usr / share / doc / ldap-account-manager / docs / manual / / var / www / lam-docs

På detta sätt garanterar vi åtkomst till LAM-manualen via en webbläsare, om vi pekar på adressen http://mildap.amigos.cu/lam-docs.

Låt oss sedan börja konfigurera själva LAM. I en webbläsare pekar vi på http://mildap.amigos.cu/lam.

  • Vi klickar på länken "LAM-konfiguration".
  • Klicka på länken "Redigera serverprofiler".
  • Vi skriver lösenordet 'M utan citaten.

På LAM-konfigurationssidorna kan vi ändra många parametrar enligt våra preferenser och behov. Eftersom jag alltid har rekommenderat att gå från det enkla till det komplexa, och inte tvärtom, kommer vi bara att röra vid det som är absolut nödvändigt för att använda det kraftfulla verktyget som är LAM. Om vi ​​efter att ha blivit mästare i dess användning vill ändra eller lägga till funktioner, välkomna.

  • Aktivera TLS: ja -Rekommenderad-.
  • Trädsuffix: dc = vänner, dc = cu
  • Standardspråk: spanska (Spanien)
  • Lista över giltiga användare *: cn = admin, dc = vänner, dc = cu
  • Nytt lösenord: annat lösenord än lam
  • Skriv lösenordet igen: annat lösenord än lam

Obs: " * 'betyder att det är en obligatorisk post.

Längst ner till vänster är knapparna ^ Spara y ^ Avbryt. Om vi ​​sparar ändringarna nu kommer det tillbaka till den första sidan och vi kan se att språket redan har ändrats och att användarens namn nu är administration. Innan var chef. Men låt oss gå tillbaka för att redigera -nu på spanska- "Miljö. av LAM ». När vi är tillbaka på konfigurationssidan kommer vi att göra följande:

  • Vi väljer fliken 'Typer av konton'.
  • I avsnittet 'Aktiva kontotyper' -> 'Användare' -> 'LDAP-suffix', vi skrev: ou = People, dc = vänner, dc = cu.
  • I avsnittet 'Aktiva kontotyper' -> 'Grupper' -> 'LDAP-suffix', vi skrev: ou = Grupper, dc = vänner, dc = cu.
  • Använd knapparna med titeln '^ Ta bort den här kontotypen', eliminerar vi de som motsvarar 'Lag' y 'Samba-domäner', som vi inte kommer att använda.
  • Vi väljer fliken 'Moduler'.
  • En 'Användare', på listan "Valda moduler"flyttar vi modulen 'Samba 3 (sambaSamAccount)' till listan över 'Tillgängliga moduler'.
  • En 'Grupper', på listan "Valda moduler"flyttar vi modulen 'Samba 3 (sambaGroupMapping)' till listan över 'Tillgängliga moduler'.

För tillfället, och tills vi blir bekanta med LAM-konfigurationen, lämnar vi det.

Vi sparar ändringarna och återgår till startsidan, där vi måste skriva in användarens lösenord administration (cn = admin, dc = vänner, dc = cu), förklarades under installationen av slag. Om du returnerar ett fel, kontrollera att /etc/ldap/ldap.conf den är korrekt konfigurerad på själva servern. Du kan ha fel sökväg till TLS-certifikatet eller ett annat fel. Kom ihåg att det ska se ut så här:

BAS dc = vänner, dc = cu URI ldap: //mildap.amigos.cu # TLS-certifikat (behövs för GnuTLS) TLS_CACERT /etc/ssl/certs/cacert.pem

Väl inne i LAM måste vi spendera lite tid på att studera det INNAN vi ändrar någon konfiguration. Gränssnittet är väldigt intuitivt och enkelt att använda. Använd den och kontrollera.

observation: I dokumentet http://mildap.amigos.cu/lam-docs/ch02s02.html#confTypicalScenarios, kan vi läsa i slutet:

Enkel LDAP-katalog med många användare (> 10)
LAM testades för att fungera med 10 000 användare. Om du har mycket fler användare har du i princip två alternativ.

  • Dela ditt LDAP-träd i organisationsenheter: Detta är vanligtvis det bästa alternativet. Placera dina konton i flera organisationsenheter och ställ in LAM som i det avancerade scenariot ovan.
  • Öka minnesgränsen: Öka parametern memory_limit i din php.ini. Detta gör att LAM kan läsa fler poster. Men detta kommer att sakta ner LAMs svarstider.

Låt oss vara kreativa och ordnade i administrationen av vår katalog.

Policy för lösenordssäkerhet och andra aspekter genom LAM

  • Vi klickar på länken «LAM-konfiguration».
  • Klicka på länken "Redigera allmänna inställningar".
  • Vi skriver lösenordet 'M utan citaten.

Och på den sidan hittar vi lösenordspolicyer, säkerhetsinställningar, tillåtna värdar och andra.

Obs: LAM-konfigurationen sparas i /usr/share/ldap-account-manager/config/lam.conf.

Vi gör det möjligt för https att ansluta till LAM säkert:

: ~ # a2ensite default-ssl
: ~ # a2enmod ssl
: ~ # /etc/init.d/apache2 starta om

När vi aktiverar https på tidigare sätt arbetar vi med certifikaten som Apache genererar som standard och återspeglar dem i definitionen av sin virtuella värd default-ssl. Om vi ​​vill använda andra certifikat som vi genererar, vänligen och låt oss rådfråga /usr/share/doc/apache2.2-common/README.Debian.gz. Certifikaten i fråga anropas "Orm olja" Ormolja, och de finns i:

/etc/ssl/certs/ssl-cert-snakeoil.pem
/etc/ssl/private/ssl-cert-snakeoil.key

Låt oss peka webbläsaren på https://mildap.amigos.cu, och vi accepterar certifikatet. Sedan pekar vi på https://mildap.amigos.cu/lam och vi kan redan arbeta igenom https the LAM.

Viktigt: om serverns startprocess, exim tar lång tid att starta, installera den lätta vikten ssmtp.

: ~ # aptitude installera ssmtp
 Följande NYA paket kommer att installeras: ssmtp {b} 0 uppdaterade paket, 1 nytt installerat, 0 att ta bort och 0 inte uppdaterat. Jag måste ladda ner 52,7 kB filer. Efter uppackning används 8192 B. Beroende på följande paket uppfylls inte: exim4-config: Konflikter: ssmtp men 2.64-4 installeras. exim4-daemon-light: Konflikter: mail-transport-agent som är ett virtuellt paket. ssmtp: Konflikter: mail-transport-agent som är ett virtuellt paket. Följande åtgärder kommer att lösa dessa beroenden Ta bort följande paket: 1) exim4 2) exim4-base 3) exim4-config 4) exim4-daemon-light Accepterar du den här lösningen? [Y / n / q /?] Och

Sedan utför vi:

: ~ # aptitude purge ~ c: ~ # aptitude clean: ~ # aptitude autoclean: ~ # reboot

Om du arbetar med virtuella servrar, skulle det vara en bra tid att göra en bra säkerhetskopia av hela huvudservern ... för alla fall. 🙂

Replikering. Spara och återställ katalogdatabasen.

I den utmärkta guiden - som vi rekommenderar alla att läsa och studera - «Ubuntu ServerGuide»Av Ubuntu Server 12.04« Precise », kommer en detaljerad förklaring av delar av koden som vi har skrivit om OpenLDAP och generering av TLS-certifikat, och den handlar också mycket detaljerat om Directory Replication, och hur man gör Save and Restore of databaserna.

Här är dock ett förfarande för att återställa hela databasen i händelse av en katastrof.

Väldigt viktigt:

Vi måste ALLTID ha den exporterade filen till hands via Ldap Account Manager som en säkerhetskopia av våra data. Naturligtvis måste filen cn = amigos.ldif motsvara vår egen installation. Vi kan också få det genom slapcat-kommandot som vi kommer att se senare.

1.- Vi eliminerar endast slapd-installationen.

: ~ # aptitude purge slpad

2.- Vi rengör paketet

: ~ # aptitude install -f: ~ # aptitude purge ~ c: ~ # aptitude clean: ~ # aptitude autoclean

3.- Vi tar helt bort katalogdatabasen

: ~ # rm -r / var / lib / ldap / *

4.- Vi installerar om slapd-demonen och dess beroenden

: ~ # aptitude installera slapd

5. - Vi kontrollerar

: ~ # ldapsearch -Q -LLL -Y EXTERNAL -H ldapi: /// -b cn = config dn: ~ # ldapsearch -x -LLL -H ldap: /// -b dc = vänner, dc = cu dn

6.- Vi lägger till samma indexfil olcDbIndex.ldif

: ~ # ldapmodify -Y EXTERNAL -H ldapi: /// -f ./olcDbIndex.ldif

7.- Vi kontrollerar de tillagda indexen

: ~ # ldapsearch -Q -LLL -Y EXTERNAL -H ldapi: /// \ -b cn = config '(olcDatabase = {1} hdb)' olcDbIndex

8.- Vi lägger till samma åtkomstkontrollregel

: ~ # ldapmodify -Y EXTERNAL -H ldapi: /// -f ./olcAccess.ldif

9.- Vi kontrollerar reglerna för åtkomstkontroll

: ~ # ldapsearch -Q -LLL -Y EXTERNAL -H ldapi: /// \ -b cn = config '(olcAccess = *)' olcAccess olcSuffix

10.- Vi lägger till TLS-certifikat. Inget behov av att bygga om eller fixa behörigheter. De finns redan i filsystemet men deklareras inte i databasen.

: ~ # ldapmodify -Y EXTERNAL -H ldapi: /// -f /etc/ssl/certinfo.ldif

11.- Vi lägger till innehållet enligt vår egen säkerhetskopia

: ~ # ldapadd -x -D cn = admin, dc = vänner, dc = cu -W -f dc = vänner.ldif

Starta INTE om slapd eftersom den indexerar databasen och den kan bli skadad !!! Redigera ALLTID din säkerhetskopia INNAN du lägger till den för att inte ange befintliga poster.

Vi pekar i en webbläsare på https://mildap.amigos.cu/lam och vi kollar.

Slapcat-kommandot

Kommandot slapcat Det används oftast för att generera i LDIF-format, innehållet i databasen som hanterar slag. Kommandot öppnar databasen bestämd av dess nummer eller av suffixet och skriver motsvarande fil i LDIF-format på skärmen. De databaser som är konfigurerade som underordnade visas också, såvida vi inte anger alternativet -g.

Den viktigaste begränsningen för användningen av detta kommando är att det inte ska köras när slag, åtminstone i skrivläge, för att säkerställa datakonsistens.

Om vi ​​till exempel vill göra en säkerhetskopia av katalogdatabasen till en fil med namnet backup-slapd.ldif, vi utför:

: ~ # service slapd stop: ~ # slapcat -l backup-slapd.ldif: ~ # service slapd start

LAM-bilder

lam-01

lam-02

lam-03

lam-04

lam-05

lam-06


Innehållet i artikeln följer våra principer om redaktionell etik. Klicka på för att rapportera ett fel här.

15 kommentarer, lämna din

Lämna din kommentar

Din e-postadress kommer inte att publiceras.

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   Jose Antonio sade

    Bra bidrag, jag älskade det, och också den rekommenderade läsningen.
    Han hade letat efter en liknande artikel utan mycket framgång.

    Jag ger dig en 10 😉

    1.    federico sade

      Tack för att du kommenterade och utvärderade mina artiklar !!!

  2.   låt oss använda Linux sade

    Intressant! Återigen, utmärkt bidrag, Fico!
    Kram! Paul.

    1.    federico sade

      Tack så mycket för din kommentar och beröm, vän Pablo !!! Jag hoppas att det är användbart för dem som behöver det.

  3.   vidagnu sade

    Utmärkt innehåll! Tack igen för att du delar.

    hälsningar

    1.    federico sade

      Tack för kommentaren !!!

  4.   djägare sade

    Homerun Fico !! Och den officiella pdf för när kommer den att vara klar?

    1.    federico sade

      Hälsningar dhunter !!!. Föreställ dig att förutom att innehålla de 7 inlägg som hittills publicerats kommer jag att inkludera hur man integrerar en grundläggande e-postserver baserad på CITADEL; FTP, SFTP-tjänster; ett affärsmoln baserat på OwnCloud; en fristående Samba-server med systemanvändare via libnss-ldap och PAM, och så vidare. Dra dina egna slutsatser. Jag tror i slutet av mars eller början av april.

      1.    guzmanweb sade

        Hej Federico, tack för bidraget, vi ser fram emot det. med uppdateringen ..

        1.    federico sade

          Jag kommer att anstränga mig för att avsluta den i slutet av denna månad. Det är inte alls lätt att skriva en bok även om den bara är några sidor.

  5.   nexus6 sade

    Jag kan bara säga att av bidragsgivarna till den här bloggen verkar du vara den mest intressanta, den bäst förklarade och den längsta sidan av ALLA.

    1.    federico sade

      Tack så mycket för din recension. I varje artikel jag skriver gör jag mitt bästa för jag vet att det alltid finns läsare som du, trots många som inte kommenterar.
      Hälsningar Nexus6 !!!

  6.   edgar sade

    God eftermiddag, när jag konsulterar nätverket om ldap hittar jag att du ger rekommendationer, som jag gratulerar för din avsikt, nu är jag ny på detta och som alla som vill lära sig
    Det här är frågan
    Mina vänner säger till mig att när nätverket kopplas bort ändrar operativsystemet som redan är autentiserat med ldap mitt språk till engelska så att du kan berätta om var jag ska kontrollera vilken fil som ska kontrolleras så att det är på spanska som min användare återinitieras redan lagt till i LDAP i förväg tack för att du hjälpte

  7.   pedrop sade

    Federico utmärkt inlägg som vanligt. Jag läste att du kommenterade något relaterat till en PDF med konfigurationen av de flesta telematiska tjänster som används i ett företagsnätverk. Du sa att det i slutet av mars eller början av april förra året skulle vara klart. Min fråga är om du vid den tiden lyckades avsluta den och ladda upp den? Tack på förhand, i slutändan ska jag testa Openfire, jag ser att det till och med har ett webbgränssnitt för 9090.

    1.    Federico A. Valdes Toujague sade

      Tack för dina kommentarer, Pedro Pablo. I stället för att svara dig ingående skrev jag en artikel som du kommer att läsa idag eller imorgon. Tacksamma läsare som du förtjänar ett svar. Tack igen.