參考來源 earth

環境:

Linux:
OS:cnetos 6.2 x64
hostname:adlinux
ip:192.168.1.151/24
getway:192.168.1.1
dns:192.168.1.253

AD:
OS:windows 2003 x86
ip:192.168.1.253
Domain:TEST.COM


 

1. 必要程式安裝

>yum install -y samba samba-common samba-winbind krb5-server krb5-workstation ntp

2.確認HOSTNAME 設定

>hostname –f 

結果應該為 adlinux.test.com ,若無法正常查詢請先解決這個問題 , 我的解決方式是直接去修改/etc/hosts , 加入一行

192.168.1.151 adlinux.test.com adlinux

 

3.校正時間 (一定要校正 , 除非你能確認誤差5分鐘內)

>ntpdate 192.168.1.253

4.開始設定AD認證

直接使用 setup tool ,這樣設定比較快 , 若無setup tool 請直接往下找各檔案的設定檔

>setup

請依下例設定,內容請參考環境說明

image

image

image

image

上面這一步做完可以直接 join domian , (但是我從來沒成功過 ,原因我也查不出來,我想應該是DNS 設置上有點問題)不過我還是會做,完成後退出

image

 

5.測試連線(可略過)

$ kinit administrator@TEST.COM(注意大寫),輸入密碼無誤後,跳回提示字元

[Q1:] kinit(v5) : cannot find KDC for requested realm while getting initial credentials
[A1:] 網域名稱沒有大寫

[Q2:] kinit(v5) : clock skew too great while getting initial credentials
[A2:] samba與windows2003/2008系統時間相差不可超過5分鐘

[Q3:] kinit(v5) : preauthentication failed while getting initial credentials
[A3:] 密碼不對

6.join ad , 執行以下命,會要求你輸入密碼 ,若正常加入ad 會出現 joined 訊息,就可以加AD內看這這台PC

>net ads join -U administrator

 

image

7.檢視DOMAIN USER

將sbm , winbind 重啟 ,利用 wbinfo 進行檢視

>service smb restart

>service winbind restart

>wbinfo  -u 

 

8.setup 會影響4個檔案分別為 /etc/samba/smb.conf ,/etc/krb5.conf,/etc/nsswitch.conf,/etc/pam.d/system-auth ,但是只有 smb.conf 需要再修改一下


smb.conf :

 workgroup = RODAN
   password server = 192.168.1.253
   realm = RODAN.COM.TW
   security = ads
   idmap uid = 16777216-33554431
   idmap gid = 16777216-33554431
   template shell = /bin/bash
   winbind use default domain = fase
   winbind offline logon = false

但是我們可能要再加工一下

#這兩行改成 true    
winbind use default domain = true
winbind offline logon = true

#加入 以下
#編碼方式傳遞密碼
        encrypt passwords = yes
#指定winbind是否在系統上建立網域使用者(Users)
        winbind enum users = yes
#指定winbind是否在系統上建立網域群組(Groups)
        winbind enum groups = yes
#設定使用者家目錄,%D指Domain,%U指User
        template homedir = /home/%D/%U


krb5.conf

[realms]
TEST.COM = {
  kdc = 192.168.1.253
  admin_server = 192.168.1.253
  kdc = 192.168.1.253
 }

[domain_realm]
test.com=TEST.COM
.test.com=TEST.COM


nsswitch.conf

#在 passwd,shadow,group 加入 winbind
passwd:     files winbind
shadow:     files winbind
group:      files winbind


/etc/pam.d/system-auth

#系統登入認證加入 krb 及 winbind
auth        sufficient    pam_krb5.so use_first_pass
auth        sufficient    pam_winbind.so use_first_pass

account     [default=bad success=ok user_unknown=ignore] pam_krb5.so
account     [default=bad success=ok user_unknown=ignore] pam_winbind.so

password    sufficient    pam_krb5.so use_authtok
password    sufficient    pam_winbind.so use_authtok


password    sufficient    pam_krb5.so use_authtok
password    sufficient    pam_winbind.so use_authtok


 

8.確認domain 帳號 是否寫入 passwd 檔

>servcie winbind restart
>getent passwd

 

9.建立 domain user 家目錄,帳號太多可利用 awk 來做, 以下為範例

>vi  mkhome.awk

內容如下

#!/bin/awk
BEGIN {
FS=":"
uidmin=16777216
uidmax=33554431
}

{
        if ( $3 >= uidmin && $3 <= uidmax ) {
              print " make directory " $6 " chown " $3 "." $4 " " $6
              system( "mkdir -p " $6 ";chown " $3 "." $4 " " $6 )
        }
}

 

>getent passwd | awk -f mkhome.awk

 

打完收工

arrow
arrow
    文章標籤
    centos ad krb linux join
    全站熱搜

    jason0324 發表在 痞客邦 留言(0) 人氣()