25
LDAP and Active Directory เสนอ ดร.อรรจน์ โกญจนาท จัดทาโดย นายวรพล ทองพุ่ม รหัส 501091 รายงานนี้เป็นส่วนหนึ่งของวิชา Seminar Computer Engineering (CPE489) สาขาวิชาวิศวกรรมคอมพิวเตอร์ วิทยาลัยวิศวกรรมศาสตร์ มหาวิทยาลัยรังสิต ประจาปีการศึกษา 1/2553

LDAP and Active Directory

Embed Size (px)

Citation preview

Page 1: LDAP and Active Directory

LDAP and Active Directory

เสนอ ดร.อรรจน โกญจนาท

จดท าโดย

นายวรพล ทองพม รหส 501091

รายงานนเปนสวนหนงของวชา Seminar Computer Engineering (CPE489)

สาขาวชาวศวกรรมคอมพวเตอร วทยาลยวศวกรรมศาสตร

มหาวทยาลยรงสต ประจ าปการศกษา 1/2553

Page 2: LDAP and Active Directory

ค าน า

รายงานฉบบนไดศกษาคนควารวบรวมเนอหาจาก Web Site ทรนพรวบรวมไวสวนหนงและไดท าการดดแปลงแกไขเนอหาเพมเตมในสวนเรองของ LDAP โดยรายงานฉบบนไดเรยบเรยงและจดท าขน โดยนกศกษาทไดรบมอบหมายงานใหท าในรายวชา CPE489 โดยมเนอหาเกยวกบไดเรคทอรเซอรวสและ LDAP ผจดท าหวงเปนอยางยงวา เนอหาของรายงานฉบบนคงเปนพนฐานความรเพอน าไปใชใหเกดประโยชน หรออาจจะน ามาใชประกอบในการศกษาทางดานคอมพวเตอรซงรายงานฉบบนกเปนพนฐานความรของคอมพวเตอรของนกศกษาสาขาวศวกรรมคอมพวเตอร รวมถงสาขาอนๆและผทสนใจ ผจดท า นายวรพล ทองพม รหส 501091

Page 3: LDAP and Active Directory

ข ชอ : นายวรพล ทองพม รหส 501091 หวขอเรอง : Active Directory อาจารยผสอน : ดร.อรรจน โกญจนาท ปการศกษา : 2553

บทคดยอ ไดเรคทอรเปนสวนประกอบทส าคญของระบบบรหารและจดการเครอขายในปจจบนโดยเฉพาะเครอขายขนาดใหญ การจดการทรพยากรตาง ๆ ในเครอขายอาจเปนเรองยงยากถาไมมเครองมอชวยลดงานของผดแลระบบไดอยางมากจดเดนของไดเรคทอรเซอรวสในปจจบนคอ การรกษาความปลอดภย โดยจะมการควบคมจากสวนกลางผใชสามารถลอกอนครงเดยวกสามารถเขาถงทรพยากรทกอยางทผใชมสทธ คอนเซปตนเรยกวา“Single Sign-on” ในปจจบนไดเรคทอรเซอรวสสามารถบรหารเครอขาย WAN ไดเหมอนกบ LAN

ไดเรคทอรทก าลงเปนทนยมในปจจบนคอ eDirectory และ Active Directory โนเวลลจะไดเปรยบตรงทวาโนเวลลนนไดเรมพฒนาซอฟตแวรนกอน แตไมโครซอฟทจะไดเปรยบในดานการตลาด อยางไรกตามไดเรคทอรจากทงสองคายกมประสทธภาพไมแตกตางกนมากนก นอกจากไดเรคทอรไดกลาวถงนแลว ยงมไดเรคทอรจากคายอนทนาสนใจ เชน Sun ONE Directory Server จากซนไมโครซสเตม OpenLDAP ซงเปนไดเรคทอรของโอเพนซอรส ซงประสทธภาพกไมไดตางกนมากนก อยางไรกตามการใชงานไดเรคทอรในองคกรนน ยงมสวนประกอบอกหลายอยางทควรพจารณา เชน ราคา คาใชจายในการบ ารงรกษา ความงายในการดแลและจดการและบคลากรเปนตน

Page 4: LDAP and Active Directory

ค Name : Mr.Warapon Thongpum 501091 Title : Active Directory Adviser : Dr.Ut Goenchanart Year : 2010

Abstract

The directory is a component of systems management and network management today.Especially a large network. Various resource management Network can be tricky if there are no tools to help reduce the administrative work of the great strengths of the directory service is present Security. It is controlled centrally, users can log in only once to access all the resource user is authorized. This concept is called "Single Sign-on" in the current directory service to network operators as well as the WAN LAN. The directory that is becoming popular today is the eDirectory and Active Directory, Novell will be directly comparable to that Novell has developed the software first. But Microsoft will take advantage of the market. However, the directory from both camps, it is not performing very different. In addition to the directories mentioned this. There is also the directory of third party interest, such as Sun ONE Directory Server from Sun Microsystems, which is the OpenLDAP directory of open source. The performance was not much different. However, the active directory in the enterprise. Also contains many things to consider such costs in maintenance costs. Ease of maintenance and management. And personnel etc.

Page 5: LDAP and Active Directory

สารบญ

หนา ค าน ำ ........................................................................................................................................................ ก บทคดยอภาษาไทย ................................................................................................................................... ข บทคดยอภาษาองกฤษ .............................................................................................................................. ค สารบญ .................................................................................................................................................... ง สารบญตาราง .......................................................................................................................................... ฉ สารบญรปภาพ ........................................................................................................................................ ช บทท 1 ทบน า ………………………………………………………………………………………….. 1บทท 2 ความหมายและหลกการท างานของ LDAP …………………………………………………… 2 2.1 Directory Access Protocol (DAP) ....................................................................................... 2 2.2 Lightweight Directory Access Protocol (LDAP)………………………………………….. 3 2.2.1 โครงสรางและรปแบบขอมล ………………………………………………….. 5 2.2.2 การก าหนดชอและการคนหา .............................................................................. 6 2.2.3 LDAP Server and Client ………………………………………………………. 7 บทท 3 ความหมายและหลกการท างานของ Active Directory ............................................................... 10 3.1 Directory Services ………………………………………………………………………... 10 3.2 บรการ Directory คออะไร ................................................................................................... 10 3.3 Active Directory Service …………………………………………………………………. 11 3.3.1 โครงสรางของ Active Directory ………………………………………………. 11 3.4 AD Naming ………………………………………………………………………………. 14 3.5 Global Catalog ……………………………………………………………………………. 15 3.6 Replication ………………………………………………………………………………... 15 3.7 Security ………………………………………………………………………………….... 16 บทท 4 สรปและวเคราะห ……………………………………………………………………………… 17

