SWL Network (IV): Ubuntu Precise och ClearOS. SSSD-autentisering mot naturlig LDAP.

Hej kompisar!. Rakt på sak, men inte innan du läst artikeln «Introduktion till ett nätverk med fri programvara (I): presentation av ClearOS» och ladda ner ClearOS Step-by Step-installationsbilderpaketet (1,1 mega), för att vara medveten om vad vi pratar om. Utan den läsningen blir det svårt att följa oss. Okej? Desperate Usuals.

System Security Service Daemon

Programmet SSSD o Daemon för System Security Service, är ett projekt av fedora, som föddes från ett annat projekt - även från Fedora - kallat Freipa. Enligt sina egna skapare skulle en kort och fritt översatt definition vara:

SSSD är en tjänst som ger åtkomst till olika identitets- och autentiseringsleverantörer. Den kan konfigureras för en naturlig LDAP-domän (LDAP-baserad identitetsleverantör med LDAP-autentisering) eller för en LDAP-identitetsleverantör med Kerberos-autentisering. SSSD tillhandahåller gränssnittet till systemet genom NSS y PAM, och en infogbar Back End för att ansluta till flera och olika kontors ursprung.

Vi tror att vi står inför en mer omfattande och robust lösning för identifiering och autentisering av registrerade användare i en OpenLDAP än de som behandlats i föregående artiklar, en aspekt som överlåts åt alla och deras egna erfarenheter.

Lösningen som föreslås i den här artikeln är den mest rekommenderade för mobila datorer och bärbara datorer, eftersom det gör att vi kan arbeta frånkopplade, eftersom SSSD lagrar referenserna på den lokala datorn.

Exempel på nätverk

  • Domänkontrollant, DNS, DHCP: ClearOS Enterprise 5.2sp1.
  • Kontrollantens namn: centos
  • Domän namn: vänner.cu
  • Styrenhetens IP: 10.10.10.60
  • ---------------
  • Ubuntu-version: Ubuntu Desktop 12.04.2 Exakt.
  • Lagets namn: exakt
  • IP-adress: Använda DHCP

Vi förbereder vår Ubuntu

Vi ändrar filen /etc/lightdm/lightdm.conf för att acceptera manuell inloggning och lämna den med följande innehåll:

[SeatDefaults] greeter-session = enhet-greeter användarsession = ubuntu greeter-show-manual-login = true greeter-hide-users = true allow-guest = false

Efter att ha sparat ändringarna startar vi om lightdm i en konsol som åberopas av Ctrl + Alt + F1 och i det kör vi, efter inloggning, sudo service lightdm starta om.

Det rekommenderas också att redigera filen / Etc / hosts och lämna det med följande innehåll:

127.0.0.1 localhost 127.0.1.1 specificera.amigos.cu specificera [----]

På så sätt får vi rätt svar på kommandona hostname y värdnamn –fqdn.

Vi kontrollerar att LDAP-servern fungerar

Vi ändrar filen /etc/ldap/ldap.conf och installera paketet ldap-verktyg:

:~$ sudo nano /etc/ldap/ldap.conf
[----] BAS dc = vänner, dc = cu URI ldap: //centos.amigos.cu [----]
:~$ sudo aptitude installera ldap-utils :~$ ldapsearch -x -b 'dc=friends,dc=cu' '(objectclass=*)' :~$ ldapsearch -x -b dc=friends,dc=cu 'uid =steg'
: ~ $ ldapsearch -x -b dc = vänner, dc = cu 'uid = legolas' cn gidNumber

Med de två sista kommandona kontrollerar vi tillgängligheten av OpenLDAP-servern för vår ClearOS. Låt oss ta en titt på utdata från tidigare kommandon.

Viktigt: vi har också verifierat att identifieringstjänsten på vår OpenLDAP-server fungerar korrekt.

nätverk-swl-04-användare

Vi installerar sssd-paketet

Det rekommenderas också att installera paketet finger för att göra kontroller mer drickbara än ldapsearch:

:~$ sudo aptitude installera sssd finger

Efter installationen, tjänsten ssd startar inte på grund av saknad fil /etc/sssd/sssd.conf. Produktionen från installationen speglar detta. Därför måste vi skapa den filen och lämna den med nästa minsta innehåll:

:~$ sudo nano /etc/sssd/sssd.conf
[sssd] config_file_version = 2 services = nss, pam # SSSD startar inte om du inte konfigurerar några domäner. # Lägg till nya domänkonfigurationer som [domän / ] -avsnitt och # lägg sedan till listan med domäner (i den ordning du vill att de ska ifrågasättas) i attributet "domäner" nedan och avmarkera den. domäner = amigos.cu [nss] filter_groups = root filter_users = root reconnection_retries = 3 [pam] reconnection_retries = 3 # LDAP domain [domain / amigos.cu] id_provider = ldap
auth_provider = ldap
chpass_provider = ldap # ldap_schema kan ställas in på "rfc2307", som lagrar gruppmedlemsnamn i attributet "" medlemuid "eller till" rfc2307bis ", som lagrar gruppmedlems-DN i #" attributet "medlem". Om du inte känner till detta värde, fråga din LDAP # -administratör. # fungerar med ClearOS ldap_schema = rfc2307
ldap_uri = ldap: //centos.amigos.cu
ldap_search_base = dc = vänner, dc = cu # Observera att aktivering av uppräkning kommer att ha en måttlig prestandapåverkan. # Följaktligen är standardvärdet för uppräkning FALSKT. # Se mansidan sssd.conf för fullständig information. enumerate = false # Tillåt inloggningar offline genom att lokalt lagra lösenordshashar (standard: false). cache_credentials = true
ldap_tls_reqcert = tillåt
ldap_tls_cacert = /etc/ssl/certs/ca-certificates.crt

