Scroll to navigation

SSSD-AD(5) Filformat och konventioner SSSD-AD(5)

NAME

sssd-ad - SSSD Active Directory-leverantör

BESKRIVNING

Denna manualsida besriver konfigurationen av leverantören AD till sssd(8). För en detaljerad referens om syntaxen, se avsnittet “FILFORMAT” i manualsidan sssd.conf(5).

Leverantören AD är en bakände som används för att ansluta till en Active Directory-server. Leverantören att maskinen läggs in i AD-domänen och en keytab är tillgänlig. Bakändekommunikationen sker över en GSSAPI-krypterad kanal, SSL/TLS-alternativ skall inte användas tillsammans med AD-leverantören och kommer ersättas av Kerberos-användning.

AD-leverantören stödjer anslutning till Active Directory 2008 R2 eller senare. Tidigare versioner kan fungera, men stödjs inte.

AD-leverantören kan användas för att få användarinformation och autentisera användare från betrodda domäner. För närvarande känns endast betrodda domäner i samma skog igen. Dessutom automatupptäcks alltid servrar från betrodda domäner.

AD-leverantören gör att SSSD kan använda identitetsleverantören sssd-ldap(5) och autentiseringsleverantören sssd-krb5(5) med optimeringar för Active Directory-miljöer. AD-leverantören tar samma alternativ som aänvänds av leverantörerna sssd-ldap och sssd-krb5 med några undantag. Dock är det varken nödvändigt eller lämpligt att sätta dessa alternativ.

AD-leverantören kopierar i huvudsak standardalternativen för de traditionella leverantörerna ldap och krb5 med några undantag. Skillnaderna listas i avsnittet “ÄNDRADE STANDARDINSTÄLLNINGAR”.

AD-leverantören kan även användas som en åtkomst-, chpass-, sudo- och autofs-leverantör. Ingen konfiguration av åtkomstleverantören behövs på klientsidan.

Om “auth_provider=ad” eller “access_provider=ad” konfigureras i sssd.conf måste id-leverantören också sättas till “ad”.

Som standard kommer AD-leverantören översätta UID- och GID-värden från parametern objectSID i Active Directory. För detaljer om detta se avsnittet “ID-ÖVERSÄTTNING” nedan. Om du vill avaktivera ID-översättning och istället lita på POSIX-attribut definierade i Active Directory skall du sätta

ldap_id_mapping = False

. Om POSIX-attribut skall användas rekommenderas det av restandaskäl att attributen även replikeras till den globala katalogen. Om POSIX-attribut replikeras kommer SSSD försöka att hitta domänen för den begärda numeriska ID:n med hjälp av den globala katalogen och endast söka i den domänen. Om POSIX-attribut däremot inte replikeras till den globala katalogen måste SSSD söka i alla domänerna i skogen sekventiellt. Observera att alternativet “cache_first” också kan vara till hjälp för att snabba upp domänlösa sökningar. Observera att om endast en delmängd av POSIX-attributen finns i den globala katalogen läses för närvarande inte de attribut som inte replikeras från LDAP-porten.

Användare, grupper och andra enheter som servas av SSSD behandlas alltid som skiftlägesokänsliga i AD-leverantören för kompatibilitet med Active Directorys LDAP-implementation.

KONFIGURATIONSALTERNATIV

Se “DOMÄNSEKTIONER” i manualsidan sssd.conf(5) för detaljer om konfigurationen av en SSSD-domän.

ad_domain (sträng)

Anger namnet på Active Directory-domänen. Detta är frivilligt. Om det inte anges används namnet på den konfigurerade domänen.

För att fungera ordentligt skall detta alternativ anges som den gemena versionen av den långa versionen av Active Directorys domän.

Det korta domännamnet (även känt som NetBIOS--namet eller det flata namnet) detekteras automatiskt av SSSD.

ad_enabled_domains (sträng)

En kommaseparerad lista av aktiverade Active Directory-domäner. Om det tillhandahålls kommer SSSD ignorera eventuella domäner som inte räknas upp i detta alternativ. Om det lämnas osatt kommer alla domäner från AD-skogen vara tillgängliga.

För att fungera ordentligt bör detta alternativ anges helt i gemener och som det fullständigt kvalificerade namnet på Active Directorys domänen. Till exempel:

ad_enabled_domains = marknad.exempel.se, tekn.exempel.se

Det korta domännamnet (även känt som NetBIOS--namet eller det flata namnet) kommer detekteras automatiskt av SSSD.

Standard: inte satt

ad_server, ad_backup_server (sträng)

Den kommaseparerade listan av värdnamn till AD-servrar till vilka SSSD skall ansluta i prioritetsordning. För mer information om reserver och serverredundans se avsnittet “RESERVER”.

Detta är frivilligt om automatupptäckt är aktiverat. För mer information om tjänsteupptäckt se avsnittet “TJÄNSTEUPPTÄCKT”.

Observera: betrodda domäner kommer alltid automatiskt upptäcka servrar även om den primära servern definieras uttryckligen i alternativet ad_server.

