Linux

目前使用 AD 對 Linux 進行身份驗證的最佳實踐 (2013)

  • July 12, 2013

據我所知,有 3 種(常用)方法可以使用 Active Directory 作為 Linux 主機的身份驗證和授權:

  1. LDAP
  2. Kerberos
  3. 桑巴/Winbind

關於哪種方法是最佳實踐是否有(目前)共識?

我從來沒有完全清楚每種方法的優缺點,但是每個文件/教程都以不同的方式說明,並且沒有多少是過時的,也沒有解釋為什麼他們使用特定的方法。

我現在使用的方法是SSSD。它非常輕鬆,配置文件很乾淨。SSSD 可以在安裝時啟用,也可以通過authconfig命令 UI 執行。我最近將大約 200 台 Linux 伺服器從本地身份驗證轉換為 SSSD,並使用了以下步驟。

這假設一個類似 Red Hat 的系統(RHEL、CentOS、Fedora)……

  1. 下載固態硬碟。

yum install sssd

2)。修改系統的 authconfig 設置。

authconfig –enablesssd –ldapserver=ldap://dc1.mdmarra.local –ldapbasedn=“dc=mdmarra,dc=local” –enablerfc2307bis –enablesssdauth –krb5kdc=dc1.mdmarra.local –krb5realm=MDMARRA .LOCAL –disableforcelegacy –enablelocauthorize –enablemkhomedir –updateall

3)。使用以下內容更新 /etc/sssd/sssd.conf 配置文件內容:

# sssd.conf

[domain/default]

ldap_id_use_start_tls = False
ldap_schema = rfc2307bis
ldap_search_base = dc=mdmarra,dc=local
krb5_realm = MDMARRA.LOCAL
krb5_server = dc1.mdmarra.local
id_provider = ldap
auth_provider = krb5
chpass_provider = krb5
ldap_uri = ldap://dc1.mdmarra.local,ldap://dc2.mdmarra.local
krb5_kpasswd = dc1.mdmarra.local,dc2.mdmarra.local
krb5_kdcip = dc1.mdmarra.local,dc2.mdmarra.local
cache_credentials = True
ldap_tls_cacertdir = /etc/openldap/cacerts
ldap_force_upper_case_realm = True
ldap_user_object_class = person
ldap_group_object_class = group
ldap_user_gecos = displayName
ldap_user_home_directory = unixHomeDirectory
ldap_default_bind_dn = ldapuser@mdmarra.local
ldap_default_authtok_type = password
ldap_default_authtok = fdfXb52Ghk3F

[sssd]
services = nss, pam
config_file_version = 2

domains = default

[nss]
filter_users = root,ldap,named,avahi,haldaemon,dbus,radiusd,news,nscd

[pam]

[sudo]

[autofs]

[ssh]

引用自:https://serverfault.com/questions/522719