1. 程式人生 > 其它 >如何讓Linux機器加入Windows的AD域

如何讓Linux機器加入Windows的AD域

如何讓Linux機器加入Windows的AD域

簡介:

對於帳戶統一管理系統或軟體來說,在 Linux 下你可能知道 NIS、OpenLDAP、samba 或者是 RedHat、IBM 的產品,在 Windows 下當然就是最出名的活動目錄Active Directory(AD)了,這裡就來探討一下如何讓 Linux 的計算機加入 AD 域。

首先,先簡單介紹一下 AD 域。自 Windows 2000 以來,AD 一直是 Windows 的身份驗證和目錄服務,AD 基於 LDAP 實現其功能,其使用 DNS 進行主機名的解析,使用 Kerberos V5 進行使用者身份驗證,使用 LDAP V3 進行統一的帳戶管理。

目標:在 AD 域中,將 Linux 伺服器加入 AD,以使 Domain Admins 使用者組成員可以登入操作 Linux 伺服器,不需要在 Linux 伺服器中單獨建立帳戶。

環境:一臺 Windows Server 2012 R2 作業系統的伺服器,安裝有 AD 並作為域控制器Domain Controller(DC),同時也作為 DNS 伺服器和時間伺服器;一臺 RedHat Enterprise Linux 6.x 的伺服器,請自行配置好網路及 YUM 源。有關 AD 域伺服器的搭建,由於比較簡單,請自行查閱資料完成,這裡不再詳述。

這裡以 Windows 伺服器地址為 192.168.2.122,域名為 contoso.com,主機名為 ad.contoso.com;Linux 伺服器地址為 192.168.2.150,主機名為 lemon20.contoso.com。

1、安裝所需軟體:


  1. #yum-yinstallsambasamba-clientsamba-commonsamba-winbindsamba-winbind-clientskrb5-workstationntpdate

2、設定服務自啟動並啟動服務:


  1. #chkconfigsmbon
  2. #chkconfigwinbindon
  3. #servicesmbstart
  4. #servicewinbindstart

3、修改 /etc/hosts 檔案,新增主機對應記錄:


  1. 127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4
  2. ::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6
  3. 192.168.2.150lemon20.contoso.comlemon20

4、設定 DNS 地址並與 AD 伺服器同步時間:


  1. #echo"nameserver192.168.2.122">>/etc/resolv.conf
  2. #ntpdatead.contoso.com

5、設定 Kerberos 票據(可選):

銷燬已經存在的所有票據:


  1. #kdestroy

檢視當前是否還存在票據:


  1. #klist
  2. klist:Nocredentialscachefound(ticketcacheFILE:/tmp/krb5cc_0)

生成新的票據,注意域名大寫。


  1. #[email protected]
  2. #klist
  3. Ticketcache:FILE:/tmp/krb5cc_0
  4. Defaultprincipal:[email protected]
  5. ValidstartingExpiresServiceprincipal
  6. 08/02/1622:35:2608/03/1608:35:29krbtgt/[email protected]
  7. renewuntil08/09/1622:35:26

6、以命令方式設定 samba 與 Kerberos,並加入 AD 域:


  1. #authconfig--enablewinbind--enablewins--enablewinbindauth--smbsecurityads--smbworkgroup=CONTOSO--smbrealmCONTOSO.COM--smbservers=ad.contoso.com--enablekrb5--krb5realm=CONTOSO.COM--krb5kdc=ad.contoso.com--krb5adminserver=ad.contoso.com--enablekrb5kdcdns--enablekrb5realmdns--enablewinbindoffline--winbindtemplateshell=/bin/bash--winbindjoin=administrator--update--enablelocauthorize--enablemkhomedir--enablewinbindusedefaultdomain

注意命令中的大小寫,此步驟也可以使用 authconfig-tui 完成。

7、增加 sudo 許可權(可選):


  1. #visudo

加入下列設定:


  1. %MYDOMAIN\domain\adminsALL=(ALL)NOPASSWD:ALL

8、確認是否正確加入 AD 域:

檢視 AD 的相關資訊


  1. #netadsinfo

檢視 MYDOMAIN\USERID 的使用者帳戶


  1. #wbinfo-u

補充:

如果啟用 selinux 的話,需要安裝 oddjobmkhomedir 並啟動其服務,這樣才能確保系統對建立的家目錄設定合適的 SELinux 安全上下文。