Pages

LDAP

OpenLDAP-SambaPDC-Ubuntu-Karmic-9.10

I took some articles from here and here, and trying to fit into ubuntu server Karmic 9.10 – 64bit. If you have trouble reading this tutorial, please use google translate from bahasa Indonesia to English.
Thanks to ubuntu-community and howtoforge.net

Pendahuluan

Artikel ini menjelaskan cara mengatur Windows domain menggunakan Samba dengan OpenLDAP sebagai Domain Controler utama yang menyimpan informasi account Windows. Ini menyediakan otentikasi terpusat untuk Windows pengguna pada jaringan, sehingga menghindari kebutuhan untuk mengelola account pengguna lokal di setiap Windows PC. Ini dapat juga memungkinkan penggunaan profil roaming, di mana pengguna dapat masuk ke setiap Windows PC pada jaringan dan pengaturan pribadi yang sama di setiap sesi.
Dengan menggunakan LDAP sebagai database Samba bukan salah satu alternatif, meskipun, jauh lebih dapat dicapai. Database LDAP dapat juga mengadakan kelas-kelas lain informasi pada masing-masing pengguna yang dapat digunakan untuk sistem otentikasi lainnya, atau untuk informasi umum seperti dalam kasus e-mail dari daftar kontak. Dalam artikel ini, LDAP kelas ‘person’, ‘organizationalPerson’ dan ‘inetOrgPerson’ menyimpan informasi umum tentang pengguna, termasuk alamat e-mail, nomor telepon dan alamat fisik. Informasi ini dapat dimanfaatkan oleh klien e-mail seperti Evolution dan Thunderbird. Kelas LDAP ‘posixAccount’ menyimpan informasi account pengguna Linux. Sama seperti Windows PC, PC Linux dapat dikonfigurasi untuk menggunakan database OpenLDAP sebagai pusat titik otentikasi. Dengan demikian, kita memiliki sebuah server LDAP yang menyediakan otentikasi untuk Windows dan Linux PC. Selain itu, server LDAP dapat berpotensi digunakan untuk mengontrol akses ke sistem Web – silakan lihat artikel sangat membantu OpenLDAPServer.
Sepanjang artikel ini, silahkan ganti dc=masterpop3,dc=local dengan yang sesuai dengan organisasi Anda – misalnya. dc=myorganisation, dc=org. Demikian juga, pilih nama yang cocok untuk domain Anda.
Password root/admin yang digunakan = 12345

System Telah Teruji

Hal ini telah diuji pada Ubuntu Karmic Server 9.10 -64bit, menginstal segalanya dari Ubuntu repositori – yaitu. samba 3.4.0, slapd 2.4.18, smbldap-tools 0.9.4-1. Windows XP SP2 digunakan sebagai klien Windows.

Item Tested:

  • Windows PC dapat bergabung dengan domain
  • Windows domain user dapat masuk ke PC
  • Windows domain user bisa mengubah password mereka, dengan menekan Ctrl-Alt-Delete, dll
  • Drive M: muncul dan akses benar
  • Roaming profil secara otomatis dibuat bila pengguna domain log-off pada akhir sesi pertama mereka
  • Ubuntu server sudah berhasil disiapkan untuk menggunakan LDAP gabungan dan file sebagai mekanisme otentikasi POSIX

Step 1: Install OpenLDAP dan Samba

Install OpenLDAP, Samba dan kroco-kroconya

aptitude install slapd ldap-utils migrationtools db4.7-util
aptitude install samba smbldap-tools smbclient samba-doc libtalloc1 libpam-smbpass

Step 2: Konfigurasi OpenLDAP untuk digunakan dengan Samba

Instal Samba dokumentasi yang berisi skema. ekstrak Samba.schema dan copy ke area sistem yang diperlukan untuk OpenLDAP.

cp /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz /etc/ldap/schema/
gzip -d /etc/ldap/schema/samba.schema.gz