ad_hostname (sträng)

Valfri. Kan sättas på maskiner där hostname(5) inte avspeglar det fullständigt kvalificerade namnet som används i Active Directory-domänen för att identifiera denna värd.

Detta fält används för att avgöra värd-huvudmannen som används i keytab:en. Det måste stämma med värdnamnet som keytab:en gavs ut för.

ad_enable_dns_sites (boolean)

Aktiverar DNS-sajter – platsbaserat tjänsteupptäckt.

Om sant och tjänsteupptäckt (se stycket Tjänsteupptäckt i slutet av manualsidan) är aktiverat kommer SSSD först att försöka matt hitta en Active Directory-server att ansluta till med Active Directory Site Discovery och sedan falla tillbaka på traditionell SRV-upptäckt om ingen AD-sajt hittas. Konfigurationen av DNS SRV, inklusive upptäcktsdomänen, används också under sajtupptäckten.

Standard: true

ad_access_filter (sträng)

Detta alternativ anger LDAP:s åtkomstkontrollfilter som anändaren måste matcha för att tillåtas åtkomst. Observera att alternativet “access_provider” måste vara uttryckligen satt till “ad” för att detta alternativ skall ha någon effekt.

Alternativet stödjer också att ange olika filter per domän eller skog. Detta utökade filter skulle bestå av: “NYCKELORD:NAMN:FILTER”. Nyckelordet kan vara antingen “DOM”, “FOREST” eller utelämnas.

Om nyckelordet är lika med “DOM” eller saknas anger “NAMN” domänen eller underdomänen filtret gäller för. Om nyckelordet är lika med “FOREST” är filtret lika för alla domäner från skogen som anges av “NAMN”.

Flera filter kan avgränsas med tecknet “?”, i likhet med hur sökbaser fungerar.

Nästade gruppmedlemskap måste sökas efter med en speciell OID “:1.2.840.113556.1.4.1941:” utöver den fullständiga syntaxen DOM:domän.exempel.se: för att säkerställa att tolken inte försöker tolka kolontecknen som hör till OID:n. Om man inte använder denna OID kommer nästade gruppmedlemskap inte slås upp. Se användningsexempel nedan och se här för ytterligare information om OID:n: [MS-ADTS] avsnittet LDAP-utökningar[1]

Den mest specifika matchingen används alltid. Till exempel, om alternativet angav filter för en domän användaren är medlem i och ett globalt filter skulle det domänspecifika filtret tillämpas. Om det finns fler matchningar med samma specifikation används den första.

Exempel:

# tillämpla endast filtret på än domän som heter dom1:
dom1:(memberOf=cn=admins,ou=groups,dc=dom1,dc=com)
# tillämpa endast filtret på en domän som heter dom2:
DOM:dom2:(memberOf=cn=admins,ou=groups,dc=dom2,dc=com)
# tillämpa endast filtret på en skog som heter EXEMPEL.SE:
FOREST:EXEMPEL.SE:(memberOf=cn=admins,ou=groups,dc=example,dc=com)
# tillämpa filtret på en medlem av en nästad grupp i dom1:
DOM:dom1:(memberOf:1.2.840.113556.1.4.1941:=cn=nestedgroup,ou=groups,dc=example,dc=com)

Standard: inte satt

ad_site (sträng)

Ange en AD-sajt som klienten skall försöka ansluta till. Om detta alternativ inte anges kommer AD-sajten att automatupptäckas.

Standard: inte satt

ad_enable_gc (boolean)

Som standard ansluter SSSD till den globala katalogen först för att hämta användare från betrodda domäner och använder LDAP-porten för att hämta gruppmedlemskap som en reserv. Att avaktivera detta alternativ gör att SSSD endast ansluter till lDAP-porten på den aktuella AD-servern.

Observera att att avaktivera stöd för den globala katalogen inte avaktiverar att hämta användare från betrodda domäner. SSSD skulle ansluta till LDAP-porten på den betrodda domänen istället. Dock måste den globala katalogen användas för att slå upp gruppmedlemskap över domäner.

Standard: true

ad_gpo_access_control (sträng)

Detta alternativ anger arbetsläget för GPO-baserad åtkomstkontrollsfunktionalitet: huruvida det arbetar i avaktiverat läge, tvingande läge eller tillåtande läge. Observera att alternativet “access_provider” måste vara uttryckligen satt till “ad” för att detta alternativ skall ha någon effekt.

GPO-baserad åtkomstkontrollsfunktionalitet använder GPO-policyinställningar för att avgöra huruvida en viss användare tillåts att logga på en viss värd.

OBS: Den nuvarande versionen av SSSD stödjer inte värd- (dator-)poster i GPO:s ”säkerhetsfilter”-lista. Endast användar- och gruppposter stödjs. Värdposter i listan har ingen effekt.

