歡迎您光臨本站 註冊首頁

如何使用winbind獲取ad用戶詳細信息

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

如何使用winbind獲取ad用戶詳細信息

我已經使用了網上的教程將samba添加到windows的域裡面,也用wbinfo -u 返回了相應域中的用戶信息
但是我更想知道能否獲取用戶的詳細信息,例如電話信息,請問有人做過這東西嗎?
我已經使用過了wbinfo -i user來看了,但是返回來的信息沒有顯示相關信息
《解決方案》

我也正在尋找方法。。。。。。
《解決方案》

A、        安裝Windows Server 2008 中文版企業版;


B、        安裝Active Directory 域伺服器(使用Dcpromo.exe 命令進行安裝和配置);

1、主機名稱:dc

2、IP地址:192.168.1.254

3、域名:nseasy.net

4、DNS伺服器:dc.nseasy.net


C、        配置DNS伺服器、組策略和建立域用戶帳戶;


D、        安裝Centos 5.4中文版;

1、主機名稱:smb.nseasy.net

2、IP地址:192.168.1.253


E、        配置NSS伺服器控制帳號的驗證,主要修改文件nsswitch.conf(存放路徑:/etc/nsswitch.conf);

    passwd:       files     winbind
shadow:       files     winbind
group:         files     winbind
hosts:         files     dns       winbind
bootparams: nisplus files
ethers:         db   files
netmasks:      files
networks:      files dns
protocols:      db   files
rpc:            files
services:       files
netgroup:      files
publickey:     nisplus
automount:    files
aliases:        files     nisplus








F、        配置kerberos伺服器,主要修改文件krb5.conf(存放路徑:/etc/krb5.conf);

   
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log


default_realm = NSEASY.NET
dns_lookup_realm = false
dns_lookup_kdc = false
ticket_lifetime = 24h
forwardable = yes


NSEASY.NET = {
   kdc = dc.nseasy.net:88
   admin_server = dc.nseasy.net:749
   default_domain = nseasy.net
}


.nseasy.net = NSEASY.NET
nseasy.net = NSEASY.NET


profile = /var/kerberos/krb5kdc/kdc.conf


pam = {
   debug = false
   ticket_lifetime = 36000
   renew_lifetime = 36000
   forwardable = true
   krb4_convert = false
}

修改 /var/kerberos/krb5kdc/kdc.conf  


acl_file = /var/Kerberos/krb5kdc/kadm5.acl
dict_file = /usr/share/dict/word
admin_keytab = /var/Kerberos/krb5kdc/kadm5.keytab
v4_mode = nopreauth