Tentukan password admin LDAP dan menghasilkan kunci hash SSHA untuk itu.

root@masterpop3:~# slappasswd
New password:
Re-enter new password:
 {SSHA}8ocqsGYGCeZI3tzNZUmO92/GjCW6MTa+   ; ini hasil generate slappasswd.

Buat file init.ldif. Nama 4 OUs (Organization Units) Users, Groups, Computer dan Idmap untuk digunakan dengan smbldap-tools.

~# vim  /etc/ldap/init.ldif
 
dn: dc=masterpop3,dc=local
objectClass: dcObject
objectClass: organizationalUnit
dc: masterpop3
ou: masterpop3.local
 
dn: cn=admin,dc=masterpop3,dc=local
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword: {SSHA}8ocqsGYGCeZI3tzNZUmO92/GjCW6MTa+  ##masukkan hasil dari generate slappasswd.
 
dn: ou=Users,dc=masterpop3,dc=local
objectClass: organizationalUnit
ou: Users
 
dn: ou=Groups,dc=masterpop3,dc=local
objectClass: organizationalUnit
ou: Groups
 
dn: ou=Computers,dc=masterpop3,dc=local
objectClass: organizationalUnit
ou: Computers
 
dn: ou=Idmap,dc=masterpop3,dc=local
objectClass: organizationalUnit
ou: Idmap

Membuat file /etc/ldap/slapd.conf untuk domain ini, dan sesuaikan konfigurasinya…

~# vim /etc/ldap/slapd.conf
 
include         /etc/ldap/schema/core.schema
include         /etc/ldap/schema/cosine.schema
include         /etc/ldap/schema/nis.schema
include         /etc/ldap/schema/inetorgperson.schema
include         /etc/ldap/schema/misc.schema
include         /etc/ldap/schema/samba.schema
 
pidfile         /var/run/slapd/slapd.pid
argsfile        /var/run/slapd/slapd.args
loglevel        0
modulepath      /usr/lib/ldap
moduleload      back_bdb
sizelimit       500
tool-threads    1
backend         bdb
database        bdb
 
suffix          "dc=masterpop3,dc=local"                #sesuaikan dengan DN yg anda buat.
rootdn          "cn=admin,dc=masterpop3,dc=local"       #sesuaikan
rootpw          {SSHA}8ocqsGYGCeZI3tzNZUmO92/GjCW6MTa+  #samakan seperti di init.ldif
 
directory       "/var/lib/ldap"
dbconfig set_cachesize 0 2097152 0
dbconfig set_lk_max_objects 1500
dbconfig set_lk_max_locks 1500
dbconfig set_lk_max_lockers 1500
 
index objectClass                       eq
 
lastmod         on
checkpoint      512 30
 
access to attrs=userPassword,shadowLastChange,sambaNTPassword,sambaLMPassword
        by dn="cn=admin,dc=masterpop3,dc=local" write
        by anonymous auth
        by self write
        by * none
access to dn.base="" by * read
access to *
        by dn="cn=admin,dc=masterpop3,dc=local" write
        by * read

Inisialisasi OpenLDAP Database…

~# /etc/init.d/slapd stop
~# rm -rf /var/lib/ldap/*
~# mv /etc/ldap/slapd.d  /etc/ldap/slapd.d.orig
~# mkdir /etc/ldap/slapd.d
 
~# slapadd -v -l init.ldif
     /etc/ldap/slapd.conf: line 109: rootdn is always granted unlimited privileges.
     /etc/ldap/slapd.conf: line 126: rootdn is always granted unlimited privileges.
     added: "dc=masterpop3,dc=local" (00000001)
     added: "cn=admin,dc=masterpop3,dc=local" (00000002)
     added: "ou=Users,dc=masterpop3,dc=local" (00000003)
          :     :     :
~# chown -R openldap:openldap /var/lib/ldap

Selanjutnya update konfigurasi OpenLDAP

~# cd /etc/ldap
 