OBS: Om arbetsläget är satt till tvingande är det möjligt att användare som tidigare tilläts inloggningsåtkomst nu kommer att nekas inloggningsåtkomst (som det dikteras av GPO-policyinställningarna). För att möjliggöra en smidig övergång för administratörer är ett tillåtande läge tillgängligt som inte kommer tvinga reglerna för åtkomstkontroll, men kommer beräkna dem och skriva ut ett syslog-meddelande om åtkomst skulle ha nekats. Genom att granska loggarna kan administratörer sedan göra de nödvändiga ändringarna före de ställer in arbetsläget till tvingande.

Det finns tre stödda värden för detta alternativ:

•disabled: GPO-baserade åtkomstkontrollsregler varken evalueras eller påtvingas.

•enforcing: GPO-baserade åtkomstkontrollregler evalueras och påtvingas.

•permissive: GPO-baserade åtkomstkontrollregler evalueras men påtvingas inte. Istället skickas ett syslog-meddelande ut om indikerar att användaren skulle ha nekats åtkomst om detta alternativs värde vore satt till enforcing.

Standard: permissive

ad_gpo_implicit_deny (boolean)

Normalt när inga tillämpliga GPO:er finns tillåts användarna åtkomst. När detta alternativ är satt till True kommer användare att tillåtas åtkomst endast när det uttryckligen tillåts av en GPO-regel. Annars kommer användare nekas åtkomst. Detta kan användas för att stärka säkerheten men var försiktig när detta alternativ används för det kan neka åtkomst även till användare i den inbyggda administratörsgruppen om inga GPO-regler är tillämpliga på dem.

Default: False (seconds)

ad_gpo_ignore_unreadable (boolean)

Normalt när några gruppolicybehållare (AD-objekt) av några tillämpliga gruppolicyobjekt inte är läsbara av SSSD så nekas användare åtkomst. Detta alternativ tillåter att man ignorerar gruppolicybehållare och med dem tillhörande policyer om deras attribut i gruppolicybehållare inte är läsbara för SSSD.

Default: False

ad_gpo_cache_timeout (heltal)

Tiden mellan uppslagningar av GPO-policyfiler AD-servern. Detta kommer reducera tidsfördröjningen och lasten på AD-servern om det görs många begäranden om åtkomstkontroll under en kort tid.

Standard: 5 (sekunder)

ad_gpo_map_interactive (sträng)

En kommaseparerad lista av PAM-tjänstenamn för vilka GPO-baserad åtkomstkontroll beräknas baserat på policyinställningarna InteractiveLogonRight och DenyInteractiveLogonRight.

Obs: när man använder gruppolicyhanteringsredigeraren kallas detta värde ”Tillåt inloggning lokalt” och ”Neka inloggning lokalt”.

Det är möjligt att lägga till ett annat PAM-tjänstnamn till standarduppsättninge genom att använda “+tjänstenamn” eller att uttryckligen ta bort ett PAM-tjänstenamn från standarduppsättningen genom att använda “-tjänstenamn”. Till exempel, för att byta ut ett standard-PAM-tjänstenamn för denna inloggningsrätt (t.ex. “login”) mot ett anpassat PAM-tjänstenamn (t.ex. “min_pam-tjänst”) skulle man använda följande konfiguration:

ad_gpo_map_interactive = +min_pam_tjänst, -login

Standard: standarduppsättningen av PAM-tjänstenamn innefattar:

•login

•su

•su-l

•gdm-fingerprint

•gdm-password

•gdm-smartcard

•kdm

•lightdm

•lxdm

•sddm

•unity

•xdm

ad_gpo_map_remote_interactive (sträng)

En kommaseparerad lista av PAM-tjänstenamn för vilka GPO-baserad åtkomstkontroll beräknas baserat på policyinställningarna RemoteInteractiveLogonRight och DenyRemoteInteractiveLogonRight.

Obs: när man använder gruppolicyhanteringsredigeraren kallas detta värde ”Tillåt inloggning via fjärrskrivbordstjänster” och ”Neka inloggning via fjärrinloggningstjänter”.

Det är möjligt att lägga till ett annat PAM-tjänstnamn till standarduppsättninge genom att använda “+tjänstenamn” eller att uttryckligen ta bort ett PAM-tjänstenamn från standarduppsättningen genom att använda “-tjänstenamn”. Till exempel, för att byta ut ett standard-PAM-tjänstenamn för denna inloggningsrätt (t.ex. “sshd”) mot ett anpassat PAM-tjänstenamn (t.ex. “min_pam-tjänst”) skulle man använda följande konfiguration:

ad_gpo_map_remote_interactive = +min_pam_tjänst, -sshd

Standard: standarduppsättningen av PAM-tjänstenamn innefattar:

•sshd

•cockpit

ad_gpo_map_network (sträng)

En kommaseparerad lista av PAM-tjänstenamn för vilka GPO-baserad åtkomstkontroll beräknas baserat på policyinställningarna NetworkLogonRight och DenyNetworkLogonRight.

Obs: när man använder gruppolicyhanteringsredigeraren kallas detta värde ”Kom åt denna dator från nätverket” och ”Neka åtkomst till denna dator från nätverket”.

