Upload
jira1228
View
147
Download
1
Embed Size (px)
Citation preview
LDAP and Active Directory
เสนอ ดร.อรรจน โกญจนาท
จดท าโดย
นายวรพล ทองพม รหส 501091
รายงานนเปนสวนหนงของวชา Seminar Computer Engineering (CPE489)
สาขาวชาวศวกรรมคอมพวเตอร วทยาลยวศวกรรมศาสตร
มหาวทยาลยรงสต ประจ าปการศกษา 1/2553
ก
ค าน า
รายงานฉบบนไดศกษาคนควารวบรวมเนอหาจาก Web Site ทรนพรวบรวมไวสวนหนงและไดท าการดดแปลงแกไขเนอหาเพมเตมในสวนเรองของ LDAP โดยรายงานฉบบนไดเรยบเรยงและจดท าขน โดยนกศกษาทไดรบมอบหมายงานใหท าในรายวชา CPE489 โดยมเนอหาเกยวกบไดเรคทอรเซอรวสและ LDAP ผจดท าหวงเปนอยางยงวา เนอหาของรายงานฉบบนคงเปนพนฐานความรเพอน าไปใชใหเกดประโยชน หรออาจจะน ามาใชประกอบในการศกษาทางดานคอมพวเตอรซงรายงานฉบบนกเปนพนฐานความรของคอมพวเตอรของนกศกษาสาขาวศวกรรมคอมพวเตอร รวมถงสาขาอนๆและผทสนใจ ผจดท า นายวรพล ทองพม รหส 501091
ข ชอ : นายวรพล ทองพม รหส 501091 หวขอเรอง : Active Directory อาจารยผสอน : ดร.อรรจน โกญจนาท ปการศกษา : 2553
บทคดยอ ไดเรคทอรเปนสวนประกอบทส าคญของระบบบรหารและจดการเครอขายในปจจบนโดยเฉพาะเครอขายขนาดใหญ การจดการทรพยากรตาง ๆ ในเครอขายอาจเปนเรองยงยากถาไมมเครองมอชวยลดงานของผดแลระบบไดอยางมากจดเดนของไดเรคทอรเซอรวสในปจจบนคอ การรกษาความปลอดภย โดยจะมการควบคมจากสวนกลางผใชสามารถลอกอนครงเดยวกสามารถเขาถงทรพยากรทกอยางทผใชมสทธ คอนเซปตนเรยกวา“Single Sign-on” ในปจจบนไดเรคทอรเซอรวสสามารถบรหารเครอขาย WAN ไดเหมอนกบ LAN
ไดเรคทอรทก าลงเปนทนยมในปจจบนคอ eDirectory และ Active Directory โนเวลลจะไดเปรยบตรงทวาโนเวลลนนไดเรมพฒนาซอฟตแวรนกอน แตไมโครซอฟทจะไดเปรยบในดานการตลาด อยางไรกตามไดเรคทอรจากทงสองคายกมประสทธภาพไมแตกตางกนมากนก นอกจากไดเรคทอรไดกลาวถงนแลว ยงมไดเรคทอรจากคายอนทนาสนใจ เชน Sun ONE Directory Server จากซนไมโครซสเตม OpenLDAP ซงเปนไดเรคทอรของโอเพนซอรส ซงประสทธภาพกไมไดตางกนมากนก อยางไรกตามการใชงานไดเรคทอรในองคกรนน ยงมสวนประกอบอกหลายอยางทควรพจารณา เชน ราคา คาใชจายในการบ ารงรกษา ความงายในการดแลและจดการและบคลากรเปนตน
ค 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.
ง
สารบญ
หนา ค าน ำ ........................................................................................................................................................ ก บทคดยอภาษาไทย ................................................................................................................................... ข บทคดยอภาษาองกฤษ .............................................................................................................................. ค สารบญ .................................................................................................................................................... ง สารบญตาราง .......................................................................................................................................... ฉ สารบญรปภาพ ........................................................................................................................................ ช บทท 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
ฉ
สารบญตาราง หนา
ตารางท 3.1 มาตรฐานการเรยกชอแบบอน ๆ ทรองรบโดยวนโดวส 2000 …………………………….. 14
ช
สารบญรปภาพ หนา
รปท 2.1 LDAP Directory Tree ……………………………………………………………………….. 5
รปท 2.2 LDAP Directory Tree (Internet Naming) …………………………………………………… 6
รปท 3.1 โดเมนทร ................................................................................................................................. 11
รปท 3.2 โดเมนฟอเรสต ......................................................................................................................... 12
รปท 3.3 โครงสรางของ AD …………………………………………………………………………… 13
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 เปนตน
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) ของออบเจกตทอยในไดเรคทอร หรออาจเปนการยายเอนทร ไปไวในซบใหม ซงออบเจกตทเปนสาขายอยตองถกปรบเปลยนหรอยายไปดวย
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 ฟงกชน ซงฟงกชนดงกลาวมดงน
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 อธบายการเขาถงในมมมองของผใชงาน
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
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 จะอนญาตใหคนหาเฉพาะบางสวนของฐานขอมลโดยเปรยบเทยบกบเงอนไขทก าหนดเมอตอนคนหาเมอพบแลวกสามารถดงขอมลเอนทรนนออกมาได
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
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 สามารถคอนฟกใหท างาน
9 รวมกบหลายฐานขอมลพรอม ๆ กนซงหมายความวา slapd เซรฟเวอรสามารถ ตอบสนองกบการรองขอขอมลจากหลายสวนของ LDAP tree ซงแตละสวนของ Tree นอาจจดเกบไวในตางฐานขอมลกนกได ๐ ถาตองการปรบเปลยน slapd จะอนญาตใหเขยนโมดลขนมาเพมไดโดย slapd จะ ประกอบดวยสองสวนคอ สวนฟรอนตเอนด ซงจะท าหนาทจดการการเชอตอกบไคล เอนทโดยใชโปรโตคอล LDAP สวนทสองจะเปนแบคเอนดทท าหนาทในการจดการ ฐานขอมล
10
บทท 3 ความหมายและหลกการท างานของ Active Directory
3.1 Directory Services ไดเรคทอรเซอรวส (Directory Services) เปนองคประกอบทส าคญส าหรบเครอขายในปจจบน
แอพพลเคชน ทใชในระบบเครอขายเรมมแนวโนมทจะใชไดเรคทอรเซอรวสเปนโมดลส าหรบการตรวจสอบสทธของผใชประโยชนของไดเรคทอรเซอรวสนนมมากมายทส าคญ เชน การวางแผนและจดการทรพยากร การรกษาความปลอดภยในเครอขายและการใหบรการคนหาขอมล เปนตน สงทท าใหมการใชงานไดเรคทอรเซอรวสอยางแพรหลายในปจจบนกเนองจากโปรโตคอล LDAP (Lightweight Directory Access Protocol) ซงเปนโปรโตคอลมาตรฐานส าหรบเขาถงขอมลทเกบไวในไดเรคทอรเพราะโปรโตคอลนจะไมขนกบแพลตฟอรมหรอระบบปฏบตการทใชไดเรคทอรทวไป คอ ฐานขอมลทจดเกบขอมลเกยวกบสงใดสงหนงตวอยางเชน สมดหนาเหลองของโทรศพท กจะจดเกบขอมลทเกยวกบเบอรโทรศพทและชอและทอยของเจาของเบอรนนๆ ถาเปนระบบไฟลไดเรคทอรกจะจดเกบขอมลเกยวกบไฟลตางๆ หรอ ระบบ DNS กจะจดเกบหมายเลขไอพแอดเดรสและชอโดเมน เปนตน สวนไดเรคทอรของเครอขายกจะจดเกบขอมลทเกยวกบเครอขาย เชน คอมพวเตอร ผใช เครองพมพ แอพพลเคชน เปนต น นอกจากนไดเรคทอรยงสามารถใหบรการในการสบคนขอมลทจดเกบในไดเรคทอรไดดวย 3.2 บรการไดเรคทอร คออะไร ?
ไดเรคทอรเปนฐานขอมลพเศษทจะสามารถอานและคนหาขอมลไดเรวกวาการเขยน การจดเกบขอมลของไดเรคทอรสวนใหญจะเปนแบบกระจาย (Distributed) เพอใหการอานและคนหาเรว คณสมบตนจะตางจากฐานขอมลแบบ RDBMS (Rational Database Management System) ซงเปนฐานขอมลแบบน จะเขยนไดเรวกวา สวนเนตเวรคไดเรคทอรคอ ฐานขอมลทจดเกบขอมลเกยวกบทรพยากรตาง ๆ ของเครอขาย เชนคอมพวเตอร ยสเซอร และเครองพมพ เปนตน และใหบรการกบผใชได เชน ใหบรการขอมลเกยวกบทรพยากรทมอยในเครอขายแกผใช และรวมทงการควบคมการเขาใชทรพยากรเหลานนได หลกการของเนตเวรคไดเรคทอรจะคลายๆ กบ ไดเรคทอรของระบบไฟลนนเองโดยขอแตกตางกคอ ไดเรคทอรของระบบไฟลเปนระบบทจดเกบไฟลใหสามารถคนหาไดงาย ในขณะทไดเรคทอรของเครอขายจะจดเกบขอมลเกยวกบผใช เพอเปนขอมลส าหรบการควบคมการเขาใชทรพยากรเหลานนดวย
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 : โดเมนทร
12 บางหนวยงานอาจมมากกวาหนงโดเมนโดยแตละเมนจะมโดเมนทรการรวมเมนทรหลายโดเมนทรมารวมกนจะเรยกทรใหมวา “โดเมนฟอเรสต (Domain Forest)” ดงแสดงในรปท 3.2
รปท 3.2 : โดเมนฟอเรสต
ไซต (Site) เปนออบเจกตทใชแทนเครอขายทเชอมตอกนดวยความเรวสงการแบงไซตยดซบเนต (Subnet) เปนหลกไซตหนง ๆ อาจประกอบดวยหนงซบเนตหรอมากกวากไดโดยลงคทเชอมตอระหวางซบเนตตองมความเรวสงหรอเปนเครอขายแบบ LAN สวนลงคทเชอมตอระหวางไซตนนสวนใหญจะเปนลงคทมแบนตวธต าเชน WAN เปนตน Schema Active Directory มองคประกอบทส าคญ ดงน ๐ Obijects: ออบเจกตเกบขอมลของสงตางๆ ทอยในเครอขายเชน คอมพวเตอร เครองพมพ ผใช เซรฟเวอร เซอรวส เปนตนซงเปนองคประกอบพนฐานของเครอขาย ๐ Attributes: แอตทรบวตเปนคณสมบตของออบเจกตเชน รหสลบและยสเซอรเนม เปนแอตทรบวตของออบเจกตยสเซอร (User) ออบเจกตแตละประเภทจะมแอตทรบวต ทตางกนอยางไรกตามออบเจกตตางประเภทอาจมบางแอตทรบวตทเหมอนกนกได เชน คอมพวเตอร และเครองพมพ อาจมแอตทรบวตทเปนหมายเลขไอพ เปนตน
๐ Schema: สกมาจะเปนตวก าหนดวาออบเจกตแตละประเภทมแอตทรบวตใดบาง เชน
13 ออบเจกต ประเภทยสเซอรอาจมแอตทรบวตคอ ชอ เบอรโทรศพท อเมล รหสลบ ๐ Containers: คอนเทนเนอรจะคลายกบโฟลเดอรในระบบไฟลซงโฟลเดอรจะมไฟล และโฟลเดอรประกอบอยขางในสวนคอนเทนเนอรของไดเรคทอรจะมคอนเทนเนอร และออบเจกตอยภายใตคอนเทนเนอรกมแอตทรบวตเหมอนกบออบเจกตแตคอน เทนสเนอรไมไดแทนเอนทรจรงๆ เหมอนออบเจกตคอนเทนเนอรใน AD จะแบง ออกเปน 3 ประเภท ดงน ๐ Domains: เปนขอบเขตของการรกษาความปลอดภยในเครอขาย ๐ Sites: ไซตจะแทนเครอขายหนงทเชอมตอกนดวยแบนดวธสง เชน LAN เปนตน ซงไซตเปนคอนเทนเนอรทแทนเครอขายทองถนแตละท เชน ส านกงานทอยหาง ไกล เปนตน ๐ Organizational Units: ออรแกไนเซชนนอลยนต หรอ OU เปนคอนเทนเนอรท สามารถใสคอมพวเตอร ผใช เครองพมพ หรอ OU ยอยกได แต OU ไมสามารถ ใสออบเจกตจากโดเมนอนไดเนองจากเราสามารถสราง OU ยอยภายใต OU หลก ได ดงนน จงสามารถออกแบบคอนเทนเนอรใหเหมอนกบโครงสรางขององคกร ซงจะชวยลดจ านวนโดเมนลงได
รปท 3.3 : โครงสรางของ AD
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
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 จะอนญาตใหเพยงเซรฟเวอรเดยวเทานนทมสทธในการอพเดตฐานขอมล ซงสทธในการอพเดตฐานขอมลน
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)
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 เปนมาตรฐานทใชอยทวโลก
เอกสารอางอง
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