~# slaptest -f slapd.conf -F slapd.d

Berhasil jika terlihat: config file testing succeeded
Ubah kembali kepemilikan direktory slapd.d

~# chown -R openldap:openldap slapd.d
~# /etc/init.d/slapd start

Konfirmasi semuanya OK dengan Pencarian ..

~# ldapsearch -x -b dc=masterpop3,dc=local -h 127.0.0.1 | less
     dn: dc=masterpop3,dc=local
     objectClass: dcObject
     objectClass: organizationalUnit
     dc: masterpop3
     ou: masterpop3.local
      :   :   :

Step 3: Konfigurasi Samba sebagai Primary Domain Controller (PDC)

Membuat folder samba untuk keperluan share dan logon …

~# mkdir -p /home/samba/{netlogon,profiles,public}
~# chmod 777 /home/samba/{profiles,public}

Membuat/ubah file /etc/samba/smb.conf .. seperti contoh berikut ini

[global]
        workgroup = MASTERPOP3
        netbios name = DC-UBUNTU
        server string = DC SERVER
        ; menjadi sebuah PDC
        domain logons = Yes
        domain master = Yes
        ; menjadi sebuah WINS Server
        wins support = Yes
 
        security = user
        encrypt passwords = Yes
 
        obey pam restrictions = No
        dns proxy = No
        os level = 35
        log file = /var/log/samba/log.%m
        max log size = 1000
        syslog = 0
        panic action = /usr/share/samba/panic-action %d
        pam password change = Yes
 
        unix password sync = No
        ldap passwd sync = yes
 
        passdb backend = ldapsam:ldap://localhost
        ldap suffix = dc=masterpop3,dc=local
        ldap admin dn = cn=admin,dc=masterpop3,dc=local
        ldap machine suffix = ou=Computers
        ldap user suffix = ou=Users
        ldap group suffix = ou=Groups
        ldap idmap suffix = ou=Idmap
        ldap ssl = no
 
        add user script = /usr/sbin/smbldap-useradd -m '%u'
        delete user script = /usr/sbin/smbldap-userdel %u
        add group script = /usr/sbin/smbldap-groupadd -p '%g'
        delete group script = /usr/sbin/smbldap-groupdel '%g'
        add user to group script = /usr/sbin/smbldap-groupmod -m '%u' '%g'
        delete user from group script = /usr/sbin/smbldap-groupmod -x '%u' '%g'
        set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'
        add machine script = /usr/sbin/smbldap-useradd -w '%u'
 
        logon drive = M:
        logon home = \\DC-UBUNTU\%U
        logon path = \\DC-UBUNTU\%U\Profile
        logon script = logon.bat
 
        server signing = auto
        server schannel = Auto
 
[homes]
        comment = Home Directories
        valid users = %S
        read only = No
        browseable = No
 
[netlogon]
        comment = Network Logon Service
        path = /home/samba/netlogon
        admin users = root
        guest ok = Yes
        read only = Yes
        browseable = No
 
[Profiles]
        comment = Roaming Profile Share
        path = /home/samba/profiles
        read only = No
        profile acls = Yes
        browsable = No
 
[Public]
        comment = Public Share
        path = /home/samba/public
        read only = No
        guest ok = Yes
        browsable = Yes
        writeable = Yes
        create mask = 0666
        directory mask = 0777

membuat password untuk LDAP admin account (spt: cn=admin,dc=masterpop3,dc=local) ..

~# smbpasswd -W
    Setting stored password for "cn=admin,dc=masterpop3,dc=local" in secrets.tdb
    New SMB password:                        ; password yg sama dengan LDAP admin
    Retype new SMB password:

Restart Samba ..

~# /etc/init.d/samba restart

Gunakan SMB klien untuk memeriksa bahwa server Samba merespons dengan benar.