Det är möjligt att lägga till ett annat PAM-tjänstnamn till standarduppsättninge genom att använda “+tjänstenamn” eller att uttryckligen ta bort ett PAM-tjänstenamn från standarduppsättningen genom att använda “-tjänstenamn”. Till exempel, för att byta ut ett standard-PAM-tjänstenamn för denna inloggningsrätt (t.ex. “ftp”) mot ett anpassat PAM-tjänstenamn (t.ex. “min_pam-tjänst”) skulle man använda följande konfiguration:

ad_gpo_map_network = +min_pam_tjänst, -ftp

Standard: standarduppsättningen av PAM-tjänstenamn innefattar:

•ftp

•samba

ad_gpo_map_batch (sträng)

En kommaseparerad lista av PAM-tjänstenamn för vilka GPO-baserad åtkomstkontroll beräknas baserat på policyinställningarna BatchLogonRight och DenyBatchLogonRight.

Obs: när man använder gruppolicyhanteringsredigeraren kallas detta värde ”Tillåt inloggning som ett batch-jobb” och ”Neka inloggning som ett batch-jobb”.

Det är möjligt att lägga till ett annat PAM-tjänstnamn till standarduppsättninge genom att använda “+tjänstenamn” eller att uttryckligen ta bort ett PAM-tjänstenamn från standarduppsättningen genom att använda “-tjänstenamn”. Till exempel, för att byta ut ett standard-PAM-tjänstenamn för denna inloggningsrätt (t.ex. “crond”) mot ett anpassat PAM-tjänstenamn (t.ex. “min_pam-tjänst”) skulle man använda följande konfiguration:

ad_gpo_map_batch = +min_pam_tjänst, -crond

Obs: cron-tjänstenamn kan skilja beroende på vilken Linuxdistribution som används.

Standard: standarduppsättningen av PAM-tjänstenamn innefattar:

•crond

ad_gpo_map_service (sträng)

En kommaseparerad lista av PAM-tjänstenamn för vilka GPO-baserad åtkomstkontroll beräknas baserat på policyinställningarna ServiceLogonRight och DenyServiceLogonRight.

Obs: när man använder gruppolicyhanteringsredigeraren kallas detta värde ”Tillåt inloggning som en tjänst” och ”Neka inloggning som en tjänst”.

Det är möjligt att lägga till ett PAM-tjänstnamn till standarduppsättningen genom att använda “+tjänstenamn”. Eftersom standarduppsättningen är tom är det inte möjligt att ta bort ett PAM-tjänstenamn från standarduppsättningen. Till exempel, för att lägga till ett anpassat PAM-tjänstenamn (t.ex. “min_pam-tjänst”) skulle man använda följande konfiguration:

ad_gpo_map_service = +min_pam_tjänst

Standard: inte satt

ad_gpo_map_permit (sträng)

En kommaseparerad lista av PAM-tjänstenamn för vilka GPO-baserad åtkomst alltid tillåts, oavsett några andra GPO-inloggningsrättigheter.

Det är möjligt att lägga till ett annat PAM-tjänstnamn till standarduppsättninge genom att använda “+tjänstenamn” eller att uttryckligen ta bort ett PAM-tjänstenamn från standarduppsättningen genom att använda “-tjänstenamn”. Till exempel, för att byta ut ett standard-PAM-tjänstenamn för ovillkorligt tillåten åtkomst (t.ex. “sudo”) mot ett anpassat PAM-tjänstenamn (t.ex. “min_pam-tjänst”) skulle man använda följande konfiguration:

ad_gpo_map_permit = +min_pam_tjänst, -sudo

Standard: standarduppsättningen av PAM-tjänstenamn innefattar:

•polkit-1

•sudo

•sudo-i

•systemd-user

ad_gpo_map_deny (sträng)

En kommaseparerad lista av PAM-tjänstenamn för vilka GPO-baserad åtkomst alltid nekas, oavsett några andra GPO-inloggningsrättigheter.

Det är möjligt att lägga till ett PAM-tjänstnamn till standarduppsättningen genom att använda “+tjänstenamn”. Eftersom standarduppsättningen är tom är det inte möjligt att ta bort ett PAM-tjänstenamn från standarduppsättningen. Till exempel, för att lägga till ett anpassat PAM-tjänstenamn (t.ex. “min_pam-tjänst”) skulle man använda följande konfiguration:

ad_gpo_map_deny = +min_pam_tjänst

Standard: inte satt

ad_gpo_default_right (sträng)

Detta alternativ definierar hur åtkomstkontroll beräknas för PAM-tjänstenamn som inte är uttryckligen listade i en av alternativen ad_gpo_map_*. Detta alternativ kan anges på två olika sätt. Antingen kan detta alternativ sättas till att ange standardinloggningsrättigheter. Till exempel, om detta alternativ är satt till ”interactive” betyder det att att omappade PAM-tjänstenamn kommer bearbetas baserat på policyinställningarna InteractiveLogonRight och DenyInteractiveLogonRight. Alternativt kan detta alternativ sättas till att antingen alltid tillåta eller lltid neka åtkomst för omappade PAM-tjänstenamn.