NSEASY.NET = {
Master_key_type = des-cdc-crc
Supported_enctypes = arcfour-hmac:normal arcfour-hma
G、        配置Samba伺服器,主要修改文件smb.conf(存放路徑:/etc/samba/smb.conf);

   
  workgroup = NSEASY
  realm = NSEASY.NET
  netbios name = smb
  password server = dc.nseasy.net
  encrypt passwords = yes
  security = ads
server string = Samba Server %v
  idmap uid = 10000-20000
  idmap gid = 10000-20000
  winbind separator = /
  winbind enum users = Yes
  winbind enum groups = Yes
  winbind use default domain = Yes
winbind nested groups = Yes
  template homedir = /home/%U
template shell = /bin/bash
log file = /var/log/samba/%m.log
  max log size = 50
os level = 33
  socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
mangling method = hash2
display charset = cp936
  dos charset = cp936
  unix charset = cp936
client use spnego = yes
  domain master = no
  dns proxy = no
  preferred master = no
  client ntlmv2 auth = yes
     hosts allow = 192.168.1. 127.


  comment = Home Directories
  path = /home/%U
  writable = yes
  browseable = no
valid users = %U
root preexec = /home/mkhome.sh %U %G

1、啟動Samba伺服器命令:service smb start(重生啟動:service smb restart)

2、測試Samba伺服器的文件配置情況使用testparm




3、配置system-auth文件,主要修改文件system-auth(存放路徑:/etc/pam.d/system-auth);
   
    auth        required        pam_env.so
auth        sufficient       pam_unix.so likeauth nullok
auth        sufficient       pam_winbind.so use_first_pass
auth        required        pam_deny.so

account    required        pam_unix.so
account    sufficient       pam_succeed_if.so uid < 100 quiet
account    sufficient       pam_winbind.so use_first_pass
account    required        pam_permit.so

password   requisite       pam_cracklib.so retry=3 type=
password   sufficient      pam_unix.so nullok use_authtok md5 shadow
password   sufficient      pam_winbind.so use_first_pass
password   required       pam_deny.so

session     required       pam_winbind.so use_first_pass
session     required       pam_limits.so
session     required       pam_unix.so

4、配置sshd文件,主要修改文件sshd(存放路徑:/etc/pam.d/sshd);

   auth          sufficient      pam_winbind.so
   auth          required       pam_stack.so service=system-auth
   auth          required       pam_nologin.so

   account      sufficient      pam_winbind.so
   account      required       pam_stack.so service=system-auth

   password     required       pam_stack.so service=system-auth

   session       required       pam_stack.so service=system-auth
   session       required       pam_limits.so
   session       required       pam_mkhomedir.so
   session       optional       pam_console.so


H、        完成 NSS伺服器、kerberos伺服器、Samba伺服器配置工作后,重新啟動操作系統;

1、# service smb restart
2、# service winbind restart
3、# reboot






I、        使用下列命令將Samba 加入到 Active Directory 域伺服器,成為域成員伺服器;

1、# kinit administrator@NSEASY.NET(使用kinit命令,初始化administrator域帳號和密碼)

2、# net ads join -U administrator@NSEASY.NET(將Samba加入Active Directory域)

3、# wbinfo -t、# wbinfo -g、# wbinfo -u(使用wbinfo命令測試伺服器連接、域組、域帳戶情況)

4、# getent passwd # getent group(使用getent命令查詢帳號的密碼資料)

5、# net ads info、net getdomainsid(使用net命令進行查詢Active Directory域基本資料和ID號碼)

6、# smbclient -L smb.nseasy.net -U fandy(使用smbclient命令,測試域用戶連接Samba伺服器)

7、# ssh fandy@smb.nseasy.net(使用ssh命令,測試域帳戶連接Samba伺服器)


































1.自動創建用戶目錄

細心的朋友可能發現從開篇一直到現在除了操作方式不一定以外,所做的事情和<<linux加入windows域之完美方案>>沒有太大的區別。嗯,筆者不置可否,估且這麼理解吧。希望有點小細節您注意到了,在smb.conf中,有一句template shell = /sbin/nologin。是的,samba伺服器,我們只希望他提供samba服務,不希望有用戶登陸。在上一篇文章中解決用戶登陸時主目錄不存在的問題,用的是pam_mkhomedir.so這個東東。在文件共享這塊,筆者意外的發現,這個文件,對於通過samba訪問過來的請求不會創建主目錄!這可如何是好?這就是腳本mkhome.sh存在的原因。

新建立mkhome.sh腳本:
#vi /home/mkhome.sh

#!/bin/bash
user=$1
group=$2
home=/home/$1

if [ ! -d $home ] ; then
mkdir -p $home
chown $user $home
chgrp $group $home
chmod 700 $home
edquota -p administrator -u $user
fi


更改文件許可權設置:
# chmod 700 /home/mkhome.sh

這個腳本接受兩個參數,一個是用戶名,一個是組名。然後給這個用戶創建目錄,並分配許可權,然後再給分配一下用戶空間。Ok,回頭看一下smb.conf文件。


        comment = Home Directories
        path = /home/%U                           //共享的目錄
        valid users = rainbird.net/%U               //認證的用戶,前面必須加rainbird.net喲
        read only = No
        browseable = No
root preexec = /root/mkhome.sh %U %G     //執行創建目錄的操作。

這段配置中最帥的就是這個mkhome.sh的存在。因為這個腳本的執行者是root,所以我們腳本的許可權設置700即可。再往下我們將繼續探索它的神奇魔力。寫完這段保存一下,重啟smb:service smb restart。這樣,在一台xp的機器上,用域用戶登陸,然後訪問\\192.168.1.246,是不是看到了一個以你登陸的域用戶名命名的一個文件夾呢?沒錯,就是它!你現在可以試下刪寫文件了。怎麼有問題?有問題就自己檢查一下,為什麼吧

[火星人 ] 如何使用winbind獲取ad用戶詳細信息已經有1020次圍觀

http://coctec.com/docs/service/show-post-19154.html