Page 6: LDAP and Active Directory

สารบญตาราง หนา

ตารางท 3.1 มาตรฐานการเรยกชอแบบอน ๆ ทรองรบโดยวนโดวส 2000 …………………………….. 14

Page 7: LDAP and Active Directory

สารบญรปภาพ หนา

รปท 2.1 LDAP Directory Tree ……………………………………………………………………….. 5

รปท 2.2 LDAP Directory Tree (Internet Naming) …………………………………………………… 6

รปท 3.1 โดเมนทร ................................................................................................................................. 11

รปท 3.2 โดเมนฟอเรสต ......................................................................................................................... 12

รปท 3.3 โครงสรางของ AD …………………………………………………………………………… 13

Page 8: LDAP and Active Directory

1

บทท 1 บทน า

1.1 ทมาและความหมายของ LDAP

LDAP เปนโปรโตคอลใชส าหรบตดตอกบ ไดเรกทอรเซอรวส ( Directory Service) อยในระดบแอปพลเคชน เลเยอรท างานอยบนโปรโตคอล TCP/IP มาตรฐาน LDAP ใหค าจ ากดความทง 4 รปแบบ ซงแนะน าใหคณไดใช directory ซงรปแบบมการสงเสรมการท างานรวมกนระหวางการตดตง directory ในขณะทคณสามารถจะตดไปยง directory ทคณ ตองการเฉพาะได ซงแนะน าผพฒนา directory เมอลกคา และผใช software มการออกแบบ และก าลงปฏบตการ LDAP LDAP จะม APIs: ใชโปรแกรม ภาษา C ใชไดกบ netcape's java SDK ,sunsoft's JNDI และ Microsoft active Directory Service interface(ADSI) การเปลยนแปลงขอมลของ LDAP(LDIF) เปนมาตรฐาน รปแบบตวอกษรส าหรบอธบายในขอมล directory LDIF สามารถอธบายการสราง directory หรอปรบปรงเพอประยกตใชกบ directory ขอมล ใน directory สามารถสงออก จากทหนงไปยงทหนง โดยใช LDIF โดยทวไปมกใชไดกบค าสงซงจะมประโยชนทงอานและเขยน

LDAP ไดรบการออกแบบมาใหอยบน TCP/IP Layer ทมเพยง 4 Layer ท าใหมความตองการ Resource นอยกวา DAP ของมาตรฐาน X.500 อยางไรกตาม หากมความตองการตดตอกนระหวาง LDAP Client กบ X.500 Server จ าเปนจะตองมการตดตอผาน Gateway ทเรยกวา LDAP Server

LDAP เปนมาตรฐานทไดรบการยอมรบอยางกวางขวาง และม Application Vendor อยหลายราย อาท OpenLDAP, IBM, Oracle, Microsoft ซง Product ทไดรบความนยมกไดแก Slapd ของ University of Michigan และ Openldap, Directory Server ของ Netscape, Active Directory (AD) ของ Microsoft, Novell Directory Services (NDS) ของ Novell, Sun Directory Services (SDS) ของ Sun และ Internet Directory Server (IDS) ของ Lucent เปนตน

Page 9: LDAP and Active Directory

2

บทท 2 ความหมายและหลกการท างานของ LDAP

2.1 Directory Access Protocol (DAP) DAP (Directory Access Protocol) เปนโปรโตคอลทออกแบบมาใหไคลเอนทหรอ DUA รองขอขอมลจากไดเรคทอรเซรฟเวอรหรอ DSA รวมทงอนญาตใหไคลเอนทสามารถปรบปรงหรอเพมขอมลไปในไดเรคทอรไดดวยฟงกชนทใชส าหรบกรรองขอขอมลจากไดเรคทอรม 5 ฟงกชน ดงน

๐ Read: เปนฟงกชนทไคลเอนทใชรองขอขอมลของออบเจกตใดออบเจกตหนงใน ไดเรคทอร ซงขอมลทรองขออาจเปนแอตทรบวตทงหมดของออบเจกตหรออาจจะเปน บางคาเทานน

๐ Compare: เปนการรองขอเพอเปรยบเทยบคาของแอตทรบวตของออบเจกตใด ออบเจกตหนงในไดเรคทอร เชน ขนตอนการตรวจสอบผใชจะตองมการเปรยบเทยบ รหสลบทผใชใหและรหสลบทเกบไวในไดเรคทอรซงไคลเอนทไมมสทธอานรหส ลบจากไดเรคทอรไดแตสามารถเปรยบเทยบได ๐ List: เปนการรองขอรายการทอยภายใตซบทรหนงใน DIT ๐ Search: เปนการคนหาออบเจกตในไดเรคทอรทตรงกบเกณฑทก าหนด ๐ Abandon: เปนการยกเลกการรองขอจากไคลเอนท นอกจากน DAP ยงมฟงกชนทใชส าหรบปรบเปลยน หรอเพมออบเจกตใหมในไดเรคทอรได ซงม 4 ฟงกชน ดงน ๐ Add: เปนการเพมออบเจกตใหมเขาไปในไดเรคทอร ๐ Remove: ลบออบเจกตทมอย ๐ Modified: เปนการปรบเปลยนคาแอตทรบวตของออบเจกตทมอยในไดเรคทอร เพม หรอลบแอตทรบวตของออบเจกตนน ๆ ๐ Modified Distinguished Name: เปนการรองขอเพอเปลยนคา RDN (Relative Distinguished Name) ของออบเจกตทอยในไดเรคทอร หรออาจเปนการยายเอนทร ไปไวในซบใหม ซงออบเจกตทเปนสาขายอยตองถกปรบเปลยนหรอยายไปดวย

Page 10: LDAP and Active Directory