Värden som stödjs för detta alternativ inkluderar:

•interactive

•remote_interactive

•network

•batch

•service

•permit

•deny

Standard: deny

ad_maximum_machine_account_password_age (heltal)

SSSD kommer en gång om dagen kontrollera om maskinkontolösenordet är äldre än den givna ålder i dagar och försöka förnya det. Ett värde på 0 kommer förhindra förnyelseförsöket.

Standard: 30 dagar

ad_machine_account_password_renewal_opts (sträng)

Detta alternativ skall endast användas för att testa maskinkontoförnyelsefunktionen. Alternativet förväntar sig 2 heltal separerade av ett kolon (”:”). Det första heltalet anger intervallet i sekunder hur ofta funktionen körs. Det andra anger den initiala tidsgränsen i sekunder före funktionen körs för första gången efter uppstart.

Standard: 86400:750 (24h och 15m)

ad_use_ldaps (bool)

By default SSSD uses the plain LDAP port 389 and the Global Catalog port 3628. If this option is set to True SSSD will use the LDAPS port 636 and Global Catalog port 3629 with LDAPS protection. Since AD does not allow to have multiple encryption layers on a single connection and we still want to use SASL/GSSAPI or SASL/GSS-SPNEGO for authentication the SASL security property maxssf is set to 0 (zero) for those connections.

Default: False

dyndns_update (boolean)

Valfritt. Detta alternativ säger till SSSD att automatiskt uppdatera DNS-servern i Active Directory med IP-adressen för denna klient. Uppdateringen säkras med GSS-TSIG. Som en konsekvens av det behöver Active Directory-administratören bara tillåta säkra uppdateringar för DNS-zonen. IP-adressen för AD-LDAP-förbindelsen används för uppdateringar, om det inte specificeras på annat sätt med alternativet “dyndns_iface”.

OBS: på äldre system (såsom RHEL 5) måste standardriket för Kerberos sättas i /etc/krb5.conf för att detta beteende skall fungera pålitligt.

Standard: true

dyndns_ttl (heltal)

TTL:en att använda för klientens DNS-post vid uppdatering. Om dyndns_update är falsk har detta ingen effekt. Detta kommer åsidosätta TTL på serversidan om det är satt av en administratör.

Standard: 3600 (sekunder)

dyndns_iface (sträng)

Valfri. Endast tillämpligt när dyndns_update är sann. Väl gränssnittet eller en lista av gränssnitt vars IP-adresser skall användas för dynamiska DNS-uppdateringar. Specialvärdet “*” betyder att IP:n från alla gränssnitt skall användas.

Standard: använd IP-adresser för gränssnittet som används för AD LDAP-förbindelsen

Exempel: dyndns_iface = em1, vnet1, vnet2

dyndns_refresh_interval (heltal)

Hur ofta bakänden skall utföra periodiska DNS-uppdateringar utöver den automatiska uppdateringen som utförs när bakänden kopplar upp. Detta alternativ är valfritt och tillämpligt endast när dyndns_update är sann. Observera att det lägsta möjliga värdet är 60 sekunder, ifall ett värde mindre än 60 ges kommer parametern endast anta det lägsta värdet.

Standard: 86400 (24 timmar)

dyndns_update_ptr (bool)

Huruvida PTR-posten också skall uppdateras explicit när klientens DNS-post uppdateras. Tillämpligt endast när dyndsn_update är sann.

Standard: True

dyndns_force_tcp (bool)

Huruvida nsupdate-verktyget som standard skall använda TCP för kommunikation med DNS-servern.

Standard: False (låt nsupdate välja protokollet)

dyndns_auth (sträng)

Huruvida verktyget nsupdate skall använda GSS-TSIG-autentisering för säkra uppdateringar av DNS-servern, osäkra uppdateringar kan skickas genom att sätta detta alternativ till ”none”.

Standard: GSS-TSIG

dyndns_server (sträng)

DNS-servern som skall användas när en uppdatering av DNS utförs. I de flesta uppsättningar rekommenderas det att låta detta alternativ vara osatt.

Att sätta detta alternativ är meningsfullt i miljöer där DNS-servern är skild från identitetsservern.

Observera att detta alternativ bara kommer användas i försök att falla tillbaka på när tidigare försök som använder automatiskt upptäckta inställningar misslyckas.

Standard: Ingen (låt nsupdate välja servern)

override_homedir (string)

Override the user's home directory. You can either provide an absolute value or a template. In the template, the following sequences are substituted:

%u

inloggningsnamn

%U

UID number

%d

domain name

%f

fully qualified user name (user@domain)

%l

The first letter of the login name.

%P

UPN - User Principal Name (name@REALM)

%o

The original home directory retrieved from the identity provider.

%H

The value of configure option homedir_substring.

%%

ett bokstavligt ”%”

Detta alternativ kan även sättas per domän.

exempel:

override_homedir = /home/%u

