samba ldap on ubuntu 10.04
TRANSCRIPT
OpenLDAP + Samba Domain Controller On Ubuntu server 10.04 LTS (Lucid)
พนองกรรรมกรไอท บานสงชน มน า
ในสวนนจะท ากาตดตง samba domain controller โดยท าการ authen ดวย ldap
ซงเมอผใชท าการ login ระบบจะน าเอา (ผใช,รหสผาน) ทผ ใชกรอกไปเทยบกบ (ผใช,รหสผาน) ทอยใน
ฐานขอมลของ ldap เพอเขาไปใชทรพยากร
การเซตคาเบองตน (ทกกระบวนการจะอางองตามคาเบองตน โปรดระวง !! ) hostname: eng
domain name: eng.lnweng.com
My LDAP: lnweng.com
This translates to a Base DN of: dc=lnweng , dc=com
**** รหสผานทงหมดใหท าการตงคาเปน “ 123456 “****
user: eng
รหสผานใหท าการตงคาเปน “ 123456 “
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
Assumptions
Ubuntu Server 10.04 is installed.
ควรเปน os ทยงไมผานการปรบแตงใดๆ
หลงจากท าการตดตงใหเปดใชค าสง /etc/apt/sources.list
ท าการอพเดทระบบปฏบตการโดยใชค าสงดงตอไปน
apt-get update
apt-get upgrade dist-upgrade
reboot
ใหไปท /etc/hostname เพอท าการเปลยนคา : eng.lnweng.com
nano /etc/hostname
ใหไปท /etc/hosts เพอท าการเปลยนคาในบรรทด 127.0.1.1 ใหเปนคา : eng eng.lnweng.com
nano /etc/hosts
ท าการตงคาในสวนของบรรทด 127.0.1.1
127.0.1.1 eng eng.lnweng.com
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เสรจสนการ set คา พนฐานทจะใชในการทดลอง
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ขนตอนท 1 ตดตง webmin
ท าการตดตงเราตองท าการตดตงโปรแกรมเพอรองรบตอ package ( webmin )ทเราจะท าการตดตง
apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl
apt-show-versions libapt-pkg-perl
หมายเหต : libmd5-perl ไมสามารถไดใน ubuntu 10.04 ( สามารถใชไดใน ubuntu 8.04 )
ในขนตอนแรกใหท าการ download ไฟล webmin 1.470 ไดท www.webmin.com
เมอปรากฏหนาเวบขนใหท าการคลกเลอก Debian package ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เมอท าการดาวนโหลดเสรจกจะไดไฟล webmin_1.470_all.deb ปรากฏ ท Desktop ดงรป
จากนนเราสามารถท าการตดตงไดโดย ใชค าสง dpkg -i webmin_1.510-2_all.deb
หลงจากท าการตดตง ระบบจะท าการแจงใหเราทราบวา สามารถเปดใช webmin ไดท
http://localhost:10000/ หาก ไมสามารถเขาได โดยปรากฏขอความดงน
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
localhost:10000 uses an invalid security certificate
สามารท าการแกไขไดโดยไปทแถบ toolbar ของโปรแกรม Firefox โดยท าการเลอก Edit -> Preferences
-> Advanced Button -> Encryption Tab ->View Certificates
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หลงจากนนกท าการเลอก Servers Tab ->Add Exception ดงรป
หลงจากท าการเลอก Add Exception เพอเพมคาแลว กจะปรากฏหนาตางใหมขนมาใหเราท าการปอนคา
ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการปอนคา https://localhost:10000 (คา address ทตองการให firefox ยอมรบ )
หลงจากนนท าการกดทป ม Get Certificate ตอจากนนท าการกดทป ม Confirm Security Exception เมอ
เสรจสนจากการเพมคาแลวจะไดผลดงรป
ท าการเปด browser แลวท าการพมพในชอง url: http://localhost:10000
Browserจะท าการแจงวาใบ cert ทใชไมเปนทนาเชอถอ ตองการใหท างานตอหรอไม
โดยเราจะตองท าการยอมรบใบ cert น เพอด าเนนการขนตอไป ซง browser แตละตวจะมวธการ
ตางกนดงน
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
case 1. Chromium หรอกคอ chrome บน window นนหละครบ
ใหท าการเลอก proceed anyway
เรากจะเขามาสหนาจอ login ของ webmin ละครบ
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
case 2. Firefox
ใหท าการเลอกท > I understand the risks
จากนน เลอก > Add Exception
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เรากจะเขามาสหนาจอ login ของ webmin ละครบ
หลงจากนนเรากสามารถท าการ login เขาตว webmin โดยใช user,password ไดละครบ ซงในทนคอ
User:root
Password:123456
หลงจากใหท าการปอน username,password ของ root เพอท าการ login เขาโปรแกรม webmin แลว
enter จะปรากฏหนาตาโปรแกรม webmin ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เพยงเทานเรากม webmin ไวใชแลวครบ
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ขนตอนท 2 ตดตง openldap
ท าการตดตงเราโดยใชค าสง
apt-get install slapd ldap-utils migrationtools
หลงจากนนระบบจะถามวา เราตองการ ยาย ฐานขอมลเกา หรอไม เลอก Yes
จะปลอย protocol LDAPv2 หรอไม เลอก No
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการรสตารท openldap
/etc/init.d/slapd restart
ตอมาเราตองท าการโหลด schema file ทตองใชใน terminal
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/cosine.ldif
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/nis.ldif
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/inetorgperson.ldif
ถดมาท าการสราง ldif file ขนมาใหมโดยตงชอวา “backeng.ldif” ใชค าสง
nano backend.ldif
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
การท า copy ขอมลในกรอบนลงในไฟลเปลา
# Load dynamic backend modules dn: cn=module,cn=config objectClass: olcModuleList cn: module olcModulepath: /usr/lib/ldap olcModuleload: back_hdb # Database settings dn: olcDatabase=hdb,cn=config objectClass: olcDatabaseConfig objectClass: olcHdbConfig olcDatabase: {1}hdb olcSuffix: dc=lnweng,dc=com olcDbDirectory: /var/lib/ldap olcRootDN: cn=admin,dc=lnweng,dc=com olcRootPW: 123456 olcDbConfig: set_cachesize 0 2097152 0 olcDbConfig: set_lk_max_objects 1500 olcDbConfig: set_lk_max_locks 1500 olcDbConfig: set_lk_max_lockers 1500 olcDbIndex: objectClass eq olcLastMod: TRUE olcDbCheckpoint: 512 30 olcAccess: to attrs=userPassword by dn="cn=admin,dc=lnweng,dc=com" write by anonymous auth by self write by * none olcAccess: to attrs=shadowLastChange by self write by * read
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
olcAccess: to dn.base="" by * read olcAccess: to * by dn="cn=admin,dc=lnweng,dc=com" write by * read
หมายเหต : lnweng คอ domain ทใชทดสอบ ซงผทดลอง สามารถท าการเปลยนเปน domain ของตนได
แตจะตองตงคา domain ใหตรงกนในทกขนตอน
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หลงจากนน ท าการเพม ldif file ทเพงสรางลงใน directory โดยใชค าสง
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f backend.ldif
ตดตง samba
เราสามารถตดตง samba โดยใชค าสง
apt-get install samba samba-doc libpam-smbpass smbclient smbldap-tools samba-common-
bin
หลงจากนนท าการคอนฟคคาของ samba โดยเขาไปทไดเรกทอร /etc/samba/
cd /etc/samba/
ท าการส ารองไฟล smb.conf
cp smb.conf smb.conf.original
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หลงจากนน ท าการ สราง samba config file : smb.conf โดยใชค าสง
nano smb.conf
ท าการคดลอกขอความในกรอบลงในไฟลเปลา
[global] # Domain name .. workgroup = LNWENG # Server name - as seen by Windows PCs .. netbios name = ENG # Be a PDC .. domain logons = Yes domain master = Yes # Be a WINS server .. wins support = true obey pam restrictions = Yes 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 # Allows users on WinXP PCs to change their password when they press Ctrl-Alt-Del unix password sync = no ldap passwd sync = yes
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
# Printing from PCs will go via CUPS .. load printers = yes printing = cups printcap name = cups # Use LDAP for Samba user accounts and groups .. passdb backend = ldapsam:ldap://localhost # This must match init.ldif .. ldap suffix = dc=lnweng,dc=com # The password for cn=admin MUST be stored in /etc/samba/secrets.tdb # This is done by running 'sudo smbpasswd -w'. ldap admin dn = cn=admin,dc=lnweng,dc=com # 4 OUs that Samba uses when creating user accounts, computer accounts, etc. # (Because we are using smbldap-tools, call them 'Users', 'Computers', etc.) ldap machine suffix = ou=Computers ldap user suffix = ou=Users ldap group suffix = ou=Groups ldap idmap suffix = ou=Idmap # Samba and LDAP server are on the same server in this example. ldap ssl = no # Scripts for Samba to use if it creates users, groups, etc. 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'
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
# Script that Samba users when a PC joins the domain .. # (when changing 'Computer Properties' on the PC) add machine script = /usr/sbin/smbldap-useradd -w '%u' # Values used when a new user is created .. # (Note: '%L' does not work properly with smbldap-tools 0.9.4-1) logon drive = logon home = logon path = logon script = allusers.bat # This is required for Windows XP client .. server signing = auto server schannel = Auto [homes] comment = Home Directories valid users = %S read only = No browseable = No [netlogon] comment = Network Logon Service path = /var/lib/samba/netlogon admin users = root guest ok = Yes browseable = No logon script = allusers.bat [Profiles]
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
comment = Roaming Profile Share # would probably change this to elsewhere in a production system .. path = /var/lib/samba/profiles read only = No profile acls = Yes browsable = No [printers] comment = All Printers path = /var/spool/samba use client driver = Yes create mask = 0600 guest ok = Yes printable = Yes browseable = No public = yes writable = yes admin users = root write list = root [print$] comment = Printer Drivers Share path = /var/lib/samba/printers write list = root create mask = 0664 directory mask = 0775 admin users = root [shared] writeable = yes path = /var/lib/samba/shared
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
public = yes browseable = yes [archive] path = /exports/archive browseable = yes create mask = 755 directory mask = 755 read only = no
การปรบแตง ( เบองตน ) นนม 4 จดดงรป
2 จดแรกอยทางดานบนของไฟล smb.conf ทเราสราง
อก 2 จดในสวนกลางๆของไฟล ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เมอท าการคอนฟคไฟล smb.conf เรยบรอยใหท าการ copy ไฟลไปยง /etc/samba/ โดยใชค าสง
cp smb.conf /etc/samba/
เราสามารถท าการตรวจสอบวาไฟล smb.conf ทเรายายไปถกตองหรอไมสามาถ list ดไดโดยใชค าสง
Ls /etc/samba
หากตองการตรวจสอบ รายละเอยดขางใน file smb.conf สามารถท าไดโดย
cat /etc/samba/smb.conf
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เราตองท าการปอนคา password ของ ldap admin ใหกบ samba โดยใชค าสง
smbpasswd -W
เมอปอนคาเสรจสน ใหท าการ restart samba
service smbd restart
เราสามารถทดสอบเพอความมนใจวา samba ไดท างานแลว โดยใช samba-client
sudo smbclient -L localhost
หมายเหต: เมอมการถามหา root password ใหท าการ กด enter ขามไปไดเลย เพราะยงไมม password
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หมายเหต : หาก workgroup ทางดานลางยงไมเทากบ LNWENG
และ Master ยงไมเทากบ ENG
ใหท าการ reboot เครองใหมแลวลอง smbclient -L localhost อกครง
(ใชในกรณท service smbd restart แลวกยงไมมการ update ขอมล)
ขนตอมาตองท าการสราง profile และ netlogon โดยใชค าสง
sudo mkdir -v -m 777 /var/lib/samba/profiles
sudo mkdir -v -p -m 777 /var/lib/samba/netlogon
จากนนเราตองท าการเพม samba schema ลงใน ldap server โดยใชค าสง
sudo cp /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz /etc/ldap/schema/
sudo gzip -d /etc/ldap/schema/samba.schema.gz
Schema จะตองถกเปลยนเปน รปแบบ ldif เพอใชงาน
ในขนตอมาเราตองสรางไฟล ทมชอวา schema_convert.conf โดยใชค าสง
nano schema_convert.conf
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการ copy ขอความตอไปนลงในไฟลเปลา
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/collective.schema
include /etc/ldap/schema/corba.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/duaconf.schema
include /etc/ldap/schema/dyngroup.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/java.schema
include /etc/ldap/schema/misc.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/openldap.schema
include /etc/ldap/schema/ppolicy.schema
include /etc/ldap/schema/samba.schema
ขนตอไปเราจะใช slapcat ในการแปลง schema เปน ldif โดยใชค าสง
sudo mkdir /tmp/ldif_output
sudo slapcat -f schema_convert.conf -F /tmp/ldif_output -n0 – s
"cn={12}samba,cn=schema,cn=config" > /tmp/cn=samba.ldif
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
Slapcat จะท าการสรางไฟลชอวา cn=samba.ldif
ซง cn=samba.ldif นนจะอยท /tmp ซงเราสามารถท าการ คอนฟคไดโดยใชค าสง
ท าการเปลยนแปลงคาจาก
dn: cn={12}samba,cn=schema,cn=config
cn: {12}samba
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
มาเปนคาดงน
dn: cn=samba,cn=schema,cn=config
cn: samba
หลงจากนนเลอนลงมาลางสดของไฟล จะพบขอความตามกรอบสแดงใหท าการลบออก
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
จะไดผลลพธดงรป
หลงจากนนท าการเพม schema ลงใน server โดยใชค าสง
ldapadd -Y EXTERNAL -H ldapi:/// -D cn=admin,cn=config -W -f /tmp/cn\=samba.ldif
หากไมมขอผดพลาดระบบจะตอบดงน
adding new entry "cn=samba,cn=schema,cn=config"
ท าการตรวจสอบโดยการ query ออกมาด
sudo ldapsearch -Y EXTERNAL -H ldapi:/// -D cn=admin,cn=config -b cn=config -W
olcDatabase={1}hdb
ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ในสวนทายจะปรากฏผลลพธทมคาดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หากไดคาออกมาตามรปแสดงวา ldap server นนท างานเปนปกต แตเรากยงตองคอนฟค samba เพอจบ
กระบวนการ
ท าการ unpack หรอ unzip samba-ldap-tools โดยใชค าสง
sudo gzip -d /usr/share/doc/smbldap-tools/configure.pl.gz
เมอถงขนตอนน ldap สามารถท างานไดดแลว ทนตองมาท าให samba ท างานไดดเชนกน
ท าการตรวจสอบคา SID for domain โดยใชค าสง
net getlocalsid
ตอมาท าการรน perl script โดยใชค าสง
sudo perl /usr/share/doc/smbldap-tools/configure.pl
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการปอนคาจนจบกระบวนการ
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เมอเสรจสนการปอนคา โดยไมม error ใดๆ แสดงวาตอนน script ไดท าการสรางไฟล คอนฟค ขนมาแลว
เราสามารถใชสงน populate server ไดโดยใชค าสง
sudo smbldap-populate
ท าการก าหนด permission และ stop,start โดยใชค าสงตอไปน
sudo chown openldap:openldap /var/lib/ldap/*
sudo /etc/init.d/slapd stop
sudo slapindex
sudo chown openldap:openldap /var/lib/ldap/*
sudo /etc/init.d/slapd start
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ดงรป
ตอมาท าการสราง root ของ domain ซงกคอ administrators โดยใชค าสง
sudo smbldap-groupmod -m 'root' 'Administrators'
ทนเราตองการให client เขามา authen โดยใช ldap เราสามารถท าไดโดยตดตง package
sudo apt-get --yes install ldap-auth-client
ปอนคาดงตอไปน
LDAP server Uniform Resource Identifier: ldapi://127.0.0.1
Distinguished name of the search base: dc=lnweng,dc=com
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=lnweng,dc=com
LDAP root account password: 123456
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เมอกระบวนการเสรจสนจะไดดงรป โดยไมม error
หลงจากนนท าการคอนฟคไฟล ldap.conf โดยใชค าสง
nano /etc/ldap.conf
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการคอนฟคไฟลดงน
host 127.0.0.1
uri ldap://127.0.0.1/
rootbinddn cn=admin,dc=lnweng,dc=com
bind_policy soft
ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หลงจากคอนฟคคาเรยบรอยใหคดลอก /etc/ldap.conf ไปยง /etc/ldap/ldap.conf โดยใชค าสง
cp /etc/ldap.conf /etc/ldap/ldap.conf
ท าการสรางใหมดงน /etc/auth-client-config/profile.d/open_ldap โดยใชค าสง
nano /etc/auth-client-config/profile.d/open_ldap
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ใหคดลอกขอความตอไปนลงในไฟลคอนฟค
[open_ldap]
nss_passwd=passwd: compat ldap
nss_group=group: compat ldap
nss_shadow=shadow: 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
ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการส ารองไฟล /etc/nsswitch.conf
cp /etc/nsswitch.conf /etc/nsswitch.conf.original
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการแบคอพ /etc/pam.d/
cd /etc/pam.d/
mkdir lnwengbackup
cp * lnwengbackup/
เราตองท าการปอนคา pam และ name service switch เพอทจะใช ldasp ในการ authen
sudo auth-client-config -t nss -p lac_ldap
sudo pam-auth-update ldap
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ถาไมมอะไรผดพลาดก ท าการเพม user ลง database ไดเลยครบ
sudo smbldap-useradd -a -m -P eng001
สามารถตรวจสอบ user ใหมไดโดยใชค าสง
ldapsearch -xLLL -b "dc=lnweng,dc=com" uid=eng001
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หากดไมมอะไรผดพลาดกจะไดตามรปดานบนนหละครบ XD
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ตดตง bind (dns server)
สาเหตทตองตดตงเพราะการทจะเขาใช โดนเมน คอนโทรลเลอร และ ldap นน เราตองใช dns เพอ
ด าเนนการ โดยเราสามารถตดตงโดยใชค าสง
apt-get install bind9
O_O!! เสรจแลว
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการคอนฟคคาใหกบ dns zone โดยใช webmin
สามารถเขาไปคอนฟคไดโดยเปด browser ขนมาแลวท าการใสคา url ดงน http://localhost:10000/
หลงจากนนใหท าการ login โดยกรอก ชอผ ใช และ รหสผานเพอเขาสระบบของ webmin
โดยในทน ชอผใช = eng รหสผาน = 123456 เมอเขาสระบบจะพบหนาโปรแกรมดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ทแถบเครองมอดานซาย ใหเลอกหวขอ server > BIND server
หากยงไมพบ bind server ในหวขอ server ใหท าการ กด ท refresh module ในแถบเครองมอดานซาย
เมอท าการ refresh เสรจสนเรากจะได bind server ปรากฎดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ใหเลอกหวขอ server > BIND server จะเขาส โมดลคอนฟค ของ bind server ดงรป
สงเกตขางใตกรอบ "Existing DNS Zones" คลก "Create master zone"
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ปอนคาดงรป
คลก Create
คลก "Apply configuration" ทดานบนขวา ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
กอนอนเรยกด ip ของเราไดโดยใชค าสง
ifconfig
จากนนคลก "Address (0)" at the top. ปอนคาตามขอความดานลาง
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เมอกรอกคาเสรจ กด create จะปรากฏ address ดงรป
หลงจากนน คลก "Apply configuration" เพอท าการเกบคา จากนน คลก Return to record types
จะสงเกตไดวา address จาก 0 จะเพมเปน 1 แลว ;D
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการคอนฟค เซพเวอร ใหเรยกใช dns
เปดไฟล /etc/resolv.conf โดยใชค าสง
nano /etc/resolv.conf
ท าการ คดลอกขอความตอไปนลงในไฟล resolv.conf
ท าการ คดลอกขอความตอไปนลงในไฟล resolv.conf
search lnweng.com
nameserver 192.168.158.130
ท าการรสตารทเครองโดยใชค าสง
reboot
ท าการเพมรายชอ workstation ลงใน ldap
ซงworkstation นนคอ ชอเครอง นนเอง โดยสามารถเพมชอเครองลงในระบบไดโดยใชค าสงดงน
smbldap-useradd -w client-eng01
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ดงรป
คอนฟคคาเครอง client ทเปน windows xp professional
เรามาเรมขนตอนคอนฟค เครองไคลนเอนทกนเลย
หลงจากท าการตดตง windows xp professional sp2-3 แลว
-ใหท าการตงชอเครองเปน client-eng01
-ใหท าการอพเดท windows
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เรมเขาสขนตอนเขาใชโดเมนโดย คลกขวาท my computer > properties
คลก ทแถบ computer name
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
คลก เลอกทป ม change
หลงจากนนท าการเลอกท ชอง ทมขอความดานขางวา domain ภายในชองวางของ domain นนกรอกคา
lnweng คลก ok แลวรอสกคร
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ระบบท าการเรยกไปยง server แลว จะปรากฏหนาตางขนมาให login ใหเราใสคา
โดยในชองผใชใหใส root สวนรหสผานใหใส 123456 กด enter
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
จะปรากฏขอความ " Welcome to the lnweng domain." ดงรป กด ok
กด ok เนองจากระบบแจงวาคาทตงไปจะสงผลกตอเมอ รสตารทเครองแลว ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
จะปรากฏหนาตางขนมาให เลอก yes เพอท าการ รสตารท
กด ctrl+alt+delete เพอเขาสการ login
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
คลกท option
หลงจากนนใหท าการ login ใหมโดยเลอก workgroup เปน LNWENG กรอกคา ชอผ ใช = eng001 ,
รหสผาน = 123456
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หลงจากนนระบบจะท าการตดตอ domain อาจใชเวลาสกครเพราะ server จะตรวจสอบชอเครองกอนวาม
อยในระบบฐานขอมลหรอไม และหากไมมขนตอนใดผดพลาดจะปรากฏหนาตางดงน
คลก ok
หลงจากขนตอนนจะเขาสหนาจอ windows โดยจะเรมท าการโหลด ทรพยากร ทจ าเปนตองใชดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หากคลกท start จะปรากฏ ชอผใช คอ eng001 แตเนองจาก eng001 ไมใช administrator จงสามารถใช
งานทวไปไดอยางเดยว แตไมสามารถปรบแตงคาใดๆได
ตรวจสอบการ share ทรพยากรไดโดย ไปท my computer จะพบ drive ( H: ) ทเราตงไวใน perl script
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการตดตง apache2 php5 phpldapadmin เพองายและสะดวกตอการ แกไขจ านวน user รวมถง workstation เราจงควรตดตงpackage เหลานเพอ
ความคลองตวในการท างาน โดยใชค าสงดงน
sudo apt-get install apache2 apache2-mpm-prefork apache2-utils apache2.2-bin apache2.2-
common libapache2-mod-php5 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap php5-
common php5-ldap ssl-cert
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หลงจากนนใหท าการแกไขคอนฟค ทไฟล /etc/php5/apache2/php.ini
nano /etc/php5/apache2/php.ini
ท าการแกไขคาในสวน memory ซงคา default =128 ใหแกเปน 200 อยางต าเพอรองรบการใชงานไดอยาง
มประสทธภาพ หลงจากนนใหสรางไฟล /etc/apache2/httpd.conf
nano /etc/apache2/httpd.conf
ตงคา ServeName eng.lnweng.com
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ท าการรสตารท apache2 โดยใชค าสง
/etc/init.d/apache2 restart
ท าการโหลด phpldapadmin โดยใชค าสง
wget https://launchpad.net/~ubuntu-security-
proposed/+archive/ppa/+build/1744905/+files/phpldapadmin_1.2.0.5-1ubuntu1.10.04.1_all.deb
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
ตดตงโดยใชค าสง
sudo dpkg -i phpldapadmin_1.2.0.5-1ubuntu1.10.04.1_all.deb
สรางการสราง soft link โดยใชค าสง
sudo ln -s /usr/share/phpldapadmin /var/www/phpldapadmin
คอนฟคไฟล config.php โดยใชค าสง
/etc/phpldapadmin/config.php
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
คนหาบรรทดน
$servers->setValue('login','bind_id','cn=admin,dc=example,dc=com');
แกเปน
$servers->setValue('login','bind_id','cn=admin,dc=lnweng,dc=com');
ท าการรสตารท apache2 โดยใชค าสง
/etc/init.d/apache2 restart
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เราสามารถเรยกใช phpldapadmin ไดโดย เปด browser แลวกรอกคาทชอง url ดงน
http://localhost/phpldapadmin/
หากตองการ login ใหท าการคลกท แถบ login ทางดานซายของหนาโปรแกรมแลวท าการกรอกรหส ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
เมอท าการ login ส าเรจกจะปรากฏแถบเครองมอ ใหคลกท search
ท าการปอนคา domain ทตองการคนหาซงในทนdc=lnweng ดงรป
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
หลงจากนนระบบจะท าการแสดงรายการทงหมดของ dc=lnweng ใหเราครบ
คา uid = eng001, uid = eng และ uid = eng01 ทงหมดคอชอ user
หมายเหต : คา uid ทม $ อยขางทายนนคอ ชอของเครองครบในทนคอ client-eng01
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา
สนกไหมหละคบ เพยงเทานเรากจะได ubuntu ทม ldap samba domain controller with ldap on
Ubuntu Server 10.04 LTS (Lucid) ตามตองการ
สดทายนตองขอขอบคณ คณพอ คณแม อาจารย เผดจ พราวศร ทคอยใหค าชแนะ และอบรม รวมถงเปน
แรงบดดาลใจ ใหผจดท า ขอบคณครบ
เอกสารอางอง
http://www.howtoforge.com/openldap-samba-domain-controller-ubuntu7.10
http://ubuntuforums.org/showthread.php?t=640760
http://islandlinux.org/howto/installing-samba-openldap-ubuntu#configure_samba
http://spalinux.com/category/ldap
http://spalinux.com/category/samba
http://www.samba.org
http://www.openldap.org
http://tuxnetworks.blogspot.com/2010/06/howto-phpldapadmin-on-1004-lucid-lynx.html
http://tuxnetworks.blogspot.com/2010/07/howto-samba-ldap-on-1004-lucid-short.html
กรรมกรไอท
บานสงชน 1
3 รมนาเจาพระยา