SSSD-LDAP(5) | Filformat och konventioner | SSSD-LDAP(5) |
NAME¶
sssd-ldap - SSSD LDAP-leverantör
BESKRIVNING¶
Denna manualsida beskriver beskriver konfigurationen av LDAP-domäner för sssd(8). Se avsnittet “FILFORMAT” av manualsidan sssd.conf(5) för detaljerad syntaxinformation.
Du kan konfigurera SSSD för att använda mer än en LDAP-domän.
LDAP-bakändar stödjer leverantörer av id, autentisering, åtkomst och lösenordsändring. Om du vill autentisera mot en LDAP-server krävs antingen TLS/SSL eller LDAPS. sssd stödjer inte autentisering över en okrypterad kanal. Om LDAP-servern används endsat som en identitetsleverantör behövs inte en krypterad kanal. Se konfigurationsalternativet “ldap_access_filter” för mer information om att använda LDAP som en åtkomstleverantör.
KONFIGURATIONSALTERNATIV¶
Alla de vanliga konfigurationsalternativen som gäller SSSD-domäner gäller även LDAP-domäner. Se avsnittet “DOMÄNSEKTIONER” av manualsidan sssd.conf(5) för fullständiga detaljer.
ldap_uri, ldap_backup_uri (sträng)
Formatet på URI:n måste stämma med formatet som definieras i RFC 2732:
ldap[s]://<värd>[:port]
För explicita IPv6-adresser måste <host> vara omslutet av hakparenteser []
exempel: ldap://[fc00::126:25]:389
ldap_chpass_uri, ldap_chpass_backup_uri (sträng)
För att aktivera tjänsteuppslagning måste ldap_chpass_dns_service_name vara satt.
Standard: tomt, d.v.s. ldap_uri används.
ldap_search_base (sträng)
Med början med SSSD 1.7.0 stödjer SSSD flera sökbaser genom att använda syntaxen:
sökbas[?räckvidd?[filter][?sökbas?räckvidd?[filter]]*]
Räckvidden kan vara en av ”base”, ”onelevel” eller ”subtree”.
Filtret måste vara ett korrekt LDAP-sökfilter som specificerat i http://www.ietf.org/rfc/rfc2254.txt
Exempel:
ldap_search_base = dc=example,dc=com (vilket är ekvivalent med) ldap_search_base = dc=example,dc=com?subtree?
ldap_search_base = cn=host_specific,dc=example,dc=com?subtree?(host=thishost)?dc=example.com?subtree?
Observera: det stödjs inte att ha flera sökbaser som refererar identiskt namngivna objekt (till exempel, grupper med samma namn i två olika sökbaser). Detta kommer medföra oförutsägbart beteende på klientmaskinerna.
Standard: om inte satt används värdet från attributet defaultNamingContext eller namingContexts från RootDSE:n hos LDAP-servern. Om defaultNamingContext inte finns eller har ett tomt värde används namingContexts. Attributet namingContexts måste ha ett ensamt värde med DN:n hos sökbasen hos LDAP-servern för att detta skall fungera. Flera värden stödjs inte.
ldap_schema (sträng)
Fyra schematyper stödjs för närvarande:
Den huvudsakliga skillnaden mellan dessa schematyper är hur gruppmedlemskap lagras i servern. Med rfc2307 listas gruppmedlemskap med namn i attributet memberUid. Med rfc2307bis och IPA listas gruppmedlemskap av DN och lagras i attributet member. AD-schematypen sätter attributen till att motsvara Active Directory 2008r2-värden.
Standard: rfc2307
ldap_pwmodify_mode (sträng)
Två lägen stödjs för närvarande:
Obs: först etableras en ny förbindelse för att verifiera det aktuella lösenordet genom att binda som användaren som begärde lösenordsändringen. Om det lyckas används denna förbindelse för att ändra lösenordet och därför måste användaren a skrivrätt på attributet userPassword.
Standard: exop
ldap_default_bind_dn (sträng)
ldap_default_authtok_type (sträng)
De två mekanismerna som stödjs för närvarande är:
password
obfuscated_password
Standard: password
ldap_default_authtok (sträng)
ldap_user_object_class (sträng)
Standard: posixAccount
ldap_user_name (sträng)
Standard: uid (rfc2307, rfc2307bis och IPA), sAMAccountName (AD)
ldap_user_uid_number (sträng)
Standard: uidNumber
ldap_user_gid_number (sträng)
Standard: gidNumber
ldap_user_primary_group (sträng)
Standard: ej satt (LDAP), primaryGroupID (AD)
ldap_user_gecos (sträng)
Standard: gecos
ldap_user_home_directory (sträng)
Standard: homeDirectory
ldap_user_shell (sträng)
Standard: loginShell
ldap_user_uuid (sträng)
Standard: inte satt i det allmänna fallet, objectGUID för AD och ipaUniqueID för IPA
ldap_user_objectsid (sträng)
Standard: objectSid för Active Directory, inte satt för andra servrar.
ldap_user_modify_timestamp (sträng)
Standard: modifyTimestamp
ldap_user_shadow_last_change (sträng)
Standard: shadowLastChange
ldap_user_shadow_min (sträng)
Standard: shadowMin
ldap_user_shadow_max (sträng)
Standard: shadowMax
ldap_user_shadow_warning (sträng)
Standard: shadowWarning
ldap_user_shadow_inactive (sträng)
Standard: shadowInactive
ldap_user_shadow_expire (sträng)
Standard: shadowExpire
ldap_user_krb_last_pwd_change (sträng)
Standard: krbLastPwdChange
ldap_user_krb_password_expiration (sträng)
Standard: krbPasswordExpiration
ldap_user_ad_account_expires (sträng)
Standard: accountExpires
ldap_user_ad_user_account_control (sträng)
Standard: userAccountControl
ldap_ns_account_lock (sträng)
Standard: nsAccountLock
ldap_user_nds_login_disabled (sträng)
Standard: loginDisabled
ldap_user_nds_login_expiration_time (sträng)
Standard: loginDisabled
ldap_user_nds_login_allowed_time_map (sträng)
Standard: loginAllowedTimeMap
ldap_user_principal (sträng)
Standard: krbPrincipalName
ldap_user_extra_attrs (sträng)
Listan kan antingen innehålla endast LDAP-attributnamn, eller kolonseparerade tupler av SSSD-cacheattribut och LDAP-attributnamn. Ifall endast LDAP-attributnamn anges sparas attributet i cachen ordagrant. Att använda ett anpassat SSSD-attributnamn kan vara nödvändigt i miljöer som konfigurerar flera SSSD-domäner med olika LDAP-scheman.
Observera att flera attributnamn är reserverade av SSSD, speciellt attributet “name”. SSSD rapporterar ett fel om något av de reserverade attributnamnen används som ett extra attributnamn.
Exempel:
ldap_user_extra_attrs = telephoneNumber
Spara attributet “telephoneNumber” från LDAP som “telephoneNumber” i cachen.
ldap_user_extra_attrs = phone:telephoneNumber
Spara attributet “telephoneNumber” från LDAP som “phone” i cachen.
Standard: inte satt
ldap_user_ssh_public_key (sträng)
Standard: sshPublicKey
ldap_force_upper_case_realm (boolean)
Standard: false
ldap_enumeration_refresh_timeout (heltal)
Standard: 300
ldap_purge_cache_timeout (heltal)
Att sätta detta alternativ till noll kommer avaktivera rensningsoperationen för cachen. Observera att om uppräkning är aktiverat krävs rensningsjobbet för att upptäcka poster som tas bort från servern och inte kan avaktiveras. Som standard kör rensningsjobbet var 3:e timma när uppräkning är aktiverat.
Standard: 0 (avaktiverat)
ldap_user_fullname (sträng)
Standard: cn
ldap_user_member_of (sträng)
Standard: memberOf
ldap_user_authorized_service (sträng)
Ett explicit nekande (!svc) avgörs först. Därefter söker SSSD efter explicit tillåtelse (svc) och slutligen efter allow_all (*).
Observera att konfigurationsalternativet ldap_access_order måste innehållla “authorized_service” för att alternativet ldap_user_authorized_service skall fungera.
Standard: authorizedService
ldap_user_authorized_host (sträng)
Ett explicit nekande (!host) avgörs först. Därefter söker SSSD efter explicit tillåtelse (host) och slutligen efter allow_all (*).
Observera att konfigurationsalternativet ldap_access_order måste innehållla “host” för att alternativet ldap_user_authorized_host skall fungera.
Standard: host
ldap_user_authorized_rhost (sträng)
Ett explicit nekande (!rhost) avgörs först. Därefter söker SSSD efter explicit tillåtelse (rhost) och slutligen efter allow_all (*).
Observera att konfigurationsalternativet ldap_access_order måste innehållla “rhost” för att alternativet ldap_user_authorized_rhost skall fungera.
Standard: rhost
ldap_user_certificate (sträng)
Standard: userCertificate;binary
ldap_user_email (sträng)
Observera: om en e-postadress för användaren står i konflikt med en e-postadress eller fullt kvalificerat namn för en annan användare, då kommer SSSD inte kunna serva dessa användare ordentligt. Om flera användare av något skäl behöver dela samma e-postadress, sätt då detta attributnamn till ett som inte finns för att avaktivera uppslagning/inloggning av användare via e-post.
Standard: mail
ldap_group_object_class (sträng)
Standard: posixGroup
ldap_group_name (sträng)
Standard: cn (rfc2307, rfc2307bis och IPA), sAMAccountName (AD)
ldap_group_gid_number (sträng)
Standard: gidNumber
ldap_group_member (sträng)
Standard: memberuid (rfc2307) / member (rfc2307bis)
ldap_group_uuid (sträng)
Standard: inte satt i det allmänna fallet, objectGUID för AD och ipaUniqueID för IPA
ldap_group_objectsid (sträng)
Standard: objectSid för Active Directory, inte satt för andra servrar.
ldap_group_modify_timestamp (sträng)
Standard: modifyTimestamp
ldap_group_type (heltal)
Detta attribut används för närvarande bara av AD-leverantören för att avgöra om en domänlokal grupp och behöver filtreras bort för betrodda domäner.
Standard: groupType i AD-leverantören, inte satt annars
ldap_group_external_member (sträng)
Standard: ipaExternalMember i IPA-leverantören, inte satt annars
ldap_group_nesting_level (heltal)
Obs: detta alternativ anger den garanterade nivån av nästade grupper som skall bearbetas för en godtycklig uppslagning. Dock kan nästade grupper utöver denna gräns returneras om tidigare uppslagningar redan har slagit upp de djupare nästningsnivåerna. Följande uppslagningar för andra grupper kan också utöka resultatmängden för den ursprungliga uppslagningen om den slås upp igen.
Om ldap_group_nesting_level sätts till 0 bearbetas inga nästade grupper alls. Dock krävs det dessutom att användningen av Token-Groups avaktiveras vid anslutning till Active-Directory Server 2008 och senare vid användning av “id_provider=ad” genom att sätta ldap_use_togengroups till false för att begränsa gruppnästning.
Standard: 2
ldap_groups_use_matching_rule_in_chain
In most common cases, it is best to leave this option disabled. It generally only provides a performance increase on very complex nestings.
If this option is enabled, SSSD will use it if it detects that the server supports it during initial connection. So "True" here essentially means "auto-detect".
Note: This feature is currently known to work only with Active Directory 2008 R1 and later. See MSDN(TM) documentation[1] for more details.
Default: False
ldap_initgroups_use_matching_rule_in_chain
If this option is enabled, SSSD will use it if it detects that the server supports it during initial connection. So "True" here essentially means "auto-detect".
Note: This feature is currently known to work only with Active Directory 2008 R1 and later. See MSDN(TM) documentation[1] for more details.
Default: False
ldap_use_tokengroups
Standard: true för AD och IPA annars false.
ldap_netgroup_object_class (sträng)
I IPA-leverantören skall ipa_netgroup_object_class användas istället.
Standard: nisNetgroup
ldap_netgroup_name (sträng)
I IPA-leverantören skall ipa_netgroup_name användas istället.
Standard: cn
ldap_netgroup_member (sträng)
I IPA-leverantören skall ipa_netgroup_member användas istället.
Standard: memberNisNetgroup
ldap_netgroup_triple (sträng)
Detta alternativ är inte tillgängligt i IPA-leverantören.
Standard: nisNetgroupTriple
ldap_netgroup_modify_timestamp (sträng)
Detta alternativ är inte tillgängligt i IPA-leverantören.
Standard: modifyTimestamp
ldap_host_object_class (sträng)
Standard: ipService
ldap_host_name (sträng)
Standard: cn
ldap_host_fqdn (sträng)
Standard: fqdn
ldap_host_serverhostname (sträng)
Standard: serverHostname
ldap_host_member_of (sträng)
Standard: memberOf
ldap_host_search_base (sträng)
Se “ldap_search_base” för information om konfiguration av multipla sökbaser.
Standard: värdet på ldap_search_base
ldap_host_ssh_public_key (sträng)
Standard: sshPublicKey
ldap_host_uuid (sträng)
Standard: inte satt
ldap_service_object_class (sträng)
Standard: ipService
ldap_service_name (sträng)
Standard: cn
ldap_service_port (sträng)
Standard: ipServicePort
ldap_service_proto (sträng)
Standard: ipServiceProtocol
ldap_service_search_base (sträng)
syntax:
search_base[?scope?[filter][?search_base?scope?[filter]]*]
The scope can be one of "base", "onelevel" or "subtree". The scope functions as specified in section 4.5.1.2 of http://tools.ietf.org/html/rfc4511
Filtret måste vara ett korrekt LDAP-sökfilter som specificerat i http://www.ietf.org/rfc/rfc2254.txt
For examples of this syntax, please refer to the “ldap_search_base” examples section.
Standard: värdet på ldap_search_base
Please note that specifying scope or filter is not supported for searches against an Active Directory Server that might yield a large number of results and trigger the Range Retrieval extension in the response.
ldap_search_timeout (heltal)
Obs: detta alternativ kan komma att ändras i framtida versioner av SSSD. Det kommer sannolikt ersättas vid någon tidpunkt med en serie tidsgränser för specifika uppslagningstyper.
Standard: 6
ldap_enumeration_search_timeout (heltal)
Standard: 60
ldap_network_timeout (heltal)
Standard: 6
ldap_opt_timeout (heltal)
Standard: 6
ldap_connection_expire_timeout (heltal)
Standard: 900 (15 minuter)
ldap_page_size (heltal)
Standard: 1000
ldap_disable_paging (boolean)
Exempel: OpenLDAP-servrar med flödesstyrningsmodulen installerad på servern men inte aktiverad kommer rapportera det i RootDSE:n men inte kunna använda den.
Exempel: 389 DS har ett fel där den endast kan stödja en flödesstyrning åt gången på en enskild förbindelse. På aktiva klienter kan detta resultera i att några begäranden nekas.
Default: False
ldap_disable_range_retrieval (boolean)
Active Directory begränsar antalet medlemmar som kan hämtas i en enskild uppslagning med policyn MaxValRange (vilket som standard är 1500 medlemmar). Om en grupp innehåller fler medlemmar skulle svaret innehålla en AD-specifik intervallutökning. Detta alternativ avaktiverar tolkning av intervallutökningar, därför kommer stora grupper förefalla inte ha några medlemmar.
Default: False
ldap_sasl_minssf (heltal)
Standard: använd systemstandard (vanligen angivet i ldap.conf)
ldap_sasl_maxssf (integer)
Standard: använd systemstandard (vanligen angivet i ldap.conf)
ldap_deref_threshold (heltal)
Du kan slå av derefereringsuppslagningar helt genom att sätta värdet till 0. Observera att det finns några kodvägar i SSSD, som IPA HBAC-leverantören, som endast är implementerade med derefereringsanropet, så att även med dereferens uttryckligen avaktiverat kommer dessa delar åndå använda dereferenser om servern stödjer det och annonserar derefereringsstyrning i rootDSE-objektet.
En derefereringsuppslagning är ett sätt att hämta alla gruppmedlemmar i ett enda LDAP-anrop. Olika LDAP-servrar kan implementera olika derefereringsmetoder. De servrar som stödjs för närvarande är 389(RHDS, OpenLDAP och Active Directory.
Obs: om någon av sökbaserna anger ett sökfilter, då kommer prestandaförbättringen med derefereringsuppslagningar avaktiveras oavsett denna inställning.
Standard: 10
ldap_tls_reqcert (sträng)
never = Klienten kommer inte begära eller kontrollera några servercertifikat.
allow = Servercertifikatet begärs. Om inget certifikat tillhandahålls fortsätter sessionen normalt. Om ett felaktigt certifikat tillhandahålls kommer det ignoreras och sessionen fortsätta normalt.
try = Servercertifikatet begärs. Om inget certifikat tillhandahålls fortsätter sessionen normalt. Om ett felaktigt certifikat tillhandahålls avslutas sessionen omedelbart.
demand = Servercertifikatet begärs. Om inget certifikat tillhandahålls eller ett felaktigt certifikat tillhandahålls avslutas sessionen omedelbart.
hard = Samma som “demand”
Standard: hard
ldap_tls_cacert (sträng)
Standard: använd standardvärden för OpenLDAP, typiskt i /etc/openldap/ldap.conf
ldap_tls_cacertdir (sträng)
Standard: använd standardvärden för OpenLDAP, typiskt i /etc/openldap/ldap.conf
ldap_tls_cert (sträng)
Standard: inte satt
ldap_tls_key (sträng)
Standard: inte satt
ldap_tls_cipher_suite (sträng)
Standard: använd standardvärden för OpenLDAP, typiskt i /etc/openldap/ldap.conf
ldap_id_use_start_tls (boolean)
Standard: false
ldap_id_mapping (boolean)
För närvarande stödjer denna funktion endast Active Direcotory objectSID
Standard: false
ldap_min_id, ldap_max_id (heltal)
Standard: inte satt (båda alternativen är satta till 0)
ldap_sasl_mech (sträng)
Om bakänden stödjer underdomäner ärvs automatiskt värdet av ldap_sasl_mech till underdomänerna. Om ett annat värde behövs för en underdomän kan det skrivas över genom att sätta ldap_sasl_mech för denna underdomän explicit. Se avsnittet SEKTIONEN BETRODDA DOMÄNER i sssd.conf(5) för detaljer.
Standard: inte satt
ldap_sasl_authid (sträng)
värdnamn@RIKE netbiosnamn$@RIKE host/värdnamn@RIKE *$@RIKE host/*@RIKE host/*
Om ingen av dem kan hittas returneras den första huvudmannen i keytab.
Standard: host/värdnamn@RIKE
ldap_sasl_realm (sträng)
Standard: värdet på krb5_realm.
ldap_sasl_canonicalize (boolean)
Standard: false;
ldap_krb5_keytab (sträng)
Standard: Systemets keytab, normalt /etc/krb5.keytab
ldap_krb5_init_creds (boolean)
Standard: true
ldap_krb5_ticket_lifetime (heltal)
Standard: 86400 (24 timmar)
krb5_server, krb5_backup_server (sträng)
När tjänsteupptäckt används för KDC eller kpasswd-servrar söker SSSD först efter DNS-poster som anger _udp som protokoll och provar sedan _tcp om inget hittas.
Dettas alternativ hade namnet “krb5_kdcip” i tidigare utgåvor av SSSD. Medan det äldre namnet känns igen tills vidare rekommenderas användare att migrera sina konfigurationsfiler till att använda “krb5_server” istället.
krb5_realm (sträng)
Standard: Systemstandard, se /etc/krb5.conf
krb5_canonicalize (boolean)
Standard: false
krb5_use_kdcinfo (boolean)
Se manualsidan sssd_krb5_locator_plugin(8) för mer information om lokaliseringsinsticksmodulen.
Standard: true
ldap_pwd_policy (sträng)
none – Ingen utvärdering på klientsidan. Detta alternativ kan inte avaktivera lösenordspolicyer på serversidan.
shadow – Använd attribut i stilen shadow(5) för att utvärdera om lösenordet har gått ut.
mit_kerberos – Använd attributen som används av MIT Kerberos för att avgöra om lösenordet har gått ut. Använd chpass_provider=krb5 för att uppdatera dessa attribut när läsenordet ändras.
Standard: none
Obs: om en lösenordspolicy konfigureras på serversidan kommer den alltid gå före framför policyn som sätts med detta alternativ.
ldap_referrals (boolean)
Observera att sssd endast stödjer uppföljning av referenser när den är kompilerad med OpenLDAP version 2.4.13 eller senare.
Att följa upp referenser kan orsaka en prestandaförlust i miljöer som använder dem mycket, ett notabelt exempel är Microsoft Active Directory. Om din uppsättning inte faktiskt behöver använda referenser kan att sätta detta alternativ till falskt medföra en märkbar prestandaförbättring.
Standard: true
ldap_dns_service_name (sträng)
Standard: ldap
ldap_chpass_dns_service_name (sträng)
Standard: inte satt, d.v.s. tjänsteupptäckt är avaktiverat
ldap_chpass_update_last_change (boolean)
Default: False
ldap_access_filter (sträng)
Exempel:
access_provider = ldap ldap_access_filter = (employeeType=admin)
Detta exempel betyder att åtkomst till denna värd är begränsad till användare vars attribut employeeType är satt till ”admin”.
Frånkopplad cachning för denna funktion är begränsad till att avgöra huruvida användarens senaste uppkopplade inloggning tilläts åtkomsträttigheter. Om de tilläts vid senaste inloggningen kommmer de fortsätta ges åtkomst under frånkoppling, och vice versa.
Standard: Empty
ldap_account_expire_policy (sträng)
Observera att det alltid är rekommenderat att använda åtkomstkontroll på serversidan, d.v.s. LDAP-servern skall neka bindningsbegäran med en passande felkod även om lösenordet är korrekt.
Följande värden är tillåtna:
shadow: använd värdet på ldap_user_shadow_expire för att avgöra om kontot har gått ut.
ad: använd värdet på 32-bitarsfältet ldap_user_ad_user_account_control och tillåt åtkomst om den andra biten är satt eller inte. Om attributet saknas tillåts åtkomst. Utgångstiden för kontot kontrolleras också.
rhds, ipa, 389ds: använd värdet på ldap_ns_account_lock för att avgöra om åtkomst tillåts eller inte.
nds: värdena på ldap_user_nds_login_allowed_time_map, ldap_user_nds_login_disabled och ldap_user_nds_login_expiration_time används för att avgöra om åtkomst tillåts. Om båda attributen saknas tillåts åtkomst. This is an experimental feature, please use https://pagure.io/SSSD/sssd/ to report any issues.
Observera att konfigurationsalternativet ldap_access_order måste innehålla “expire” för att alternativet ldap_account_expire_policy skall fungera.
Standard: Empty
ldap_access_order (sträng)
filter: använd ldap_access_filter
lockout: använd kontolåsning. Om satt nekar detta alternativ åtkomst ifall ldap-attributet ”pwdAccountLockedTime” finns och har värdet ”000001010000Z”. Se alternativet ldap_pwdlockout_dn. Observera att ”access_provider = ldap” måste vara satt för att denna funktion skall fungera.
Observera att detta alternativ ersätts av alternativet “ppolicy” och kan komma att tas bort i en framtida utgåva.
ppolicy: använd kontolåsning. Om satt nekar detta alternativ åtkomst ifall ldap-attributet ”pwdAccountLockedTime” finns och har värdet ”000001010000Z” eller representerar en tidpunkt i det förgångna. Värdet på attributet ”pwdAccountLockedTime” måste sluta med ”Z”, som markerar tidszonen UTC. Andra tidszoner stödjs för närvarande inte och kommer resultera i ”access-denied” när användare försöker logga in. Se alternativet ldap_pwdlockout_dn. Observera att ”access_provider = ldap” måste vara satt för att denna funktion skall fungera.
expire: använd ldap_account_expire_policy
pwd_expire_policy_reject, pwd_expire_policy_warn, pwd_expire_policy_renew: Dessa alternativ är användbara om användare vill bli varnade att lösenordet är på gång att gå ut och autentisering är baserat på användning av en annan metod än lösenord – till exempel SSH-nycklar.
Skillnadem mellan dessa alternativ är åtgärden som vidtas om användarens lösenord gått ut: pwd_expire_policy_reject – användaren nekas att logga in, pwd_expire_policy_warn – användaren kan fortfarande logga in, pwd_expire_policy_renew – användaren ombeds ändra sitt lösenord omedelbart.
Observera att om användarlösenordet har gått ut ges inget särskilt meddelande av SSSD.
Observera att ”access_provider = ldap” måste vara satt för att denna funktion skall fungera. ”ldap_pwd_policy” måste också vara satt till en lämplig lösenordspolicy.
authorized_service: använd attrobitet authorizedService för att avgöra åtkomst
host: använd attributet host för att avgöra åtkomst
rhost: använd attrobitet rhost för att avgöra huruvida fjärrvärdar kan få åtkomst
Observera, rhost-fältet i pam sätts av programmet, det är bättre att kontrollera vad programmet skickar till pam, före detta alternativ för åtkomstkontroll aktiveras
Standard: filter
Observera att det är ett konfigurationsfel om ett värde används mer än en gång.
ldap_pwdlockout_dn (sträng)
Exempel: cn=ppolicy,ou=policies,dc=exempel,dc=se
Standard: cn=ppolicy,ou=policies,$ldap_search_base
ldap_deref (sträng)
never: Alias är aldrig derefererade.
searching: Alias derefereras i underordnade till basobjektet, men inte vid lokalisering basobjektet för sökningen.
finding: Alias derefereras endast vid lokalisering av basobjektet för sökningen.
always: Alias derefereras både i sökning och i lokalisering av basobjektet för sökningen.
Standard: Tomt (detta hanteras som never av LDAP-klientbiblioteken)
ldap_rfc2307_fallback_to_local_users (boolean)
I en del miljöer där schemat RFC2307 används görs lokala användare till medlemmar i LDAP-grupper genom att lägga till deras namn till attributet memberUid. Den interna konsistensen i domänen bryts när detta görs, så SSSD skulle normalt ta bort de ”saknade” användarna från de cachade gruppmedlemskapen så fort nsswitch försöker hämta information om användaren via anrop av getpw*() eller initgroups().
Detta alternativ faller tillbaka på att kontrollera om lokala användare är refererade, och cachar dem så att senare anrop av initgroups() kommer utöka de lokala användarna med de extra LDAP-grupperna.
Standard: false
wildcard_limit (heltal)
För närvarande stödjer endast respondenten InfoPipe jockeruppslagningar.
Standard: 1000 (ofta storleken på en sida)
SUDOALTERNATIV¶
De detaljerade instruktionerna för att konfigurera sudo-leverantören finns i manualsidan sssd-sudo(5).
ldap_sudorule_object_class (sträng)
Standard: sudoRole
ldap_sudorule_name (sträng)
Standard: cn
ldap_sudorule_command (sträng)
Standard: sudoCommand
ldap_sudorule_host (sträng)
Standard: sudoHost
ldap_sudorule_user (sträng)
Standard: sudoUser
ldap_sudorule_option (sträng)
Standard: sudoOption
ldap_sudorule_runasuser (sträng)
Standard: sudoRunAsUser
ldap_sudorule_runasgroup (sträng)
Standard: sudoRunAsGroup
ldap_sudorule_notbefore (sträng)
Standard: sudoNotBefore
ldap_sudorule_notafter (sträng)
Standard: sudoNotAfter
ldap_sudorule_order (sträng)
Standard: sudoOrder
ldap_sudo_full_refresh_interval (heltal)
Värdet måste vara större än ldap_sudo_smart_refresh_interval
Standard: 21600 (6 timmar)
ldap_sudo_smart_refresh_interval (heltal)
Om USN-attribut inte stödjs av servern används attributet modifyTimestamp istället.
Note: the highest USN value can be updated by three tasks: 1) By sudo full and smart refresh (if updated rules are found), 2) by enumeration of users and groups (if enabled and updated users or groups are found) and 3) by reconnecting to the server (by default every 15 minutes, see ldap_connection_expire_timeout).
Standard: 900 (15 minuter)
ldap_sudo_use_host_filter (boolean)
Standard: true
ldap_sudo_hostnames (sträng)
Om detta alternativ är tomt kommer SSSD försöka upptäcka värdnamnet och det fullständigt kvalificerade domännamnet automatiskt.
Om ldap_sudo_use_host_filter är false har detta alternativ ingen effekt.
Standard: inte angivet
ldap_sudo_ip (sträng)
Om detta alternativ är tomt kommer SSSD försöka upptäcka adresser automatiskt.
Om ldap_sudo_use_host_filter är false har detta alternativ ingen effekt.
Standard: inte angivet
ldap_sudo_include_netgroups (boolean)
Om ldap_sudo_use_host_filter är false har detta alternativ ingen effekt.
Standard: true
ldap_sudo_include_regexp (boolean)
Om ldap_sudo_use_host_filter är false har detta alternativ ingen effekt.
Standard: true
Denna manualsida beskriver endast attributnamnsöversättningar. För detaljerade beskrivningar av semantiken hos sudo-relaterade attribut, se sudoers.ldap(5)
AUTOFSALTERNATIV¶
Några av standardvärdena för parametrar nedan är beroende på LDAP-schemat.
ldap_autofs_map_master_name (sträng)
Standard: auto.master
ldap_autofs_map_object_class (sträng)
Standard: nisMap (rfc2307, autofs_provider=ad), annars automountMap
ldap_autofs_map_name (sträng)
Standard: nisMapName (rfc2307, autofs_provider=ad), annars automountMapName
ldap_autofs_entry_object_class (sträng)
Standard: nisObject (rfc2307, autofs_provider=ad), annars automount
ldap_autofs_entry_key (sträng)
Standard: cn (rfc2307, autofs_provider=ad), annars automountKey
ldap_autofs_entry_value (sträng)
Standard: nisMapEntry (rfc2307, autofs_provider=ad), annars automountInformation
Please note that the automounter only reads the master map on startup, so if any autofs-related changes are made to the sssd.conf, you typically also need to restart the automounter daemon after restarting the SSSD.
AVANCERADE ALTERNATIV¶
Dessa alternativ stödjs av LDAP-domäner, men de skall användas med försiktighet. Inkludera dem endast i din konfiguration om du vet vad du gör.
ldap_netgroup_search_base (sträng)
syntax:
search_base[?scope?[filter][?search_base?scope?[filter]]*]
The scope can be one of "base", "onelevel" or "subtree". The scope functions as specified in section 4.5.1.2 of http://tools.ietf.org/html/rfc4511
Filtret måste vara ett korrekt LDAP-sökfilter som specificerat i http://www.ietf.org/rfc/rfc2254.txt
For examples of this syntax, please refer to the “ldap_search_base” examples section.
Standard: värdet på ldap_search_base
Please note that specifying scope or filter is not supported for searches against an Active Directory Server that might yield a large number of results and trigger the Range Retrieval extension in the response.
ldap_user_search_base (sträng)
syntax:
search_base[?scope?[filter][?search_base?scope?[filter]]*]
The scope can be one of "base", "onelevel" or "subtree". The scope functions as specified in section 4.5.1.2 of http://tools.ietf.org/html/rfc4511
Filtret måste vara ett korrekt LDAP-sökfilter som specificerat i http://www.ietf.org/rfc/rfc2254.txt
For examples of this syntax, please refer to the “ldap_search_base” examples section.
Standard: värdet på ldap_search_base
Please note that specifying scope or filter is not supported for searches against an Active Directory Server that might yield a large number of results and trigger the Range Retrieval extension in the response.
ldap_group_search_base (sträng)
syntax:
search_base[?scope?[filter][?search_base?scope?[filter]]*]
The scope can be one of "base", "onelevel" or "subtree". The scope functions as specified in section 4.5.1.2 of http://tools.ietf.org/html/rfc4511
Filtret måste vara ett korrekt LDAP-sökfilter som specificerat i http://www.ietf.org/rfc/rfc2254.txt
For examples of this syntax, please refer to the “ldap_search_base” examples section.
Standard: värdet på ldap_search_base
Please note that specifying scope or filter is not supported for searches against an Active Directory Server that might yield a large number of results and trigger the Range Retrieval extension in the response.
Note
Om alternativet “ldap_use_tokengroups” är aktiverat kommer sökningarna i Active Directory inte vara begränsade och returnera alla gruppmedlemskap, även utan någon GID-översättning. Det rekommenderas att avaktivera denna funktion om gruppnamn inte visas korrekt.
ldap_sudo_search_base (sträng)
syntax:
search_base[?scope?[filter][?search_base?scope?[filter]]*]
The scope can be one of "base", "onelevel" or "subtree". The scope functions as specified in section 4.5.1.2 of http://tools.ietf.org/html/rfc4511
Filtret måste vara ett korrekt LDAP-sökfilter som specificerat i http://www.ietf.org/rfc/rfc2254.txt
For examples of this syntax, please refer to the “ldap_search_base” examples section.
Standard: värdet på ldap_search_base
Please note that specifying scope or filter is not supported for searches against an Active Directory Server that might yield a large number of results and trigger the Range Retrieval extension in the response.
ldap_autofs_search_base (sträng)
syntax:
search_base[?scope?[filter][?search_base?scope?[filter]]*]
The scope can be one of "base", "onelevel" or "subtree". The scope functions as specified in section 4.5.1.2 of http://tools.ietf.org/html/rfc4511
Filtret måste vara ett korrekt LDAP-sökfilter som specificerat i http://www.ietf.org/rfc/rfc2254.txt
For examples of this syntax, please refer to the “ldap_search_base” examples section.
Standard: värdet på ldap_search_base
Please note that specifying scope or filter is not supported for searches against an Active Directory Server that might yield a large number of results and trigger the Range Retrieval extension in the response.
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
dns_resolver_timeout
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:
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)
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)
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)
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)
Standard: inte satt
ldap_idmap_default_domain (string)
Standard: inte satt
ldap_idmap_autorid_compat (boolean)
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)
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
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 LDAP är satt till en av domänerna i avsnittet [domains].
[domain/LDAP] id_provider = ldap auth_provider = ldap ldap_uri = ldap://ldap.mindomän.se ldap_search_base = dc=mindomän,dc=se ldap_tls_reqcert = demand cache_credentials = true
LDAP-ÅTKOMSTFILTEREXEMPEL¶
Följande exempel antar att SSSD är korrekt konfigurerat och att ldap_access_order=lockout används.
[domain/LDAP] id_provider = ldap auth_provider = ldap access_provider = ldap ldap_access_order = lockout ldap_pwdlockout_dn = cn=ppolicy,ou=policies,dc=mindomän,dc=se ldap_uri = ldap://ldap.mindomän.se ldap_search_base = dc=mindomän,dc=se ldap_tls_reqcert = demand cache_credentials = true
NOTER¶
Beskrivningarna av en del konfigurationsalternativ i denna manualsida är baserade på manualsidan ldap.conf(5) från distributionen OpenLDAP 2.4.
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.
- MSDN(TM) documentation
01/23/2024 | SSSD |