Default: Not set (SSSD will use the value retrieved from LDAP)

homedir_substring (string)

The value of this option will be used in the expansion of the override_homedir option if the template contains the format string %H. An LDAP directory entry can directly contain this template so that this option can be used to expand the home directory path for each client machine (or operating system). It can be set per-domain or globally in the [nss] section. A value specified in a domain section will override one set in the [nss] section.

Default: /home

krb5_confd_path (sträng)

Absolut sökväg till en katalog där SSSD skall placera konfigurtionsstycken för Kerberos.

För att förhindra att konfigurationsstycken skapas, sätt parametern till ”none”.

Standard: inte satt (underkatalogen krb5.include.d till SSSD:s pubconf-katalog)

MODIFIED DEFAULT OPTIONS

Certain option defaults do not match their respective backend provider defaults, these option names and AD provider-specific defaults are listed below:

KRB5 Provider

•krb5_validate = true

•krb5_use_enterprise_principal = true

LDAP Provider

•ldap_schema = ad

•ldap_force_upper_case_realm = true

•ldap_id_mapping = true

•ldap_sasl_mech = gssapi

•ldap_referrals = false

•ldap_account_expire_policy = ad

•ldap_use_tokengroups = true

•ldap_sasl_authid = sAMAccountName@REALM (typically SHORTNAME$@REALM)

The AD provider looks for a different principal than the LDAP provider by default, because in an Active Directory environment the principals are divided into two groups - User Principals and Service Principals. Only User Principal can be used to obtain a TGT and by default, computer object's principal is constructed from its sAMAccountName and the AD realm. The well-known host/hostname@REALM principal is a Service Principal and thus cannot be used to get a TGT with.

NSS configuration

•fallback_homedir = /home/%d/%u

The AD provider automatically sets "fallback_homedir = /home/%d/%u" to provide personal home directories for users without the homeDirectory attribute. If your AD Domain is properly populated with Posix attributes, and you want to avoid this fallback behavior, you can explicitly set "fallback_homedir = %o".

RESERVER

Reservfunktionen gör att bakändar automatiskt kan byta till en annan server om den nuvarande servern slutar fungera.

Reservsyntax

Listand av servrar ges som en kommaseparerad lista; godtyckligt antal mellanslag tillåts runt kommatecknet. Servrarna listas i preferensordning. Listan kan innhålla obegränsat antal servrar.

För varje reservaktiverad konfigurationsalternativ finns det två varianter: primary och backup. Tanken är att servrar i den primära listan föredras och backup-servrar bara provas om inga primära servrar kan nås. Om en backup-server väljs sätts en tidsgräns på 31 sekunder. Efter demma todsgräns kommer SSSD periodiskt att försöka återansluta till en av de primära servrarna. Om det lyckas kommer den ersätta den nu aktiva (backup-)servern.

Reservmekanismen

Reservmekanismen gör skillnad mellan en maskin och en tjänst. Bakänden försöker först att slå upp värdnamnet för en given maskin; om denna uppslagning misslyckas antas maskinen vara bortkopplad. Inga ytterligare försök görs att ansluta till denna maskin för någon annan tjänst. Om uppslagningsförsöket lyckas försöker bakänden ansluta till en tjänst på denna maskin. OM tjänsteanslutningen misslyckas anses bara just denna tjänst frånkopplad och bakänden byter automatiskt till nästa tjänst. Maskinen betraktas fortfarande som uppkopplad och kan användas vid försök att nå en annan tjänst.

Ytterligare försök att ansluta görs till maskiner eller tjänster som markerats som frånkopplade efter en viss tidsperiod, detta är för närvarande hårdkodat till 30 sekunder.

Om det inte finns några fler maskiner att prova byter bakänden i sin helhet till frånkopplat läge, och försöker sedan återansluta var 30:e sekund.

Tidsgränser och trimning av reservfunktioner

Att slå upp en server att ansluta till kan vara så enkelt som att göra en enstaka DNS-fråga eller kan innebära flera steg, såsom att hitta den rätta sajten eller försöka med flera värdnamn ifall några av de konfigurerade servrarna inte kan nås. De mer komplexa scenariona kan ta en stund och SSSD behöver balansera mellan att tillhandahålla tillräckligt med tid för att färdigställa upplösningprocessen men å andra sidan inte försöka för länge före den faller tillbaka på frånkopplat läge. Om SSSD:s felsökningloggar visar att serverns upplösning överskrider tidsgränsen före en aktiv server nås kan du överväga att ändra tidsgränserna.

Detta avsnitt listar tillgängliga trimningsvariabler. Se deras beskrivning i manualsidan sssd.conf(5).

dns_resolver_op_timeout

Hur länge SSSD skall prata med en enskild DNS-server.

dns_resolver_timeout

Hur länge skall SSSD försöka slå upp en reservtjänst. Denna tjänsteuppslagning kan internt bestå av flera steg, såsom att slå upp DNS SRV-frågor och lokalisera sajten.