~# smbclient -L dc-ubuntu -U anonymous%
Anonymous login successful
Domain=[MASTERPOP3] OS=[Unix] Server=[Samba 3.4.0]
 
        Sharename       Type      Comment
        ---------       ----      -------
        IPC$            IPC       IPC Service (DC SERVER)
        Public          Disk      Public Share
Anonymous login successful
Domain=[MASTERPOP3] OS=[Unix] Server=[Samba 3.4.0]
 
        Server                Comment
        ---------             -------
        DC-UBUNTU             DC SERVER
        DB-SRV
        NIXNUX
        TDS
        WABAHTIAR-PC
 
        Workgroup             Master
        ---------             -------
        MASTERPOP3            DC-UBUNTU

step 4: Konfigurasi paket SMBLDAP-TOOL

Kita akan menggunakan paket smbldap-tools untuk mengisi direktori ldap, menambahkan users, menambahkan groups, menambahkan workstation, dll .. Namun, toolsnya harus dikonfigurasi terlebih dahulu!

~# cd /usr/share/doc/smbldap-tools/examples/
~# cp smbldap_bind.conf /etc/smbldap-tools/
~# cp smbldap.conf.gz /etc/smbldap-tools/
~# gzip -d /etc/smbldap-tools/smbldap.conf.gz

Membuat SID (Security ID) untuk SAMBA domain.

~# net getlocalsid
   SID for domain DC-UBUNTU is: S-1-5-21-1544440099-1215257018-185093263

Mengedit file /etc/smbldap-tools/smbldap.conf untuk dikonfigurasi :

~# cd /etc/smbldap-tools/
~# vim smbldap.conf

Konfigurasinya akan terllihat seperti ini, edit dan sesuaikan..

SID="S-1-5-21-1544440099-1215257018-185093263"
sambaDomain="MASTERPOP3"
slaveLDAP="127.0.0.1"
slavePort="389"
masterLDAP="127.0.0.1"
masterPort="389"
ldapTLS="0"
verify="require"
cafile="/etc/smbldap-tools/ca.pem"
clientcert="/etc/smbldap-tools/smbldap-tools.pem"
clientkey="/etc/smbldap-tools/smbldap-tools.key"
suffix="dc=masterpop3,dc=local"
usersdn="ou=Users,${suffix}"
computersdn="ou=Computers,${suffix}"
groupsdn="ou=Groups,${suffix}"
idmapdn="ou=Idmap,${suffix}"
sambaUnixIdPooldn="sambaDomainName=MASTERPOP3,${suffix}"
scope="sub"
hash_encrypt="SSHA"
crypt_salt_format="%s"
# Unix Accounts Configuration
userLoginShell="/bin/bash"
userHome="/home/%U"
userHomeDirectoryMode="700"
userGecos="System User"
defaultUserGid="513"
defaultComputerGid="515"
skeletonDir="/etc/skel"
defaultMaxPasswordAge="45"
userSmbHome=
userProfile=
userHomeDrive=
userScript=
mailDomain="masterpop3.local"
with_smbpasswd="0"
smbpasswd="/usr/bin/smbpasswd"
with_slappasswd="0"
slappasswd="/usr/sbin/slappasswd"

Edit file /etc/smbldap-tools/smbldap_bind.conf ..

~# vim smbldap_bind.conf
 
slaveDN="cn=admin,dc=masterpop3,dc=local"
slavePw="passwordmu"
masterDN="cn=admin,dc=masterpop3,dc=local"
masterPw="passwordmu"

Set permision file ..

~# chmod 0644 /etc/smbldap-tools/smbldap.conf
~# chmod 0600 /etc/smbldap-tools/smbldap_bind.conf

step 5: Mengisi/populate OpenLDAP Database