3 2.2 Lightweight Directory Access Protocol (LDAP) ขอเสยของโปรโตคอล DAP คอการเขยนโปรแกรมตองใชทรพยากรมากอกทงความซบซอของโปรโตคอลทมมากถาตองเขาถงไดเรคทอรแบบกระจายหากมการใชทรพยากรของเครองมากเกตไปอาจท าใหเครองไคลเอนททจะตดตง DAP ท างานชาลงดวยเหตนจงมการพฒนาโปรโตคอล LDAP (Lightweight Directory Access Protocol) ซงเปนโปรโตคอลทใชทรพยากรนอยและงายตอการใชงานมากกวา DAP LDAP ไมไดถกก าหนดไวในขอก าหนดของมาตรฐาน x.500 แตเปนโปรโตคอลถกคดคนและพฒนาขนทมหาวทยาลยมชแกนเพอใหไคลเอนทใชอนเตอรเฟสกบไดเรคทอร x.500 ซงตอมา LDAP ไดถกยอมรบโดยมาตรฐานอนเทอรเนตใหเปนโปรโตคอลมาตรฐานส าหรบเขาใชไดเรคทอรและไดรบการยอมรบจากบรษททพฒนาซอฟตแวรเกยวกบเครอขายชอดงหลายบรษทปจจบน LDAP ไดพฒนามาถงเวอรชนท 3 (LDAPv3) ซงไดพฒนาเพอแกไขขอบกพรองของเวอรชน 2 และยงเพมขอก าหนดเพอให LDAP สามารถใชไดกบไดเรคทอรอน ๆ ทไมใช x.500 ไดดวย โครงสรางขอมลของ LDAP จะเปนแบบเดยวกนกบทก าหนดใน x.500 และมฟงกชน อน ๆ ทจ าเปนส าหรบการสอสารระหวางไคลเอนทและเซรฟเวอรเพอใหผใชตดตอกบไดเรคทอรไดไคลเอนทของ LDAP จะตดตอกบ DSA โดยผาน LDAP โพรไวเดอร หรอ LDAP เซรฟเวอรซงจะท าหนาทเสมอนเปนตวแทนของเครองไคลเอนทในการตดตอกบไดเรคทอร LDAP โพรไวเดอรจะตดตอกบเรคทอรโดยใชโปรโตคอล DAP อกทหนงถา LDAP ไคลเอนทตองการตดตอกบไดเรคทอรอนทไมใช x.500 กเพยงแคเปลยน LDAP โพรไวเดอรเทานนเพราะเปนสวนทจะตดตอกบไดเรคทอรอกทหนง LDAP เปนโปรโตคอลทงายและใชรซอรสของไคลเอนทนอยกวา DAP มาก และเนองจาก LDAP ไดถกออกแบบมาเพอใหสามารถตดตอกบไดเรคทอรประเภทอนได ท าใหสามารถรวมเอา LDAP เขาไปกบแอพพลเคชนไดหลายประเภทเหตท LDAP งายและใชรซอรสนอยกวา DAP กเนองจาก ๐ รองรบเฉพาะบางฟงกชนของ DAP เทานน ๐ การรองขอขอมลจากไดเรคทอรจะงายกวา เนองจาก LDAP โพรไวเดอรจะท าหนาท แทนสวนใหญ ๐ การเขารหสขอมลของประเภทและคาของแอตทรบตทงายกวา ๐ การเขารหสขอมลของโปรโตคอลงายกวา เชน DN ๐ ใชโปรโตคอล TCP แทนการใชโปรโตคอลของ OSI LDAP มฟงกชนทใชรองขอขอมลจากไดเรคทอร 3 ฟงกชนในขณะท DAP ม 5 ฟงกชน ซงฟงกชนดงกลาวมดงน

Page 11: LDAP and Active Directory

4 ๐ LDAP Compare: คลายกบฟงกชนของ DAP คอ ใชส าหรบเปรยบเทยบคาของ แอตทรบวตทผใชใหมากบคาทเกบไวในไดเรคทอร ๐ LDAP Search: ใชส าหรบคนหาเอนทรทอยในไดเรคทอรทมคาแอตทรบวตตรงกบ ท ผใชก าหนด นอกจากนฟงกชนยงใชแทนฟงกชน Read และ List ของ DAP ดวย ๐ LDAP Abandon: ใชส าหรบยกเลกการรองขอขอมลจากไดเรคทอร สวนฟงกชนทใชส าหรบปรบเปลยนขอมลทอยในไดเรคทอรจะคลายกบของ DAP โดยม 4 ฟงกชนดงน ๐ LDAP Modify: ใชปรบเปลยนคาแอตทรบวตของเอนทรซงจะม 3 ฟงกชนยอยคอ เพมและลบแอตทรบวตและเปลยนคาของแอตทรบวต ๐ LDAP Add: เพมเอนทรใหมเขาไปใน DIT ๐ LDAP Delete: ลบเอนทรทอยใน DIT ๐ LDAP Modify RDN: การรองขอเพอเปลยนคา RDN ของเอนทร x.500 และ LDAP เปนแบบอางองทท าใหหลายบรษทไดน ามาเปนแมแบบในการพฒนาไดเรคทอรเซอรวสของตวเองซงในบทนผเขยนจะกลาวถงไดเรคทอรเซอรวสทเปนทนยมในปจจบนคอ NDS eDirectory ของบรษท โนเวลล และ ADS ของบรษท ไมโครซอฟท OpenLDAP ไดเรคทอรเปนฐานขอมลพเศษทออกแบบเพอใหสามารถคนหาอานและเขาถงขอมลไดอยางมประสทธภาพมากกวาฐานขอมลทวไปไดเรคทอรเปนฐานขอมลเชงค าอธบายหรอมขอมลเกยวกบคณสมบตหรอแอตทรบวตและรองรบการคนหาทสามารถก าหนดคณสมบตของขอมลทตองการคนหาไดคอนขางละเอยดแตในการอพเดตนนคอนขางจะท าไดยากกวาและไมมฟเจอรในการอพเดตขอมลทซบซอนเหมอนฐานขอมลประเภทอน ๆ LADP เปนไลทเวตโปรโตคอลทใชส าหรบการเขาถงไดเรคทอรเซอรวสโดยเฉพาะไดเรคทอร x.500 โปรโตคอล LADP ท างานอยบน TCP/IP หรอโปรโตคอลคอนเนกชนโอเรยนเตดอน ๆ รายละเอยดของโปรโตคอลนก าหนดอยใน RFC 2251 ซงเปน LDAPv3 หรอเวอรชน 3 และในเอกสาร RFC 3377 อธบายการเขาถงในมมมองของผใชงาน