För LDAP-baserade leverantörer utförs uppslagningsoperationen som en del av LDAP-anslutningsoperationen. Därför skall även tidsgränsen “ldap_opt_timeout>” sättas till ett större värde än “dns_resolver_timeout” som i sin tur skall sättas till ett större värde än “dns_resolver_op_timeout”.

TJÄNSTEUPPTÄCKT

Tjänsteupptäcktsfunktionen gör att bakändar automatiskt kan hitta en lämplig server att ansluta till med en speciell DNS-fråga. Denna funktion stödjs inte för backup-servrar.

Configuration

Om inga servrar anges använder bakänden automatiskt tjänsteupptäckt för att försöka hitta en server. Användaren kan om så önskas välja att använda både en bestämd serveradress och tjänsteupptäckt genom att infoga ett speciellt nyckelord, “_srv_”, i listan av servrar. Prefernsordningen bibehålls. Denna funktion är användbar om, till exempel, användaren föredrar att använda tjänsteupptäckt närhelst det är möjligt, och falla tillbaka på en specifik server när inga servrar kan upptäckas med DNS.

The domain name

Please refer to the “dns_discovery_domain” parameter in the sssd.conf(5) manual page for more details.

The protocol

The queries usually specify _tcp as the protocol. Exceptions are documented in respective option description.

Se även

För mer information om tjänsteupptäcktsmekanismen, se RFC 2782.

ID-MAPPNING

ID-mappningsfunktionen låter SSD fungera som en klient till Active Directory utan att kräva att administratörer utökar användarattribut till att stödja POSIX-attribut för användar- och gruppidentifierare.

OBSERVERA: När ID-mappning aktiveras ignoreras attributen uidNumber och gidNumber. Detta är för att undvika möjligheten av konflikt mellan automatiskt tilldelade och manuellt tilldelade värden. Om du behöver använda manuellt tilldelade värden måste ALLA värden tilldelas manuellt.

Observera att byte av ID-mappnings relaterade konfigurationsalternativ kommer få användar- och grupp-ID:n att ändras. För närvarande stödjer inte SSSD byte av ID:n, så SSSD-databasen moste tas bort. Eftersom cachade lösenord också lagras i databasen skall databasen bara tas bort när autentiseringsservrarna kan nås, annars kan användare låsas ute. För att cacha lösenordet måste en autentisering göras. Det är inte tillräckligt att använda sss_cache(8) för att ta bort databasen, istället består processen av:

•Making sure the remote servers are reachable

•Stopping the SSSD service

•Removing the database

•Starting the SSSD service

Moreover, as the change of IDs might necessitate the adjustment of other system properties such as file and directory ownership, it's advisable to plan ahead and test the ID mapping configuration thoroughly.

Mapping Algorithm

Active Directory provides an objectSID for every user and group object in the directory. This objectSID can be broken up into components that represent the Active Directory domain identity and the relative identifier (RID) of the user or group object.

The SSSD ID-mapping algorithm takes a range of available UIDs and divides it into equally-sized component sections - called "slices"-. Each slice represents the space available to an Active Directory domain.

When a user or group entry for a particular domain is encountered for the first time, the SSSD allocates one of the available slices for that domain. In order to make this slice-assignment repeatable on different client machines, we select the slice based on the following algorithm:

The SID string is passed through the murmurhash3 algorithm to convert it to a 32-bit hashed value. We then take the modulus of this value with the total number of available slices to pick the slice.

NOTE: It is possible to encounter collisions in the hash and subsequent modulus. In these situations, we will select the next available slice, but it may not be possible to reproduce the same exact set of slices on other machines (since the order that they are encountered will determine their slice). In this situation, it is recommended to either switch to using explicit POSIX attributes in Active Directory (disabling ID-mapping) or configure a default domain to guarantee that at least one is always consistent. See “Configuration” for details.

Configuration

Minimum configuration (in the “[domain/DOMAINNAME]” section):

ldap_id_mapping = True
ldap_schema = ad

The default configuration results in configuring 10,000 slices, each capable of holding up to 200,000 IDs, starting from 200,000 and going up to 2,000,200,000. This should be sufficient for most deployments.

Advanced Configuration

ldap_idmap_range_min (integer)

Specifies the lower bound of the range of POSIX IDs to use for mapping Active Directory user and group SIDs.

NOTE: This option is different from “min_id” in that “min_id” acts to filter the output of requests to this domain, whereas this option controls the range of ID assignment. This is a subtle distinction, but the good general advice would be to have “min_id” be less-than or equal to “ldap_idmap_range_min”

Default: 200000

ldap_idmap_range_max (integer)

Specifies the upper bound of the range of POSIX IDs to use for mapping Active Directory user and group SIDs.

NOTE: This option is different from “max_id” in that “max_id” acts to filter the output of requests to this domain, whereas this option controls the range of ID assignment. This is a subtle distinction, but the good general advice would be to have “max_id” be greater-than or equal to “ldap_idmap_range_max”

Default: 2000200000

ldap_idmap_range_size (integer)