När filen har skapats tilldelar vi motsvarande behörigheter och startar om tjänsten:

:~$ sudo chmod 0600 /etc/sssd/sssd.conf
:~$ sudo service sssd omstart

Om vi ​​vill berika innehållet i den tidigare filen rekommenderar vi att den körs man sssd.conf och / eller konsultera den befintliga dokumentationen på Internet, med början med länkarna i början av inlägget. Rådfråga också man sssd-ldap. Förpackningen ssd innehåller ett exempel i /usr/share/doc/sssd/examples/sssd-example.conf, som kan användas för att autentisera mot en Microsoft Active Directory.

Nu kan vi använda de mest drickbara kommandona finger y gegent:

: ~ $ fingersteg
Login: strides Namn: Strides El Rey Directory: / home / strides Shell: / bin / bash Inloggad aldrig. Ingen post. Ingen plan.

: ~ $ sudo getent passwd legolas
legolas: *: 1004: 63000: Legolas The Elf: / home / legolas: / bin / bash

Vi kan fortfarande inte bara springa iväg och försöka autentisera oss som användare till LDAP-servern. Först måste vi ändra filen /etc/pam.d/common-session, så att användarens mapp automatiskt skapas när du startar din session, om den inte finns och sedan startar om systemet:

[----]
session krävs pam_mkhomedir.so skel = / etc / skel / umask = 0022

### Ovanstående rad måste inkluderas INNAN
# här är modulerna per paket ("Primär" -blocket) [----]

Om vi ​​nu startar om:

: ~ $ sudo omstart

Efter inloggning kopplar du bort nätverket med Connection Manager och loggar ut och åter in. Snabbare ingenting. Kör i en terminal ifconfig och de kommer att se att eth0 den är inte konfigurerad alls.

Aktivera nätverket. Logga ut och logga in igen. Kontrollera igen med ifconfig.

För att arbeta offline är det naturligtvis nödvändigt att starta en session minst en gång medan OpenLDAP är online, så att referenserna sparas på vår dator.

Låt oss inte glömma att göra den externa användaren som är registrerad i OpenLDAP till medlem i de nödvändiga grupperna, alltid uppmärksamma användaren som skapades under installationen.

Om utrustningen inte vill stängas av med hjälp av applet motsvarande, kör sedan i en konsol sudo ström av att stänga av, och sudo omstart att starta om. Det återstår att ta reda på varför ovanstående ibland händer.

anteckning:

Förklara alternativ ldap_tls_reqcert = aldrig, i filen /etc/sssd/sssd.conf, utgör en säkerhetsrisk som anges på sidan SSSD - FAQ. Standardvärdet är «Efterfrågan«. Ser man sssd-ldap. Men i kapitlet 8.2.5 Konfigurera domäner Från Fedora-dokumentationen anges följande:

SSSD stöder inte autentisering över en okrypterad kanal. Följaktligen, om du vill autentisera mot en LDAP-server heller TLS/SSL or LDAPS krävs.

SSSD den stöder inte autentisering över en okrypterad kanal. Därför är det nödvändigt om du vill autentisera mot en LDAP-server TLS / SLL o LDAP.

Vi tänker personligen att lösningen adresserades det räcker för ett Enterprise LAN, ur säkerhetssynpunkt. Genom WWW Village rekommenderar vi att du implementerar en krypterad kanal med TLS eller «Transportsäkerhetslager », mellan klientdatorn och servern.

Vi försöker uppnå detta genom rätt generering av självsignerade certifikat eller «Självsignerad ”På ClearOS-servern, men vi kunde inte. Det är verkligen en pågående fråga. Om någon läsare vet hur man gör det, välkommen att förklara det!

steg-offline


4 kommentarer, lämna din

Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  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.   livlig sade

    Ännu en artikel till Markers 😀

    1.    federico sade

      Tack för kommentaren och hälsningar!

  2.   joel sade

    Hallå. Jag försöker få det att fungera med en ubuntu-server och en annan ubuntu som klient, och anslutet fungerar allt väldigt bra, men när jag stoppar servern eller kopplar bort nätverket accepterar den inte användarlösenorden. Jag har ingen aning om vad jag kan göra för fel. Kan det bero på att jag inte har ldap-servern konfigurerad att använda säkerhet (ssl)?

    1.    braybaut sade

      Det är precis därför, eftersom du inte har den krypterade kanalen, accepterar den inte ditt lösenord.