Sesuai namanya, smbldap-tools menyediakan hubungan antara Samba dan LDAP database. Tool ini juga meletakkan/memasukkan inetOrgPerson dan POSIX ke dalam database.
Smbldap-tools memberikan perintah berikut ..

  • smbldap-groupadd – menambahkan grup baru
  • smbldap-groupdel – menghapus grup
  • smbldap-groupmod – memodifikasi sebuah grup, termasuk menambahkan atau menghapus member
  • smbldap-groupshow – menampilkan propertis dari sebuah grup, termasuk member
  • smbldap-passwd – mengganti password user
  • smbldap-populate – mengisi LDAP database, menyediakan struktur yang diperlukan untuk Samba
  • smbldap-useradd – menambahkan akun user baru
  • smbldap-userdel – menghapus sebuah akun user
  • smbldap-userlist – daftar user atau mesin dengan beberapa info
  • smbldap-usershow – menampilkan informasi untuk akun user
  • smbldap-usermod – mengubah Unix dan Samba propertis dalam satu user (banyak properti)
  • smbldap-userinfo – mengubah gecos informasi dalam sebuah akun user (hanya beberapa properti)

Mengisi LDAP database dengan entri Samba sangat penting. Ini meliputi pembentukan grup standard, seperti Administrators dan Domain Users.
Jalankan perintah berikut untuk mengisi LDAP database..

~# smbldap-populate -u 30000 -g 30000
   Populating LDAP directory for domain MASTERPOP3 (S-1-5-21-1544440099-1215257018-185093263)
   (using builtin directory structure)
   entry dc=masterpop3,dc=local already exist.
   entry ou=Users,dc=masterpop3,dc=local already exist.
   entry ou=Groups,dc=masterpop3,dc=local already exist.
   entry ou=Computers,dc=masterpop3,dc=local already exist.
   entry ou=Idmap,dc=masterpop3,dc=local already exist.
   adding new entry: uid=root,ou=Users,dc=masterpop3,dc=local
   adding new entry: uid=nobody,ou=Users,dc=masterpop3,dc=local
   adding new entry: cn=Domain Admins,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Domain Users,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Domain Guests,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Domain Computers,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Administrators,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Account Operators,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Print Operators,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Backup Operators,ou=Groups,dc=masterpop3,dc=local
   adding new entry: cn=Replicators,ou=Groups,dc=masterpop3,dc=local
   entry sambaDomainName=MASTERPOP3,dc=masterpop3,dc=local already exist. Updating it...
   Please provide a password for the domain root:
   Changing UNIX and samba passwords for root
   New password:                               ;isi password yg sama dg root
   Retype new password:

Pastikan bahwa direktori LDAP database memiliki informasi di dalamnya dengan menjalankan perintah:

~# ldapsearch -x -b dc=masterpop3,dc=local -h 127.0.0.1 |less

step 6: Konfigurasi server untuk menggunakan LDAP authentication

Pada dasarnya kita perlu untuk memberitahukan server kita untuk menggunakan otentikasi LDAP sebagai salah satu pilihan. maksudnya kita akan menghubungkan server kita ini login sebagai klien ke LDAP server.
Install paket yang diperlukan ..

~# aptitude install auth-client-config libpam-ldap libnss-ldap

Konfigurasi akan menampilkan pertanyaan, dan jawab dengan contekan berikut ini :
Should debconf manage LDAP configuration?: Yes
LDAP server Uniform Resource Identifier: ldapi://127.0.0.1
Distinguished name of the search base: dc=masterpop3,dc=local
LDAP version to use: 3
Make local root Database admin: Yes
Does the LDAP database require login? No
LDAP account for root: cn=admin,dc=masterpop3,dc=local
LDAP root account password: 12345

Buka file /etc/ldap.conf untuk di edit ..

~# vim /etc/ldap.conf
 
host 127.0.0.1
base dc=masterpop3,dc=local
uri ldapi://127.0.0.1
ldap_version 3
rootbinddn cn=admin,dc=masterpop3,dc=local
bind_policy soft
pam_password md5
nss_initgroups_ignoreusers avahi,avahi-autoipd,backup,bin,bind,couchdb,daemon,games,gdm,gnats,haldaemon,hplip,irc,kernoops,landscape,libuuid,list,lp,mail,man,messagebus,news,openldap,proxy,pulse,root,saned,speech-dispatcher,sshd,sync,sys,syslog,uucp,www-data