Specifies the number of IDs available for each slice. If the range size does not divide evenly into the min and max values, it will create as many complete slices as it can.

NOTE: The value of this option must be at least as large as the highest user RID planned for use on the Active Directory server. User lookups and login will fail for any user whose RID is greater than this value.

For example, if your most recently-added Active Directory user has objectSid=S-1-5-21-2153326666-2176343378-3404031434-1107, “ldap_idmap_range_size” must be at least 1108 as range size is equal to maximal SID minus minimal SID plus one (e.g. 1108 = 1107 - 0 + 1).

It is important to plan ahead for future expansion, as changing this value will result in changing all of the ID mappings on the system, leading to users with different local IDs than they previously had.

Default: 200000

ldap_idmap_default_domain_sid (string)

Specify the domain SID of the default domain. This will guarantee that this domain will always be assigned to slice zero in the ID map, bypassing the murmurhash algorithm described above.

Standard: inte satt

ldap_idmap_default_domain (string)

Specify the name of the default domain.

Standard: inte satt

ldap_idmap_autorid_compat (boolean)

Changes the behavior of the ID-mapping algorithm to behave more similarly to winbind's “idmap_autorid” algorithm.

When this option is configured, domains will be allocated starting with slice zero and increasing monatomically with each additional domain.

NOTE: This algorithm is non-deterministic (it depends on the order that users and groups are requested). If this mode is required for compatibility with machines running winbind, it is recommended to also use the “ldap_idmap_default_domain_sid” option to guarantee that at least one domain is consistently allocated to slice zero.

Default: False

ldap_idmap_helper_table_size (integer)

Maximal number of secondary slices that is tried when performing mapping from UNIX id to SID.

Note: Additional secondary slices might be generated when SID is being mapped to UNIX id and RID part of SID is out of range for secondary slices generated so far. If value of ldap_idmap_helper_table_size is equal to 0 then no additional secondary slices are generated.

Standard: 10

Well-Known SIDs

SSSD supports to look up the names of Well-Known SIDs, i.e. SIDs with a special hardcoded meaning. Since the generic users and groups related to those Well-Known SIDs have no equivalent in a Linux/UNIX environment no POSIX IDs are available for those objects.

The SID name space is organized in authorities which can be seen as different domains. The authorities for the Well-Known SIDs are

•Null Authority

•World Authority

•Local Authority

•Creator Authority

•NT Authority

•Built-in

The capitalized version of these names are used as domain names when returning the fully qualified name of a Well-Known SID.

Since some utilities allow to modify SID based access control information with the help of a name instead of using the SID directly SSSD supports to look up the SID by the name as well. To avoid collisions only the fully qualified names can be used to look up Well-Known SIDs. As a result the domain names “NULL AUTHORITY”, “WORLD AUTHORITY”, “ LOCAL AUTHORITY”, “CREATOR AUTHORITY”, “NT AUTHORITY” and “BUILTIN” should not be used as domain names in sssd.conf.

EXEMPEL

Följande exempel antar att SSSD är korrekt konfigurerat och att exempel.se är en av domänerna i avsnittet [sssd]. Detta exempel visar endast alternativ som är specifika för leverantören AD.

[domain/EXEMPEL]
id_provider = ad
auth_provider = ad
access_provider = ad
chpass_provider = ad
ad_server = dc1.exempel.se
ad_hostname = client.exempel.se
ad_domain = exempel.se

NOTER

Leverantören AD av åtkomstkontroll kontrollerar om kontot har gått ut. Det har samma effekt som följande konfiguration av LDAP-leverantören:

access_provider = ldap
ldap_access_order = expire
ldap_account_expire_policy = ad

Dock, om inte åtkomstleverantören “ad” är konfigurerad explicit är standardåtkomstleverantören “permit”. Observera att om man konfigurerar en annan åtkomstleverantör än “ad” behöver man sätta alla anslutningsparametrarna (såsoms LDAP URI:er och krypteringsdetaljer) manuellt.

När autofs-leverantören är satt till “ad” används översättningen av schemaattribut enligt RFC2307 (nisMap, nisObject, ...), för att dessa attribut inkluderas i standardschemat för Active Directory.

SEE ALSO

sssd(8), sssd.conf(5), sssd-ldap(5), sssd-krb5(5), sssd-simple(5), sssd-ipa(5), sssd-ad(5), sssd-sudo(5),sssd-secrets(5),sssd-session-recording(5), sss_cache(8), sss_debuglevel(8), sss_groupadd(8), sss_groupdel(8), sss_groupshow(8), sss_groupmod(8), sss_useradd(8), sss_userdel(8), sss_usermod(8), sss_obfuscate(8), sss_seed(8), sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(8), sss_ssh_knownhostsproxy(8),sssd-ifp(5),pam_sss(8). sss_rpcidmapd(5)sssd-systemtap(5)

AUTHORS

SSSD uppströms – https://pagure.io/SSSD/sssd/

NOTES

1.
[MS-ADTS] avsnittet LDAP-utökningar
01/24/2023 SSSD