Page 12: LDAP and Active Directory

5 2.2.1 โครงสรางและรปแบบขอมล โครงสรางและรปแบบของขอมลทจดเกบใน LDAP นนจะอยบนพนฐานของเอนทร (Entry)โดยเอนทรเปนชดขอมลซงประกอบดวยแอตทรบวตทมชอเฉพาะหรอ DN (Distinguished Name) ซงชอเฉพาะนจะเปนสงทชไปยงแตละเอนทรในไดเรคทอรแตละแอตทรบวตของเอนทรจะจดเปนประเภทหรอไทป (Type) และมคา หรอแวลล (Value) ทก าหนดใหกบแอตทรบวตนน หนงคาหรอมากกวากไดประเภทของแอตทรบวตนนจะเปนตวอกษรยอหรอชอสน ๆ เชน ประเภท cn กจะหมายถงชอทวไปหรอ Common Name สวนแอตทรบวตประเภท email กจะหมายถง Email Address นนเอง สวนรปแบบขอมลของคาทก าหนดใหกบแตละแอตทรบวตนนกขนอยกบประเภทของแอตทรบวตยกตวอยางเชนแอตทรบวตประเภทcnสามารถก าหนดใหคาเปน Babs Jensen สวนแอตทรบวต mail กอาจก าหนดคาใหเปน [email protected]สวนแอตทรบวต JpegPhoto กจะเกบขอมลรปภาพประเภท JPEG ซงเปนขอมลประเภทไบนาร เอนทรทจดเกบใน LDAP จะมโครงสรางแบบมล าดบชน หรอทร (Tree) โดยปกตโครงสรางนจะใชแทนโครงสรางทางภมศาสตรหรอตามโครงสรางขององคกรยกตวอยางเชนเอนทรทแทนประเทศจะจดเกบไวบนสดของทรต าลงมากจะเปนเอนทรส าหรบรฐหรอองคกรระดบประเทศและต าลงไปอกกเปนอะไรกไดทตองการ ดงรปท แสดงโครงสรางของไดเรคทอร LDAP

รปท 2.1 : LDAP Directory Tree

Page 13: LDAP and Active Directory

6 นอกจากนทรอาจจดโดยใชโครงสรางของอนเทอรเนตโดเมนซ งโครงสรางแบบนเปนทนยมเนองจากสามารถใชงานรวมกบ DNS ได รปท 1.5 แสดงไดเรคทอร LDAP ทจดตามโครงสรางของ DNS