Buat symlink untuk file ldap.conf ..

~# ln -s /etc/ldap.conf /etc/ldap/ldap.conf

Buat file baru di /etc/auth-client-config/profile.d/open_ldap :

~# vim /etc/auth-client-config/profile.d/open_ldap
 
[open_ldap]
nss_passwd=passwd: compat ldap
nss_group=group: compat ldap
nss_shadow=shadow: compat ldap
nss_netgroup=netgroup: compat ldap
pam_auth=auth       required     pam_env.so
 auth       sufficient   pam_unix.so likeauth nullok
 auth       sufficient   pam_ldap.so use_first_pass
 auth       required     pam_deny.so
pam_account=account    sufficient   pam_unix.so
 account    sufficient   pam_ldap.so
 account    required     pam_deny.so
pam_password=password   sufficient   pam_unix.so nullok md5 shadow use_authtok
 password   sufficient   pam_ldap.so use_first_pass
 password   required     pam_deny.so
pam_session=session    required     pam_limits.so
 session    required     pam_mkhomedir.so skel=/etc/skel/
 session    required     pam_unix.so
 session    optional     pam_ldap.so

Backup dulu /etc/nsswitch.conf dan kroco-kroconya :

~# cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
~# cd /etc/pam.d/
~# mkdir backup
~# cp * backup/

Aktifkan Profil baru Authentication LDAP dengan menjalankan perintah berikut:

~# auth-client-config -a -p open_ldap

step 7: Konfigurasi DNS Server (BIND) dengan webmin

Karena server kita akan dijadikan sebagai Domain controller dan pusat untuk authentication, maka seharusnya  memiliki DNS service sendiri menggunakan BIND.
Install paket pendukung..

~# aptitude install bind9
~# aptitude install openssl libauthen-pam-perl libio-pty-perl libmd5-perl libnet-ssleay-perl

Download paket webmin dari sourceforge.net dan install ..

~# wget http://heanet.dl.sourceforge.net/sourceforge/webadmin/webmin_1.500_all.deb
~# dpkg -i webmin_1.500_all.deb

sesudah installasi webmin dapat di akses dengan alamat https://192.168.0.100:10000/
Update root password untuk login ke webmin..

~# /usr/share/webmin/changepass.pl /etc/webmin root 12345

Saya lebih suka menggunakan GUI untuk melakukan hal ini untuk mengedit file zona.
Konfigurasi BIND dengan webmin, Dalam browser web navigasikan ke: https://192.168.0.100:10000 (Silakan gunakan alamat IP yang anda pasang ke server anda.)
Login dengan “root” dan password “12345″.
Servers > BIND DNS Server
Dibawah “Existing DNS Zones” klik “Create master zone”.
Zone type: Forward (Names to Addresses)
Domain name / Network: masterpop3.local
Records file: Automatic
Master server: dc-ubuntu.masterpop3.local
Email address: root@masterpop3.local
Klik tombol “Create”.
Klik tombol “Apply Configuration” di pojok kanan atas.
Klik “Address (0)” yang ada di atas.
Name: dc-ubuntu
Address: 192.168.0.100
Klik tombol “Create”
Klik “Return to record types”
Klik “Apply Configuration”.
Masukin juga dns setting di /etc/resolv.conf

~# vim /etc/resolv.conf
 
 search masterpop3.local
 nameserver 192.168.0.100

step 8: Menambahkan user domain ke dalam LDAP database

Saatnya kita untuk menambahkan user LDAP. Kita akan menggunakan account user ini untuk memverifikasi bahwa otentikasi LDAP bekerja.

~# smbldap-useradd -a -m -M wawan -c "Wawan Bahtiar" wawan
~# smbldap-passwd wawan
      Changing UNIX and samba passwords for wawan
      New password:
      Retype new password:

