linux加入域中,一般都會想到加入LDAP中,這樣管理起來方便,不過在linux下LDAP配置起來可不是很容易的,在企業辦公環境中一般windows AD域佔據霸主地位,配置方便嘛,針對生產環境的linux叢集機器才會選擇LDAP,不過有時候在辦公環境中也混雜了linux機器,為了規範管理,也是需要把linux機器加入window是 AD中的。
linux加入windows AD中方便操作的有兩種方案(分為centos/ubuntu兩種情況)。都說了是方便操作,那必然是懶人的首選方法了。
1 likewise-open
在debian/ubuntu中使用,可以使用apt安裝,配置方便,但是由於likewise的公司被收購,likewise的相關產品不再是開源產品,更杯具的是網上連以前的源碼包都找不到,還好ubuntu中目前還是可以通過apt安裝的。
2 winbind+samba
在centos上使用,之前下載了一份ubuntu上的likewise的源碼在centos上編譯發現相關底層庫有些小問題,顧在centos上採用winbind+samba方案。
在ubuntu下使用likewise真是十分方便,apt安裝完後,兩條命令就可以把機器加入windows AD中,如下:
複製代碼 代碼如下:
domainjoin-cli join your-domain-name Administrator
lwconfig AssumeDefaultDomain True
所以,本文主要實驗centos加入windows AD的情況
實驗環境:centos6.4
安裝相關依賴包
複製代碼 代碼如下:
yum install krb5-libs krb5-devel pam_krb5 krb5-workstation krb5-auth-dialogyum install samba-winbind samba samba-common samba-client samba-winbind-clients
安裝完相關軟體後,可以使用authconfig-tui命令進行映像化配置,其實映像化配置也就是修改幾個檔案而已:
複製代碼 代碼如下:
nsswitch.conf
#/etc/nsswitch.conf
passwd: files winbind
shadow: files winbind
group: files winbind
以上配置的意思是先通過檔案配置驗證,然後再進行winbind驗證
2 smb.conf
複製代碼 代碼如下:
#/etc/samba/smb.conf 網域名稱一定得大寫
[global]
workgroup = YOUR-DOMIAN
password server = 172.16.14.20
realm = YOUR-DOMIAN
security = ads
idmap config * : range = 16777216-33554431
template shell = /bin/bash
winbind use default domain = true
winbind offline logon = true
template homedir = /home/%U
winbind separator = /
winbind enum users = Yes
winbind enum groups = Yes
切記你的網域名稱一定得大寫
3 krb5.conf
複製代碼 代碼如下:
#/etc/krb5.conf 網域名稱必須得大寫
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = YOUR-DOMIAN
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
[realms]
YOUR-DOMIAN = {
kdc = 172.16.14.20 #AD網域服務器地址
}
[domain_realm]
your-domian = YOUR-DOMIAN
.your-domian = YOUR-DOMIAN
重啟相關服務
複製代碼 代碼如下:
/etc/init.d/smb restart/etc/init.d/winbind restart
現在把機器加入AD域中:
複製代碼 代碼如下:
net ads join -U Administrator
斷行符號後需要輸入AD域的管理員密碼,加入域之後可以通過wbinfo命令進行驗證。
在用域帳號登陸時,在目的機器上因為沒有相關帳號,所以域帳號是沒有家目錄的,需要在域帳號登陸時自動建立相關家目錄
在以下兩個檔案中加入如下內容:session required pam_mkhomedir.so umask=0022 skel=/etc/skel/ silent
複製代碼 代碼如下:
/etc/pam.d/system-auth/etc/pam.d/sshd
這樣在通過ssh登陸時,系統會自動建立域帳號的家目錄。
pam模組在/lib64/security目錄裡面。