รปท 2.2 : LDAP Directory Tree (Internet Naming) LDAP จะอนญาตใหควบคมแอตทรบวตวาอะไรทจ าเปนตองมหรออะไรทอนญาตใหใชไดโดยก าหนดผานแอตทรบวตพเศษทชอ objectClass โดยคาทก าหนดใหกบ objectClass จะก าหนดกฎสกมา (Schema) ทเอนทรนนจะตองใช 2.2.2 การก าหนดชอและการคนหา แตละเอนทรจะถกอางถงไดโดยใชชอเฉพาะหรอ DN (Distinguished Name) ซงชอเฉพาะนจะประกอบดวยชอของเอนทรนนหรอ RDN (Relative Distinguished Name) และตามดวยชอของเอนทรทอยระดบเหนอกวาตามสายไปจนถงรทยกตวอยางเชนเอนทร Barbara Jensen ในทรตามรปดานบนจะมชอ RDN เปน uid=babs สวนชอเฉพาะ DN กจะเปน uid=babs, ou=People, dc=example, dc=com รปแบบขอมลของชอเฉพาะ DN ไดก าหนดไวใน RFC2253 (Lightweight Directory Access Protocol (v3): UTF-8 String Representation of Distinguished Names การคนหาและอพเดตขอมลใน LDAP สามารถท าไดแตโดยสวนใหญจะเปนการคนหาและอานขอมลจากไดเรคทอรมากกวาการแกไขปรบปรงขอมลในการคนหานน LDAP จะอนญาตใหคนหาเฉพาะบางสวนของฐานขอมลโดยเปรยบเทยบกบเงอนไขทก าหนดเมอตอนคนหาเมอพบแลวกสามารถดงขอมลเอนทรนนออกมาได

Page 14: LDAP and Active Directory

7 ยกตวอยางเชนเมอตองการคนหาขอมลจากทรทอยภายใต Dc=com ส าหรบบคคลทชอ Barbara

Jensen เพออานทอยอเมลของบคคลนน LDAP จะอนญาตใหท าไดอยางงายดายหรอถาตองการคนหาขอมลทอยภายใต st-California. C=US ส าหรบองคกรทมค าวา “Acme” ในชอเพอคนหาหมายเลขแฟกซ กสามารถท าไดไมยากเชนกน บางไดเรคทอรนนจะไมมกลไกปองกนการเขาถงขอมลอยางทไมไดรบอนญาตซงเปนผลท าใหใครกตามสามารถอานขอมลในไดเรคทอรไดแตส าหรบ LDAP แลวจะมกลไกในการพสจนทราบตวตนของไคลเอนททจะเขาถงขอมลซงเปนการปองกนการเขาถงขอมลโดยไมไดรบอนญาตไดนอกจากน LDAP ยงรองรบการรกษาความลบ (Confidentiality) และการรกษาความคงสภาพของขอมล (Integrity) ไดเชนกน 2.2.3 LDAP เซรฟเวอรและไคลเอนท LDAP ไดเรคทอรเซอรวสเปนระบบไคลเอนทเซรฟเวอรเซรฟเวอรหนงเครองหรอมากกวาจะจดเกบขอมลซงจะประกอบกนเปน DIT (Directory Information Tree) ไคลเอนทจะเชอมตอมายงเซรฟเวอรเพอรองขอขอมลเซรฟเวอรกจะตอบกลบดวยขอมลทไคลเอนทตองการหรออาจชใหไปหาขอมลจากเซรฟเวอรเครองอนถาไมพบขอมลไคลเอนทตองการในเซรฟเวอรเครองนน ไมวาไคลเอนทจะเชอมตอเขากบเซรฟเวอรเครองไหนกจะเหนไดเรคทอรเดยวกนถาเปนชอ DN เดยวกนกจะชไปยงเอนทรเดยวกนไมวาไคลเอนทจะรองขอไปทเซรฟเวอรใดกตามซงกเปนคณสมบตทส าคญของโกลบอลไดเรคทอรอยาง LDAP จรง ๆ แลว LDAP เปนโปรโตคอลส าหรบเขาถงขอมลใน x.500 ไดเรคทอรเซอรวส เรมตนไคลเอนทจะเขาถง x.500 ไดเรคทอรเซอรวสผานเกตเวยหลงจากนนเกตเวยกจะใชโปรโตคอล DAP เพอเขาถงขอมลใน x.500 เซรฟเวอรตอไป DAP เปนโปรโตคอลแบบเฮฟวเวต (Heavyweight) ซงท างานบนชดโปรโตคอล OSI และตองใชรซอรสคอนขางมากสวน LDAP ท างานบนชดโปรโตคอล TCP/IP และมฟงกชนเกอบจะทกฟงกชนท DAP มแตท างานไดอยางมประสทธภาพมากกวา ในขณะท LDAP ยงคงใชส าหรบเขาถง x.500 ไดเรคทอรผานเกตเวยแตปจจบนสวนใหญ LDAP จะท างานอยบน x.500 ไดเรคทอรเสยเองนนหมายความวาการเชอมตอไคลเอนทนนไมจ าเปนตองผานเกตเวยอกตอไป ส าหรบ LDAP เซรฟเวอรจะท างานโดยรนดมอนทชอ “slapd” ซงสามารถเขาถงไลทเวต x.500 ไดเรคทอรเซรฟเวอรซงเปนเซรฟเวอรทไมรองรบ DAP ทกฟงกชน และไมใช x.500 เซรฟเวอรอยางสมบรณ LDAv3 ถกพฒนาในชวงปลายทศวรรษ 1990 เพอแทน LDAv2 ซงมสวนทเพมมาคอ

๐ การพสจนทราบตวตนทแขงแกรงและการรกษาความปลอดภยผาน SASL

Page 15: LDAP and Active Directory

8 ๐ รองรบ CA (Certificate Authentication) และการรกษาความปลอดภยขอมลผาน TLS (SSL) ๐ รองรบหลายภาษาผาน Unicode ๐ รองรบ Referrais และ Continuations ๐ รองรบ Schema Directory ๐ Extensibility (Controls, extended operations และอน ๆ) LDAPv2 ทก าหนดใน RFC 3494 กลาสมยไปแลวซงไมควรใชงานอกตอไปและควรอพเกรดให

เปนเวอรชน 3 เพอใหมประสทธภาพและมความปลอดภยกวา Slapd เปน LDAP ไดเรคทอรเซรฟเวอรทสามารถรนบนหลาย ๆ เพลตฟอรมและสามารถตดตงเพอ

ใชงานสวนตวไดเองโดยสามารถจดเกบขอมลไดเกอบจะทกประเภทหรอสามารถเชอมตอเขากบไดเรคทอรอนหรอไมกตดตงแบบสแตนดอะโลนกไดฟเจอรทส าคญของ LDAPv3 ไดแก

๐ Slapd เปน LDAPv3 เซรฟเวอรทรองรบการท างานของ LDAP บน IPv4 และ IPv6 และ Unix IPC ๐ slapd รองรบการพสจนทราบตวตนและการเขารหสขอมลโดยการใช SASL ซง

เวอรชนทใชงานเปนของ Cyrus SASL ซงรองรบการเขารหสแบบ DIGEST-MD5, EXTERNAL และ GSSAPI

๐ การรกษาความปลอดภยในระดบทรานสปอรตโดย slapd รองรบการพสจนทราบ ตวตนโดยใชใบรบรองอเลกทรอนกสหรอเซอรตฟเกตการรกษาความลบและความคง สภาพของขอมลโดยใช TSL หรอ SSL ซงเวอรชนทใชคอ OpenSSL ๐ การควบคมการเขาถงซงการควบคมนจะท างานรวมกบการพสจนทราบหรอก าหนด เปนหมายเลข IP โดเมนเนม หรอเงอนไขอน ๆ slapd รองรบการควบคมการเขาถง แบบ Static และ dynamic ๐ Slapd รองรบภาษาตาง ๆ โดยใช Unicode และ language tag ๐ Slapd สามารถจดเกบขอมลไวในฐานขอมลไดหลายประเภท เชน BDB ซงเปน ฐานขอมลทประสทธภาพเกยวกบทรานแซคชน HDB เปนฐานขอมลและ Hierarchy ทมประสทธภาพสงเชนกน LDBM เปนไลทเวต DBM และ SHELL เปนครปตทไว ท างานแบคเอนดสวน PASSWD เปนแบคเอนดทเชอมตอเขากบไฟล passwd ของ ระบบ ฐานขอมล BDB HDB และ Slepycat Berkeley DB สวน LDBM จะใช Berkeley DB หรอ GDBM ๐ รองรบการท างานกบฐานขอมลไดหลายกอนโดย slapd สามารถคอนฟกใหท างาน

Page 16: LDAP and Active Directory

9 รวมกบหลายฐานขอมลพรอม ๆ กนซงหมายความวา slapd เซรฟเวอรสามารถ ตอบสนองกบการรองขอขอมลจากหลายสวนของ LDAP tree ซงแตละสวนของ Tree นอาจจดเกบไวในตางฐานขอมลกนกได ๐ ถาตองการปรบเปลยน slapd จะอนญาตใหเขยนโมดลขนมาเพมไดโดย slapd จะ ประกอบดวยสองสวนคอ สวนฟรอนตเอนด ซงจะท าหนาทจดการการเชอตอกบไคล เอนทโดยใชโปรโตคอล LDAP สวนทสองจะเปนแบคเอนดทท าหนาทในการจดการ ฐานขอมล

Page 17: LDAP and Active Directory

10

บทท 3 ความหมายและหลกการท างานของ Active Directory

3.1 Directory Services ไดเรคทอรเซอรวส (Directory Services) เปนองคประกอบทส าคญส าหรบเครอขายในปจจบน

แอพพลเคชน ทใชในระบบเครอขายเรมมแนวโนมทจะใชไดเรคทอรเซอรวสเปนโมดลส าหรบการตรวจสอบสทธของผใชประโยชนของไดเรคทอรเซอรวสนนมมากมายทส าคญ เชน การวางแผนและจดการทรพยากร การรกษาความปลอดภยในเครอขายและการใหบรการคนหาขอมล เปนตน สงทท าใหมการใชงานไดเรคทอรเซอรวสอยางแพรหลายในปจจบนกเนองจากโปรโตคอล LDAP (Lightweight Directory Access Protocol) ซงเปนโปรโตคอลมาตรฐานส าหรบเขาถงขอมลทเกบไวในไดเรคทอรเพราะโปรโตคอลนจะไมขนกบแพลตฟอรมหรอระบบปฏบตการทใชไดเรคทอรทวไป คอ ฐานขอมลทจดเกบขอมลเกยวกบสงใดสงหนงตวอยางเชน สมดหนาเหลองของโทรศพท กจะจดเกบขอมลทเกยวกบเบอรโทรศพทและชอและทอยของเจาของเบอรนนๆ ถาเปนระบบไฟลไดเรคทอรกจะจดเกบขอมลเกยวกบไฟลตางๆ หรอ ระบบ DNS กจะจดเกบหมายเลขไอพแอดเดรสและชอโดเมน เปนตน สวนไดเรคทอรของเครอขายกจะจดเกบขอมลทเกยวกบเครอขาย เชน คอมพวเตอร ผใช เครองพมพ แอพพลเคชน เปนต น นอกจากนไดเรคทอรยงสามารถใหบรการในการสบคนขอมลทจดเกบในไดเรคทอรไดดวย 3.2 บรการไดเรคทอร คออะไร ?

ไดเรคทอรเปนฐานขอมลพเศษทจะสามารถอานและคนหาขอมลไดเรวกวาการเขยน การจดเกบขอมลของไดเรคทอรสวนใหญจะเปนแบบกระจาย (Distributed) เพอใหการอานและคนหาเรว คณสมบตนจะตางจากฐานขอมลแบบ RDBMS (Rational Database Management System) ซงเปนฐานขอมลแบบน จะเขยนไดเรวกวา สวนเนตเวรคไดเรคทอรคอ ฐานขอมลทจดเกบขอมลเกยวกบทรพยากรตาง ๆ ของเครอขาย เชนคอมพวเตอร ยสเซอร และเครองพมพ เปนตน และใหบรการกบผใชได เชน ใหบรการขอมลเกยวกบทรพยากรทมอยในเครอขายแกผใช และรวมทงการควบคมการเขาใชทรพยากรเหลานนได หลกการของเนตเวรคไดเรคทอรจะคลายๆ กบ ไดเรคทอรของระบบไฟลนนเองโดยขอแตกตางกคอ ไดเรคทอรของระบบไฟลเปนระบบทจดเกบไฟลใหสามารถคนหาไดงาย ในขณะทไดเรคทอรของเครอขายจะจดเกบขอมลเกยวกบผใช เพอเปนขอมลส าหรบการควบคมการเขาใชทรพยากรเหลานนดวย

Page 18: LDAP and Active Directory

11 3.3 Active Directory Service ADS (Active Directory Service) ถอเปนหวใจของระบบเครอขายวนโดวส ซงใหบรการในการจดการทรพยากรของเครอขายพรอมทงมระบบรกษาความปลอดภยในการเขาใชทรพยากรเหลานนดวย Active Directory จดเกบขอมลเกยวกบออบเจกตตางๆเชน ยสเซอร กลมของยสเซอรคอมพวเตอร โดเมน หนวยงานขององคกร (Organizational Unit หรอ OU) และนโยบายการรกษาความปลอดดภย (Security policy) ไดเรคทอรนนจะถกเกบไวทโดเมนคอนโทรลเลอร (Domain Controller หรอ DC) ซงผใชผดแลระบบหรอแอพพลเคชนสามารถเขาใชขอมลทจดเกบในไดเรคทอรได Active Directory คอไดเรคทอรของเครอขายทมใหมากบวนโดวสซงในบทนจะไดกลาวถงโครงสรางพรอมทงฟเจอรทส าคญใหผอานไดพจารณาเพอเปรยบเทยบกบไดเรคทอรของบรษทอน 3.3.1 โครงสรางของ Active Directory วนโดวส 2000/2003 ยงคงใชโดเมน (Domain) แตจะแตกตางจากโดเมนของวนโดวส NT ซงหลกการของโดเมนใหมนจะเปนหวใจส าคญของวนโดวส 2000/2003 ส าหรบเครอขายทใชวนโดวส NT นนโดเมนคอนโทรลเลอร (Domain Controller) จะแบงออกเปน 2 ประเภทคอ PDC (Primary Domain Controller) และ BDC (Backup Domain Controller) โดย BDC จะท าหนาทเปนโดเมนคอนโทรลเลอรในกรณท PDC หยดท างาน ในสภาพแวดลอมทใชวนโดวส 2000/2003 เซรฟเวอรจะมเพยงประเภทเดยวคอ DC (Domain Controller) ซงในโดเมนหนง ๆ อาจม DC หลายเครองโดยแตละเครองสามารถเปลยนแปลงฐานขอมลของไดเรคทอรไดซงถามการเปลยนแปลงเครองนนกจะสงการเปลยนแปลงไปยง DC เครองอน ๆ ในโดเมนโดยอตโนมต การถายโอนฐานขอมลของไดเรคทอรนเรยกวา “เรพลเคชน (Replication)” โดเมนแรกทสรางขนจะเปนรทโดเมน (Root Domain) ซงจะอยบนสดของไดเรคทอรทร สวนโดเมนยอยจะอยภายใตรทเมนซงโดเมนยอยนจะตองมชอทไมซ ากนถามรทเมนและอยางนอยหนงโดเมนยอยจะเรยกวา “เมนทร (Domain Tree)W ดงแสดงในรปท 3.1

รปท 3.1 : โดเมนทร

Page 19: LDAP and Active Directory

12 บางหนวยงานอาจมมากกวาหนงโดเมนโดยแตละเมนจะมโดเมนทรการรวมเมนทรหลายโดเมนทรมารวมกนจะเรยกทรใหมวา “โดเมนฟอเรสต (Domain Forest)” ดงแสดงในรปท 3.2

รปท 3.2 : โดเมนฟอเรสต

ไซต (Site) เปนออบเจกตทใชแทนเครอขายทเชอมตอกนดวยความเรวสงการแบงไซตยดซบเนต (Subnet) เปนหลกไซตหนง ๆ อาจประกอบดวยหนงซบเนตหรอมากกวากไดโดยลงคทเชอมตอระหวางซบเนตตองมความเรวสงหรอเปนเครอขายแบบ LAN สวนลงคทเชอมตอระหวางไซตนนสวนใหญจะเปนลงคทมแบนตวธต าเชน WAN เปนตน Schema Active Directory มองคประกอบทส าคญ ดงน ๐ Obijects: ออบเจกตเกบขอมลของสงตางๆ ทอยในเครอขายเชน คอมพวเตอร เครองพมพ ผใช เซรฟเวอร เซอรวส เปนตนซงเปนองคประกอบพนฐานของเครอขาย ๐ Attributes: แอตทรบวตเปนคณสมบตของออบเจกตเชน รหสลบและยสเซอรเนม เปนแอตทรบวตของออบเจกตยสเซอร (User) ออบเจกตแตละประเภทจะมแอตทรบวต ทตางกนอยางไรกตามออบเจกตตางประเภทอาจมบางแอตทรบวตทเหมอนกนกได เชน คอมพวเตอร และเครองพมพ อาจมแอตทรบวตทเปนหมายเลขไอพ เปนตน

๐ Schema: สกมาจะเปนตวก าหนดวาออบเจกตแตละประเภทมแอตทรบวตใดบาง เชน

Page 20: LDAP and Active Directory

13 ออบเจกต ประเภทยสเซอรอาจมแอตทรบวตคอ ชอ เบอรโทรศพท อเมล รหสลบ ๐ Containers: คอนเทนเนอรจะคลายกบโฟลเดอรในระบบไฟลซงโฟลเดอรจะมไฟล และโฟลเดอรประกอบอยขางในสวนคอนเทนเนอรของไดเรคทอรจะมคอนเทนเนอร และออบเจกตอยภายใตคอนเทนเนอรกมแอตทรบวตเหมอนกบออบเจกตแตคอน เทนสเนอรไมไดแทนเอนทรจรงๆ เหมอนออบเจกตคอนเทนเนอรใน AD จะแบง ออกเปน 3 ประเภท ดงน ๐ Domains: เปนขอบเขตของการรกษาความปลอดภยในเครอขาย ๐ Sites: ไซตจะแทนเครอขายหนงทเชอมตอกนดวยแบนดวธสง เชน LAN เปนตน ซงไซตเปนคอนเทนเนอรทแทนเครอขายทองถนแตละท เชน ส านกงานทอยหาง ไกล เปนตน ๐ Organizational Units: ออรแกไนเซชนนอลยนต หรอ OU เปนคอนเทนเนอรท สามารถใสคอมพวเตอร ผใช เครองพมพ หรอ OU ยอยกได แต OU ไมสามารถ ใสออบเจกตจากโดเมนอนไดเนองจากเราสามารถสราง OU ยอยภายใต OU หลก ได ดงนน จงสามารถออกแบบคอนเทนเนอรใหเหมอนกบโครงสรางขององคกร ซงจะชวยลดจ านวนโดเมนลงได

รปท 3.3 : โครงสรางของ AD

Page 21: LDAP and Active Directory

14 3.4 AD Naming

การเรยกชอในวนโดวส 2000/2003 นนจะแตกตางจากของวนโดวสเอนทกลาวคอในวนโดวสเอนทนชอคอมพวเตอรจะเปนชอแบบ NetBIOS ซงมความยาวไมเกน 15 ตวอกษร ในวนโดวส 2000/2003 นนการเรยกชอจะใชตามมาตรฐานของ LDAP (Lightweight Directory Access Protocol) โดยชอจะแบงออกเปน 2 ประเภทคอชอเฉพาะ (Distinguished Name) และชอทวไป (Common Name) ชอเฉพาะเปนชอเตมของพาธ (Path) ตงแตรทไปจนถงออบเจกตซงชอนจะชไปยงออบเจกตทอยในไดเรคทอรชอเฉพาะประกอบดวยสวนตาง ๆ ดงน ๐ DC – Domain Component: ชอโดเมน ๐ OU – Organizational Unit: ชอขององคกรยอย ๐ CN – Common Name: เปนแอตทรบวตทบงบอกชอของออบเจกตเอง ตวอยางชอเฉพาะของผใช เชน /DC = TH/DC = CO/DC = gitex /CN = Jatuchai Pangjun. สมมตวาผใชคนนเปนสมาชกของ engineer. gitex.co.th ชอเฉพาะกจะเปลยนเปน

/DC = TH/DC = CO/DC = gitex /DC = engineer/CN = Users/CN = Jatuchai Pangjun. ชอเฉพาะของคอมพวเตอร เชน

/DC = TH/Dc = Co/Dc = /DC = engineer/CN = Computers/CN = mahasarakham นอกจากนวนโดวส 2000/2003 ยงรองรบมาตรฐานการเรยกชอแบบอน

ตาราง 3.1 : มาตรฐานการเรยกชอแบบอน ๆ ทรองรบโดยวนโดวส 2000

มาตรฐานการเรยกชอ ตวอยาง Friendly name/RFC 822 [email protected] LDAP URL LDAP://gitex.co.th/CN = jatuchai, OU =

engineer, O = GETEX,C=TH Universal Naming Convention (UNC) \\gitex.co.th\user\jatuchai\index.htm

Page 22: LDAP and Active Directory

15 3.5 Global Catalog การเรยกชอของออบเจกตนนคอนขางจะซบซอน ซงบางครงอาจท าใหการคนหาออบเจกตไดยาก GC (Global Catalog) เปนเซอรวสทชวยใหการคนหาออบเจกตตางๆ ในไดเรคทอรงายขน GC เปนโดเมนคอนโทรลเลอรทจดเกบขอมลของออบเจกตของฟอเรสตโดย GC จะเกบขอมลทกอยางของออบเจกตในโดเมนท GC เปนโดเมนคอนโทรลเลอรอยและจะจดเกบขอมลบางสวนของออบเจกตจากโดเมนอนเพอใชส าหรบการสบคนทเรวขนการคนหานนสามารถคนหาดวยชอหรอแอตทรบวตของออบเจกตไดดวย ตวอยางเชนถาผใชตองการคนหาอเมลของผใชอกคนหนงผใชคนนนสามารถใช GC ในการคนหาโดยอาจจะใชชอของผใชอกคนทตองการคนหา GC จะแสดงออบเจกตของผใชทมชอตรงกบทก าหนด เมอออบเจกตใหมถกสรางและเพมเขาไปในไดเรคทอร AD จะก าหนดหมายเลขเฉพาะส าหรบออบเจกตนนซงหมายเลขเฉพาะนเรยกวา “GUID (Globally Unique Identifier)” หมายเลขเฉพาะนจะไมซ ากบ GUID ของออบเจกตใด ๆ ในไดเรคทอรและจะไมเปลยนถงแมวาออบเจกตนนจะถกยาย GUID เปนหมายเลขทมความยาว 128 บต เนองดวยคณสมบตพเศษของ GUID นท าใหการสบคนขอมลในไดเรคทอรไดออบเจกตทไมซ ากน 3.6 Replication Active Directory มความส าคญตอระบบเครอขายทใชวนโดวสมาก ดงนน เซอรวสนตองสามารถใหบรการไดตลอดเวลาและตองมประสทธภาพในการใหบรการสง เพอเพมความเชอถอไดของ ADS ฐานขอมลตองจดเกบอยในหลายเซรฟเวอรซงถาหากเซรฟเวอรหนงไมสามารถใหบรการได เซรฟเวอรยงคงใหบรการได ประโยชนของการเกบฐานขอมลไวในหลายเซรฟเวอรไมเพยงแตเปนการแบคอพแตยงชวยลดโหลดของแตละเซรฟเวอรไดอกดวย สวนทยากทสดอยางหนงของการส ารองฐานขอมลกคอการถายโอนฐานขอมลระหวางเซรฟเวอร (Replication) ซงการถายโอนนจะตองมนใจวาทกๆ เซรฟเวอรมฐานขอมลททนสมยและเหมอนกนทงหมด ADS ใชระบบมลตมาสเตอร (Multimaster) กลาวคอ ผดแลระบบสามารถอพเดตขอมลทเซรฟเวอรใดกได ซงการเปลยนแปลงนจะถกถายทอดไปยงเซรฟเวอรทเหลอโดยอตโนมต เพอปองกนการขดแยงกนของการอพเดตขอมลทก ๆ ครงกอนทจะมการอพเดตขอมล ADS จะก าหนดหมายเลขเฉพาะ USN (Unique Sequence Number) ใหกบการอพเดตแตละครง ซงเซรฟเวอรแตละเครองจะใชหมายเลขนส าหรบการตดตามการอพเดตฐานขอมลไดเรคทอร เพอปองกนการขดแยงของขอมลในระหวางการอพเดตไดเรคทอรในขณะใดขณะหนง ADS จะอนญาตใหเพยงเซรฟเวอรเดยวเทานนทมสทธในการอพเดตฐานขอมล ซงสทธในการอพเดตฐานขอมลน

Page 23: LDAP and Active Directory

16 สามารถโอนใหกบเซรฟเวอรเครองอนไดลกษณะส าคญนเรยกวา “FSMO (Flexible Single Master Operation)” 3.7 Security ระบบการรกษาความปลอดภยนนไดถกอนทเกตเขากบ Active Directory ตงแตการลอกอน และการควบคมการเขาใชออบเจกตตางๆ Active Directory รองรบการลอกอนแบบครงเดยว (Single Sign-on) โดยเมอผดแลระบบลอกอนผานแลวสามารถจดการไดเรคทอรไดทกอยาง สวนผใชกสามารถเขาใชทรพยากรตาง ๆ ทวเครอขาย Active Directory รองรบ SSL/PCT. SASL x.509 PKI และใช Kerberos ส าหรบการตรวจสอบผใช (Authentication)

Page 24: LDAP and Active Directory

17

บทท 4 สรปและวเคราะห

นอกจากประโยชนในการคนหาขอมลไดอยางรวดเรวแลว Directory ยงเปนโครงสรางขอมลทแสดงให User เหนขอมลทงหมดไดจากมมมองเดยว (Single Logical View) แมวาแทจรงแลว ขอมลเหลานนอาจถกเกบแยกกนอยอยางกระจดกระจายตาม Host ตางๆ บน Distributed System ซงขอดตางๆ เหลาน ท าใหมการพฒนา Application ทใช Directory Service ออกมามากมาย และ LDAP กคอหนงในมาตรฐานทใชจดการ การรบสงขอมลระหวาง Application Server ทเกบ Directory เหลาน กบ Client Application ทเปนฝายเรยกดขอมลจาก Directory

อกสาเหตทจ าเปนตองมมาตรฐานในการเขาถงขอมลใน Directory นนกเพอใหการพฒนา Application ทใชตดตอกบ Directory Server นนมความยดหยนขน โดย Developer สามารถเรยกใช API (Application Programming Interface) เพอตดตอกบ Directory Service ได โดยไมตองทราบวธการเขาถงโดยละเอยด เชนโครงสรางของ Directory หรอ ชนดของขอมล ( Data Type) ภายใน หรอไมจ าเปนตองปรบแก Application ใหมหากมความตองการ Data Type ใหมๆ เปนตน

นอกเหนอจากทกลาวมาขางตนแลวการมมาตรฐานเดยวกน ท าใหผผลต Application และ Networkdevice ทรองรบการใชงาน Directory Service มระเบยบวธทชดเจนเปนกลาง ท าใหการตดตอระหวาง Application จากตางผผลต หรอ ตาง Platform นนเปนไปไดอยางรวดเรว ถกตอง และปลอดภยโดยไมตองทราบขอมลทใชในการตดตอ เชน Platform ทใช , Host Name หรอ IP address เชนเดยวกบการทเราตองม TCI/IP, HTTP, FTP, RPC หรอ ORB เปนมาตรฐานทใชอยทวโลก

Page 25: LDAP and Active Directory

เอกสารอางอง

http://www.tumserver.com/index.php/articles1/34-aricle/46-ldap.html http://thaiwinadmin.blogspot.com/2008/03/kb2008114.html http://www.vcharkarn.com/vblog/94465/11 http://cpe.rsu.ac.th/ut/courses/T1-51/cpe489/portfolio/461820/directory.doc http://202.28.94.55/web/322461/2550/report/g16/ldap.html