# Berikut ini adalah penjelasan perintah pilihan yang gunakan.
-a   yang memungkinkan Windows maupun Linux login
-m membuat direktori home, tinggalkan ini jika Anda tidak memerlukan akses lokal
-M set up username bagian dari alamat email
-c menyebutkan nama lengkapuser

step 9: Konfigurasi Windows XP Profesional klien

  • Login ke komputer sebagai Administrator.
  • Klik kanan “My Computer” dan klik “Properties”.
  • Klik tab “Computer Name”.
  • Klik tombol yang berlabel “Change”.
  • Di bagian bawah klik tombol radial member of berlabel “Domain”.
  • Pada kotak ketik kata “MASTERPOP3″ tanpa tanda kutip!
  • Klik tombol “OK”.
  • Pada prompt password masukkan “root” untuk user dan “12345″ untuk memasukkan sandi (password pengganti untuk apa yang Anda tetapkan untuk user root anda sebelumnya!).

Seharusnya keluar tanda “Welcome to the masterpop3 domain.”
* Klik “OK”.
* Klik “OK” lagi.
* Klik “OK” lagi.
* Restart workstation.
# Log dengan user test anda ( “wawan”) dari sebelumnya.
Coba login ke Windows XP workstation (setelah memilih domain dari drop down box) dengan menggunakan user yang telah dibuat tadi. Harusnya bekerja tanpa masalah!
# Catatan
Harap dicatat bahwa ini adalah otentikasi dasar sekarang. Anda sendiri jika Anda ingin menambahkan script logon, mapping drive, dll ..
Contoh script logon.bat

~# cat /home/samba/netlogon/logon.bat
 
   TITLE Domain Login script
   net time \\DC-UBUNTU /set /y
   net use S: \\DC-UBUNTU\public

step 10: Tambahan install apache2 dan phpldapadmin

Sebuah cara yang asyik untuk melihat dan memodifikasi LDAP Tree Anda adalah dengan GUI. PhpLDAPAdmin adalah salah satu yang banyak orang menyarankan untuk digunakan.
Install paketnya ..

~# aptitude install apache2 phpldapadmin

Setting hostname komputer servernya..

~# vim /etc/hostname
dc-ubuntu.masterpop3.local
 
~# vim /etc/hosts
127.0.0.1     localhost
127.0.1.1     dc-ubuntu     dc-ubuntu.masterpop3.local

Tambahkan baris berikut pada bagian atas file /etc/apache2/httpd.conf . Hal ini untuk mencegah pesan kesalahan yang menjengkelkan dari Apache2.

~# vim /etc/apache2/httpd.conf
 
ServerName dc-ubuntu.masterpop3.local

Restart apache2

~# /etc/init.d/apache2 restart

Silahkan login lewat browser dan akses phpldapadmin lewat alamat berikut ini :

http://192.168.0.100/phpldapadmin/

Perbaikan Bug (Fixing Bug) Phpldapadmin …(Thanks to ajie for the correction.)
Jika anda menemukan error pada saat membuka phpldapadmin di browser seperti ini :
E_STRICT: Declaration of AJAXTree::draw_dn() should be compatible with that of PLMTree::draw_dn()
Solusinya adalah :
Ubah file AJAXTree.php baris ke 16 yang semula seperti ini …

~# vim /usr/share/phpldapadmin/lib/AJAXTree.php
   :    :    :
 protected function draw_dn($dn,$level=0,$first_child=true,$last_child=true) {
   :    :    :

menjadi …

 protected function draw_dn($dn,$level,$first_child=true,$last_child=true) {

dan ubah memory limit di php.ini menjadi 128M …

~# vim /etc/php5/apache2/php.ini
   :    :    :
memory_limit = 128M      ; Maximum amount of memory a script may consume (16MB)
   :    :    :

Sumber :

http://www.nixnux.or.id/2009/12/10/openldap-sambapdc-ubuntu-karmic/