<!doctype linuxdoc system>

<article>

<!-- Á¦¸ñ -->

<title>LDAP Linux HOWTO 

<author>Luiz Ernesto Pinheiro Malere,
<tt/malere@yahoo.com/ <date>v1.04, 2001³â 2¿ù 28ÀÏ

<trans>¼­Á¤·æ, <tt/s_ryong@hotmail.com/
<tdate>2001³â 3¿ù 7ÀÏ

<abstract> 
ÀÌ ¹®¼­´Â LDAP(Lightweight Directory Access Protocol) ¼­¹ö ¼³Ä¡, ¼³Á¤,
±¸µ¿ ¹× À¯Áö º¸¼ö¿¡ ´ëÇÑ Á¤º¸¸¦ ¼³¸íÇÑ´Ù. LDAP µ¥ÀÌÅ¸º£ÀÌ½º »ý¼º,
µ¥ÀÌÅ¸º£ÀÌ½º³»ÀÇ Á¤º¸ °»½Å°ú »èÁ¦, ·Î¿ì¹Ö ¿¢¼¼½º ¼öÇà ¹× ³Ý½ºÄÉÀÌÇÁ ÁÖ¼Ò·Ï
»ç¿ë ¹æ¹ý¿¡ ´ëÇÑ ¼¼ºÎ»çÇ×µµ ¼³¸íÇÑ´Ù. ÀÌ ¹®¼­´Â ´ëºÎºÐÀÌ ¹Ì½Ã°£ ´ëÇÐÀÇ
Á¤º¸ ÆäÀÌÁö¿Í OpenLDAP °ü¸®ÀÚ ÁöÄ§¿¡ ±Ù°ÅÇÑ´Ù.
</abstract>

<toc>

<sect>¼Ò°³

<p> 

ÀÌ ¹®¼­´Â LDAP µð·ºÅä¸® ¼­¹ö¸¦ ¼³Ä¡ÇÏ¿© »ç¿ëÇÏ´Âµ¥ ÀÖ¾î µµ¿òÀ» ÁÖ±â À§ÇÑ
°ÍÀ¸·Î LDAP ¼­¹öÀÇ ¼³Ä¡, ¼³Á¤, ±¸µ¿ ¹× À¯Áö º¸¼ö ¹æ¹ýÀ» ¹è¿î´Ù. ±× ÈÄ LDAP
Å¬¶óÀÌ¾ðÆ®¿Í À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¿© µð·ºÅä¸®³»¿¡ Á¤º¸¸¦ ÀúÀå, °Ë»ö ¹×
°»½ÅÇÏ´Â ¹æ¹ýÀ» ¹è¿î´Ù. LDAP µð·ºÅä¸® ¼­¹ö µ¥¸ó, <em>slapd</em>Àº 
¿©·¯°¡Áö ¸¹Àº UNIX ÇÃ·§Æû¿¡¼­ ÀÛµ¿µÈ´Ù.

LDAP ¼­¹öµé°£ÀÇ »çº»À» ´Ù·ç´Â ´Ù¸¥ µ¥¸ó, <em>slurpd</em>ÀÌ ÀÖ´Âµ¥,
´çºÐ°£Àº ¿°µÎ¿¡ µÑ ÇÊ¿ä°¡ ¾ø´Ù. ÀÌ ¹®¼­¿¡¼­´Â »çº»¾øÀÌ, Áï slurpd
µ¥¸ó¾øÀÌ, ´ÜÁö ·ÎÄÃ µµ¸ÞÀÎ¿¡ ´ëÇØ µð·ºÅä¸® ¼­ºñ½º¸¦ Á¦°øÇÏ´Â slapd
µ¥¸ó¸¸À» ÀÛµ¿ÇÑ´Ù. 

ÀÌ ¹®¼­´Â °£´ÜÇÑ ¼­¹ö ¼³Á¤À» ´Ù·ç´Âµ¥ Ã³À½ ½ÃÀÛÀ» À§ÇØ À¯ÀÍÇÏ¸ç ÃßÈÄ 
ÇÊ¿ä½Ã ´Ù¸¥ ¼³Á¤À¸·Î °»½ÅÇÏ´Â °ÍÀº ½±´Ù. ÀÌ ¹®¼­ÀÇ Á¤º¸´Â LDAP ÇÁ·ÎÅäÄÝ 
»ç¿ë¿¡ ´ëÇÑ Á¤È®ÇÑ ÃÊ±âÈ­¸¦ ¼³¸íÇÑ´Ù. ¾Æ¸¶µµ ÀÌ ¹®¼­¸¦ ÀÐÀº ÈÄ¿¡´Â 
¸®´ª½º ¼­¹ö ´É·ÂÀÇ È®Àå»Ó¸¸ ¾Æ´Ï¶ó ±âÁ¸ÀÇ »ç¿ë°¡´ÉÇÑ C, C++ °ú ÀÚ¹Ù °³¹ß 
µµ±¸(JDKs)¸¦ »ç¿ëÇÏ¿© ÀÚ½ÅÀÇ Å¬¶óÀÌ¾ðÆ®¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

<sect1>LDAP¶õ ¹«¾ùÀÎ°¡?

<p>

LDAP´Â µð·ºÅä¸® ¼­ºñ½º ¿¢¼¼½º¸¦ À§ÇÑ Å¬¶óÀÌ¾ðÆ®-¼­¹ö ÇÁ·ÎÅäÄÝ·Î ÃÊ±â¿¡´Â
X.500ÀÇ ÀüÀ§(front-end)·Î »ç¿ëµÇ¾úÀ¸³ª ½ºÅÄµå ¾ó·Ð(stand-alone) ¹× ´Ù¸¥ Á¾·ùÀÇ
µð·ºÅä¸® ¼­¹öµé°ú ÇÔ²² »ç¿ëµÉ ¼ö ÀÖ´Ù.

<sect1>µð·ºÅä¸® ¼­ºñ½º¶õ ¹«¾ùÀÎ°¡?

<p>

µð·ºÅä¸®´Â µ¥ÀÌÅ¸º£ÀÌ½º¿Í À¯»çÇÏÁö¸¸ ´õ¿í ¼³¸íÀûÀÌ°í ¼Ó¼º¿¡ ±âÃÊÇÑ
Á¤º¸¸¦ °®°í ÀÖ´Ù. µð·ºÅä¸®³»ÀÇ Á¤º¸´Â ÀÏ¹ÝÀûÀ¸·Î ¾²±âº¸´Ù´Â ÀÐ±â ÀÛ¾÷¿¡
´õ¿í ºó¹øÈ÷ ÀÌ¿ëµÈ´Ù. µû¶ó¼­, µð·ºÅä¸®´Â Åë»óÀûÀ¸·Î Á¤±Ô
µ¥ÀÌÅ¸º£ÀÌ½ºµéÀÌ ´Ù·®ÀÇ º¹ÀâÇÑ(high-volume complex) °»½ÅÀ» À§ÇØ »ç¿ëÇÏ´Â
º¹ÀâÇÑ Ã³¸®(transaction) ¶Ç´Â ·Ñ¹é °èÈ¹(ÇÁ·Î±×·¥¿¡ µû¶ó ¹Ù·Î ÀüÀÇ Ã¼Å©Æ÷ÀÎÆ®·Î
µ¹¾Æ°¡±â, roll-back)À» ¼öÇàÇÏÁö ¾Ê´Â´Ù. µð·ºÅä¸®´Â ÀÏ¹ÝÀûÀ¸·Î, Àû¾îµµ
Çã¿ëµÈ´Ù¸é, ÀüºÎ °»½ÅµÇ°Å³ª ¾Æ¹« °Íµµ º¯°æµÇÁö ¾Ê´Â´Ù. 

µð·ºÅä¸®´Â ´Ù·®ÀÇ ¼ø¶÷(lookup) ¶Ç´Â °Ë»ö ¿¬»ê¿¡ ´ëÇØ ºü¸£°Ô ÀÀ´äÇÏ±â
À§ÇØ Á¶Á¤µÈ´Ù. µð·ºÅä¸®´Â ÀÀ´ä ½Ã°£À» °¨¼Ò½ÃÅ°´Â ¹Ý¸é °¡¿ë¼º°ú ½Å·Ú¼ºÀ»
Áõ´ë½ÃÅ°±â À§ÇØ Á¤º¸¸¦ ³Î¸® º¹Á¦ÇÒ ¼ö ÀÖ´Ù. µð·ºÅä¸® Á¤º¸°¡ º¹Á¦µÉ ¶§
º¹Á¦µÈ Á¤º¸µé »çÀÌÀÇ ÀÏ½ÃÀûÀÎ ºÒÀÏÄ¡´Â °á±¹ ÀÏÄ¡µÈ´Ù¸é ¹«¹æÇÒ °ÍÀÌ´Ù.

µð·ºÅä¸® ¼­ºñ½º¸¦ Á¦°øÇÏ´Â ¸¹Àº ´Ù¸¥ ¹æ¹ýÀÌ ÀÖ´Ù. °¢°¢ÀÇ ¹æ¹ýµéÀº ´Ù¾çÇÑ
Á¾·ùÀÇ Á¤º¸°¡ µð·ºÅä¸®¿¡ ÀúÀåµÇ´Â °ÍÀ» Çã¿ëÇÏ¸ç, ±×·¯ÇÑ Á¤º¸°¡ ¾î¶»°Ô
ÂüÁ¶, ÁúÀÇ ¹× °»½ÅµÉ ¼ö ÀÖ´ÂÁö ¶Ç´Â Çã°¡¹ÞÁö ¾ÊÀº ¿¢¼¼½º·ÎºÎÅÍ ¾î¶»°Ô
º¸È£µÇ´ÂÁö µî¿¡ ´ëÇÑ ¿©·¯°¡Áö ¿ä°ÇÀ» µÐ´Ù. ¾î¶² µð·ºÅä¸® ¼­ºñ½º´Â Á¦ÇÑµÈ
»óÈ²(¿¹¸¦ µé¸é ´Üµ¶ ¸Ó½Å¿¡¼­ finger ¼­ºñ½º)¿¡ ´ëÇØ¼­ ¼­ºñ½º¸¦ Á¦°øÇÏ´Â
Áö¿ªÀûÀÎ ¹Ý¸é ´Ù¸¥ ¼­ºñ½º´Â ´õ¿í ³ÐÀº »óÈ²¿¡ ´ëÇØ¼­ ¼­ºñ½º¸¦ Á¦°øÇÏ´Â
ÀüÃ¼ÀûÀÌ´Ù.

<sect1>LDAP´Â ¾î¶»°Ô ÀÛµ¿ÇÏ´Â°¡?

<p>

LDAP µð·ºÅä¸® ¼­ºñ½º´Â Å¬¶óÀÌ¾ðÆ®-¼­¹ö ¸ðµ¨¿¡ ±âÃÊÇÏ´Âµ¥, ÇÏ³ª ¶Ç´Â ±×
ÀÌ»óÀÇ LDAP ¼­¹öµéÀÌ LDAP µð·ºÅä¸® Æ®¸® ¶Ç´Â ¹é¿£µå(backend) 
µ¥ÀÌÅ¸º£ÀÌ½º¸¦ ±¸¼ºÇÏ´Â ÀÚ·á¸¦ °®°í ÀÖ´Ù. LDAP Å¬¶óÀÌ¾ðÆ®´Â LDAP ¼­¹ö¿¡
¿¬°áÇØ ÁúÀÇÇÏ¸ç, ¼­¹ö´Â ´ä ¶Ç´Â Å¬¶óÀÌ¾ðÆ®°¡ ´õ ¸¹Àº Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ´Â
Æ÷ÀÎÅÍ(ÀÏ¹ÝÀûÀ¸·Î ´Ù¸¥ LDAP¼­¹ö)¸¦ °®°í ÀÀ´äÇÑ´Ù. Å¬¶óÀÌ¾ðÆ®´Â ¾î¶² LDAP
¼­¹ö¿¡ ¿¬°áÇÏ´øÁö °£¿¡ µ¿ÀÏÇÑ µð·ºÅä¸® ±¸Á¶¸¦ º»´Ù; ÇÑ LDAP ¼­¹ö¿¡
º¸³»Áö´Â ÀÌ¸§Àº ´Ù¸¥ LDAP¿¡ ÀÖÀ» ¼ö ÀÖ´Â µ¿ÀÏÇÑ ¿£Æ®¸®¸¦ ÂüÁ¶ÇÏ¸ç ÀÌ°ÍÀÌ
LDAP¿Í °°Àº ÀüÃ¼ÀûÀÎ µð·ºÅä¸® ¼­ºñ½ºÀÇ Áß¿äÇÑ Æ¯Â¡ÀÌ´Ù.

<sect1>LDAP ¹é¿£µå, °´Ã¼¿Í ¼Ó¼º

<p>

Slapd´Â ¼¼°³ÀÇ ´Ù¸¥ ¹é¿£µå µ¥ÀÌÅ¸º£ÀÌ½º Áß¿¡¼­ ÇÏ³ª¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù;
°í¼º´É µð½ºÅ©¿¡ ±âÃÊÇÑ µ¥ÀÌÅ¸º£ÀÌ½º LDBM, ÀÓÀÇÀÇ À¯´Ð½º ¸í·É¾î ¶Ç´Â ½©
½ºÅ©¸³Æ®¿¡ ´ëÇÑ µ¥ÀÌÅ¸º£ÀÌ½º ÀÎÅÍÆäÀÌ½º SHELL, °£´ÜÇÑ ÆÐ½º¿öµå ÆÄÀÏ
µ¥ÀÌÅ¸º£ÀÌ½ºÀÎ PASSWD.

ÀÌ ¹®¼­¿¡¼­´Â LDBM µ¥ÀÌÅ¸º£ÀÌ½º°¡ ¼±ÅÃµÈ´Ù°í °¡Á¤ÇÑ´Ù.

LDBM µ¥ÀÌÅ¸º£ÀÌ½º´Â µ¥ÀÌÅ¸º£ÀÌ½º³»ÀÇ °¢ ¿£Æ®¸®¿¡ ÄÞÆÑÆ®ÇÑ 4 ¹ÙÀÌÆ®ÀÇ
°íÀ¯ÇÑ ½Äº°ÀÚ¸¦ ÇÒ´çÇÔÀ¸·Î½á ÀÛµ¿ÇÑ´Ù. µ¥ÀÌÅ¸º£ÀÌ½º´Â ¿£Æ®¸® °íÀ¯
½Äº°ÀÚ(entry's unique identifier, EID)¸¦ ¿£Æ®¸® ÀÚÃ¼¸¦ Ç¥ÇöÇÏ´Â ÅØ½ºÆ®·Î
»ç»óÇØÁÖ´Â id2entry¶ó´Â ÇÏ³ªÀÇ ÁÖ ÀÎµ¦½º ÆÄÀÏ·Î ±¸¼ºµÇ´Âµ¥ ´Ù¸¥ ÀÎµ¦½º
ÆÄÀÏµéµµ ¸¶Âù°¡Áö·Î À¯ÁöµÈ´Ù.

LDAP¿¡ ±âÃÊÇÑ µð·ºÅä¸® ¼­¹öµé°£ÀÇ µð·ºÅä¸® Á¤º¸¸¦ import ¹× export
ÇÏ°Å³ª µð·ºÅä¸®¿¡ Àû¿ëµÇ¾îÁö·Á°í ÇÏ´Â ÀÏ·ÃÀÇ º¯°æµéÀ» ±â¼úÇÏ±â À§ÇØ
LDIF(LDAP Data Interchange Format) ÆÄÀÏ Æ÷¸ËÀÌ ÀÏ¹ÝÀûÀ¸·Î »ç¿ëµÈ´Ù. LDIF
ÆÄÀÏÀº ¿£Æ®¸®ÀÇ °´Ã¼ÁöÇâ °èÃþ ±¸Á¶³»¿¡ Á¤º¸¸¦ ÀúÀåÇÏ´Âµ¥ LDAP ¼ÒÇÁÆ®¿þ¾î
ÆÐÅ°Áö¿¡´Â LDIF ÆÄÀÏÀ» LDBM Æ÷¸ËÀ¸·Î º¯È­ÇØÁÖ´Â À¯Æ¿¸®Æ¼°¡ ÀÖ´Ù.

ÀÏ¹ÝÀûÀÎ LDIF ÆÄÀÏÀº ´ÙÀ½Ã³·³ º¸ÀÎ´Ù:
<tscreen><verb>
dn: o=TUDelft, c=NL
o: TUDelft
objectclass: organization
dn: cn=Luiz Malere, o=TUDelft, c=NL
cn: Luiz Malere
sn: Malere
mail: malere@yahoo.com
objectclass: person
</verb></tscreen>

À§¿¡¼­ º¸µíÀÌ °¢ ¿£Æ®¸®´Â ±¸º°µÇ´Â ÀÌ¸§(DN, distinguished name)¿¡ ÀÇÇØ
°íÀ¯ÇÏ°Ô ½Äº°µÇ¸ç DNÀº ¿£Æ®¸®ÀÇ ÀÌ¸§°ú ¿£Æ®¸®¸¦ ÅëÇØ µð·ºÅä¸® °èÃþ
±¸Á¶ÀÇ ÃÖ»óÀ§¸¦ Ã£´Â ÀÌ¸§µéÀÇ °æ·Î·Î ±¸¼ºµÈ´Ù.

LDAP¿¡¼­ °´Ã¼ Å¬·¡½º´Â ¿£Æ®¸®¸¦ Á¤ÀÇÇÏ´Âµ¥ »ç¿ëµÉ ¼ö ÀÖ´Â ¼Ó¼º ÁýÇÕÀ»
Á¤ÀÇÇÑ´Ù. LDAP Ç¥ÁØÀº ´ÙÀ½°ú °°Àº ±âº» ÇüÅÂÀÇ °´Ã¼ Å¬·¡½º¸¦ Á¦°øÇÑ´Ù:

<itemize>
<item>°³º° °´Ã¼ ¶Ç´Â °´Ã¼ ±×·ìÀÇ Á¤·ÄµÇÁö ¾ÊÀº ¸®½ºÆ®¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Â µð·ºÅä¸®³» ±×·ì
<item> ±¹°¡¸í°ú ¼³¸í(description)°ú °°Àº Àå¼Ò
<item> µð·ºÅä¸®³» Á¶Á÷
<item> µð·ºÅä¸®³» »ç¶÷
</itemize>

¿£Æ®¸®´Â ÇÏ³ª ÀÌ»óÀÇ °´Ã¼ Å¬·¡½º¿¡ ¼ÓÇÒ ¼ö ÀÖ´Âµ¥, ¿¹¸¦ µé¸é »ç¶÷¿¡ ´ëÇÑ
¿£Æ®¸®´Â <em>person</em> °´Ã¼ Å¬·¡½º¿¡ ÀÇÇØ Á¤ÀÇµÇÁö¸¸ inetOrgPerson,
groupOfNames¿Í Organization °´Ã¼ Å¬·¡½º³»ÀÇ ¼Ó¼º¿¡ ÀÇÇØ¼­µµ Á¤ÀÇµÉ ¼ö
ÀÖ´Ù. ¼­¹öÀÇ °´Ã¼ Å¬·¡½º ±¸Á¶(Áï ½ºÅ°¸¶, schema)´Â Æ¯º°ÇÑ ¿£Æ®¸®¿¡ ´ëÇØ
ÇÊ¼ö ¹× Çã¿ë ¼Ó¼ºµéÀÇ ÃÑ ¸®½ºÆ®¸¦ °áÁ¤ÇÑ´Ù.

µð·ºÅä¸® ÀÚ·á´Â ¼Ó¼º-°ª ½ÖÀ¸·Î Ç¥ÇöµÇ´Âµ¥ Á¤º¸ÀÇ ¾î¶² Æ¯Á¤ ºÎºÐÀº ¼³¸íÀû
¼Ó¼º°ú ¿¬°áµÈ´Ù.

¿¹¸¦ µé¸é, commonName ¶Ç´Â cn ¼Ó¼ºÀº »ç¶÷ÀÇ ÀÌ¸§À» ÀúÀåÇÏ´Âµ¥ »ç¿ëµÈ´Ù.
Jonas Salk¶ó´Â ÀÌ¸§À» °®´Â »ç¶÷Àº µð·ºÅä¸®³»¿¡¼­ ´ÙÀ½°ú °°ÀÌ Ç¥ÇöµÉ ¼ö 
ÀÖ´Ù.

<tscreen><verb>
cn: Jonas Salk
</verb></tscreen>

µð·ºÅä¸®³»¿¡ µé¾î°¡´Â °¢ »ç¶÷Àº <em>person</em> °´Ã¼ Å¬·¡½º³»ÀÇ ¼Ó¼º
ÁýÇÕ¿¡ ÀÇÇØ Á¤ÀÇµÇ´Âµ¥ ÀÌ ¿£Æ®¸®¸¦ Á¤ÀÇÇÏ±â À§ÇØ »ç¿ëÇÏ´Â ´Ù¸¥ ¼Ó¼ºµéÀº
´ÙÀ½À» Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù.

<tscreen><verb>
givenname: Jonas 
surname: Salk
mail: jonass@airius.com
</verb></tscreen>

ÇÊ¼ö ¼Ó¼ºµéÀº °´Ã¼ Å¬·¡½º¸¦ »ç¿ëÇÏ´Â ¿£Æ®¸®¿¡ Á¸ÀçÇØ¾ß ÇÏ´Â ¼Ó¼ºµéÀ»
Æ÷ÇÔÇÏ´Âµ¥ ¸ðµç ¿£Æ®¸®µéÀº ¿£Æ®¸®°¡ ¼ÓÇÏ´Â °´Ã¼ Å¬·¡½º°¡ ¸®½ºÆ®µÇ¾î 
ÀÖ´Â objectClass ¼Ó¼ºÀ» ÇÊ¿ä·Î ÇÑ´Ù.

Çã¿ë ¼Ó¼ºµéÀº °´Ã¼ Å¬·¡½º¸¦ »ç¿ëÇÏ´Â ¿£Æ®¸®¿¡ Á¸ÀçÇÒ ¼ö ÀÖ´Â ¼Ó¼ºµéÀ»
Æ÷ÇÔÇÏ´Âµ¥ ¿¹¸¦ µé¸é person °´Ã¼ Å¬·¡½º¿¡¼­ cn °ú sn ¼Ó¼ºÀº ÇÊ¼öÁö¸¸
description, telephoneNumber, seeAlso¿Í userpassword ¼Ó¼ºµéÀº ÇÊ¼ö°¡
¾Æ´Ñ Çã¿ëµÈ °ÍµéÀÌ´Ù.

°¢ ¼Ó¼ºÀº ¼Ó¼º¿¡ ÀÇÇØ Á¦°øµÇ´Â Á¤º¸ À¯ÇüÀ» ±â¼úÇÏ´Â ÇØ´ç ±¸¹®(syntax)
Á¤ÀÇ¸¦ °®´Â´Ù:

<itemize>
<item>bin binary (¹ÙÀÌ³Ê¸®)
<item>ces case exact string (case´Â ºñ±³½Ã ÀÏÄ¡ÇØ¾ß ÇÑ´Ù)
<item>cis case ignore string (case´Â ºñ±³½Ã ¹«½ÃµÈ´Ù)
<item>tel telephone number string (cis¿Í °°Áö¸¸ ºñ±³½Ã °ø¹é°ú ´ë½Ã±âÈ£ `-' ´Â ¹«½ÃµÈ´Ù)
<item>dn distinguished name (±¸º°µÇ´Â ÀÌ¸§)
</itemize>

Objectclass¿Í ¼Ó¼º Á¤ÀÇµéÀÌ ½Ã½ºÅÛÀÇ ¾îµð¿¡ ÀÖ´ÂÁö¸¦ ¾Ë±â
À§ÇØ¼­´Â <ref id="3Àý">ÀÇ Ã¹ ¹®´ÜÀ¸·Î °¡¶ó.

<sect1>¹®¼­ÀÇ »õ·Î¿î ¹öÀü

<p>

ÀÌ ¹®¼­´Â µ¶ÀÚµé¿¡ ÀÇÇØ Á¦°øµÇ´Â ÇÇµå¹é¿¡ ±âÃÊÇØ ¼öÁ¤°ú °»½ÅµÉ ¼ö ÀÖ´Ù.
ÀÌ ¹®¼­ÀÇ »õ·Î¿î ¹öÀü¿¡ ´ëÇØ¼­´Â ´ÙÀ½À» ÂüÁ¶ÇØ¾ß ÇÑ´Ù:

<url url="http://www.mobilesoft.com.br/HOWTO/LDAP-HOWTO.html">

<sect1>ÀÇ°ß°ú Á¦¾È

<p>

ÀÌ ¹®¼­¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â ¾î¶² Á¤º¸¿¡ ´ëÇØ ¾î¶² ÀÇ±¸½ÉÀÌ ÀÖ´Ù¸é ´ÙÀ½
ÀüÀÚ¿ìÆí ÁÖ¼Ò·Î ¸ÞÀÏÀ» º¸³»ÁÖ±æ ¹Ù¶õ´Ù.

<htmlurl url="mailto:malere@yahoo.com" name="malere@yahoo.com">

ÁÖ¼®°ú/¶Ç´Â Á¦¾ÈÀÌ ÀÖ´Ù¸é ¶ÇÇÑ ÀúÀÚ¿¡°Ô ¾Ë·ÁÁÖ±æ ¹Ù¶õ´Ù.

<sect1>¹®¼­ ¹ßÇ¥ ±â·Ï

<p>

ÀÌ ÀýÀº ½Ã±âº°·Î ºÐ·ùµÈ º» ¹ßÇ¥ ¹®¼­¸¦ ¿­°ÅÇÑ´Ù. °¢ ¹ßÇ¥ ¹®¼­´Â ÃÊ±â
¹öÀü¿¡ µµÀÔµÈ º¯°æ, »õ·Î¿î Ãß°¡ »çÇ× ¹× ¼öÁ¤À» Æ÷ÇÔÇÑ´Ù.

v1.0: 20 June 1999, Initial version.

v1.01: 15 February 2000, added the following sections:
<itemize>
<item>LDAP Migration Tools
<item>Authentication using LDAP
<item>Graphical LDAP tools
<item>RFCs
</itemize>
v1.02: 13 September 2000, correction of typos and addition of the following section:
<itemize>
<item>History of Releases
</itemize>
v1.03: 28 September 2000, presenting OpenLDAP 2.0, which comprises Ldap v3, defined on the <url url="ftp://ftp.isi.edu/in-notes/rfc2251.txt" name="RFC2251">.
v1.04: 28 Februrary 2001, correction of more typos and update on the 
following sections:
<itemize>
<item>Roaming Access
<item>Authentication using LDAP
</itemize>

<sect1>Acknowledgments

<p>

ÀÌ ¹®¼­´Â NetherlandsÀÇ TUDelft ´ëÇÐ¿¡¼­ ¼öÇàÇÑ ÀÎÅÏ½ÊÀÇ °á°úÀÌ´Ù.
ÀúÀÚ´Â ÀÌ ¹®¼­¸¦ ¾²µµ·Ï ¿ë±â¸¦ ÁØ ¸¹Àº ºÐµé¿¡°Ô °í¸¶¿òÀ» Ç¥ÇöÇÏ°í ½Í´Ù:
Rene van Leuken°ú Wim Tiwon¿¡ ¸Å¿ì °í¸¿°Ô »ý°¢ÇÑ´Ù. ±×µéÀº ¶ÇÇÑ ÀúÀÚ¿Í
°°Àº ¸®´ª½º ÆÒµéÀÌ´Ù. ÀúÀÚ´Â ÀÌ ¹®¼­¿¡ ±â¿©ÇÑ µ¶ÀÏ¾îÆÇ LDAP HOWTO ¹®¼­ÀÇ
ÀúÀÚÀÎ Thomas Bendler¿Í LDP ÇÁ·ÎÁ§Æ®ÀÇ À§´ëÇÑ Áö¿øÀÚÀÎ Joshua¿¡°Ô
°í¸¶¿òÀ» Ç¥ÇöÇÏ°í ½Í´Ù.

<sect1>Copyright and Disclaimer

<p>
The LDAP Linux HOWTO is Copyrighted 1999 by Luiz Ernesto Pinheiro Malere. It can be distributed freely. It cannot be modified. If you have any kind of sugestion, please send me an email (I will update the document if the sugestion proceeds).

If you want a translation, for example to Portuguese, you can send me an email about it too.

No liability for the contents of this document can be accepted. I have no responsability about the consequences of following the steps provided in this document.

If you have questions, please contact, the Linux HOWTO coordinator, at

<htmlurl url="mailto:linux-howto@metalab.unc.edu" name="linux-howto@metalab.unc.edu">

<sect>LDAP ¼­¹ö ¼³Ä¡ÇÏ±â

<p>

LDAP ¼­¹ö ¼³Ä¡´Â ¼±Çà ÇÊ¼ö ÆÐÅ°Áö ¼³Ä¡(¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀ» °æ¿ì), ¼­¹ö
´Ù¿î·Îµå, ¼ÒÇÁÆ®¿þ¾î ¾ÐÃàÇØÃ¼, Makefile ¼³Á¤°ú ¼­¹ö ±¸ÃàÀÇ ´Ù¼¸ ´Ü°è¸¦
ÅëÇØ ÀÌ·ç¾îÁø´Ù.

<sect1>¼±Çà ÇÊ¼ö, Pre-Requirements

<p>

LDAP ¹öÀü 3À» ¿ÏÀüÈ÷ µû¸£±â À§ÇØ OpenLDAP Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö´Â ¾à°£ÀÇ
ºÎ°¡ÀûÀÎ ÆÐÅ°ÁöÀÇ ¼³Ä¡¸¦ ÇÊ¿ä·ÎÇÑ´Ù:

<em>OpenSSL TLS libraries</em>

¾î¶² ¿î¿µÃ¼Á¦°¡ ÀÌ ¶óÀÌºê·¯¸®¸¦ ±âº» ½Ã½ºÅÛÀÇ ºÎºÐ ¶Ç´Â ¼±ÅÃÀûÀÎ
¼ÒÇÁÆ®¿þ¾î ÄÄÆ÷³ÍÆ®·Î Á¦°øÇÒ ¼ö ÀÖÁö¸¸, OpenSSLÀº Á¾Á¾ º°µµÀÇ ¼³Ä¡¸¦
ÇÊ¿ä·Î ÇÑ´Ù. OpenSSLÀº ´ÙÀ½ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

<url url="http://www.openssl.org/">

<em>Kerberos Authentication Services</em>

OpenLDAP Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö´Â Kerberos¿¡ ±âÃÊÇÑ ÀÎÁõ ¼­ºñ½º¸¦ Áö¿øÇÏ´Âµ¥
Æ¯È÷ Heimdal ¶Ç´Â MIT Kerberos V ÆÐÅ°Áö¸¦ ÀÌ¿ëÇÑ SASL/GSAPI ÀÎÁõ ±â±¸¸¦
Áö¿øÇÑ´Ù. Kerberos¿¡ ±âÃÊÇÑ SASL/GSSAPI ÀÎÁõÀ» »ç¿ëÇÏ°í ½Í´Ù¸é Heimdal
¶Ç´Â MIT Kerberos V¸¦ ¼³Ä¡ÇØ¾ß ÇÑ´Ù. Heimdal Kerbero´Â <url
url="http://www.pdc.kth.se/heimdal">·ÎºÎÅÍ ±¸ÇÒ ¼ö ÀÖ´Ù.

MIT Kerberos´Â <url url="http://web.mit.edu/kerberos/www">·ÎºÎÅÍ ±¸ÇÒ ¼ö
ÀÖ´Ù. Kerberos°¡ Á¦°øÇÏ´Â °Í°ú °°Àº °­·ÂÇÑ ÀÎÁõ ¼­ºñ½ºÀÇ »ç¿ëÀ» °­·ÂÈ÷
ÃßÃµÇÑ´Ù.

<em>Cyrus's Simple Authentication and Security Layer Libraries</em>

¾î¶² ¿î¿µÃ¼Á¦°¡ ÀÌ ¶óÀÌºê·¯¸®¸¦ ±âº» ½Ã½ºÅÛÀÇ ºÎºÐ ¶Ç´Â ¼±ÅÃÀûÀÎ
¼ÒÇÁÆ®¿þ¾î ÄÄÆ÷³ÍÆ®·Î Á¦°øÇÒ ¼ö ÀÖÁö¸¸, Cyrus SASLÀº Á¾Á¾ º°µµÀÇ ¼³Ä¡¸¦
ÇÊ¿ä·Î ÇÑ´Ù. Cyrus SASLÀº <url
url="http://asg.web.cmu.edu/sasl/sasl-library.html">·ÎºÎÅÍ ±¸ÇÒ ¼ö ÀÖ´Ù.
Cyrus SASLÀº OpenSSL°ú Kerberos/GSSAPI ¶óÀÌºê·¯¸®°¡ ¹Ì¸® ¼³Ä¡µÇ¾î ÀÖ´Ù¸é
ÀÌµéÀ» »ç¿ëÇÒ °ÍÀÌ´Ù.

<em>Database Software</em>

OpenLDAPÀÇ slapd ±âº» µ¥ÀÌÅÍº£ÀÌ½º ¹é¿£µåÀÎ LDBMÀº ¿£Æ®¸® ÀúÀåÀ» À§ÇØ 
È£È¯¼º µ¥ÀÌÅ¸º£ÀÌ½º ÆÐÅ°Áö¸¦ ÇÊ¿ä·Î ÇÑ´Ù. LDBMÀº Sleepycat ¼ÒÇÁÆ®¿þ¾îÀÇ
BerkeleyDB(ÃßÃµ) ¶Ç´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î Àç´Ü(FSF, Free Software
Foundation)ÀÇ GNU µ¥ÀÌÅ¸º£ÀÌ½º ¸Å´ÏÀú(GDBM)¿Í È£È¯µÈ´Ù. ÀÌ·¯ÇÑ
ÆÐÅ°ÁöµéÀ» ¼³Á¤½Ã ÀÌ¿ëÇÒ ¼ö ¾ø´Ù¸é ±âº» µ¥ÀÌÅ¸º£ÀÌ½º ¹é¿£µå Áö¿øÀ» ÇÏ´Â
slapd µ¥¸óÀ» ±¸ÃàÇÒ ¼ö ¾øÀ» °ÍÀÌ´Ù.

¿î¿µÃ¼Á¦°¡ ±âº» ½Ã½ºÅÛ³»¿¡¼­ ¶Ç´Â ¼±ÅÃÀûÀÎ ¼ÒÇÁÆ®¿þ¾î ÄÄÆ÷³ÍÆ®·Î½á µÎ
ÆÐÅ°Áö Áß ÇÏ³ª¸¦ Á¦°øÇÒ ¼ö ÀÖ´Âµ¥ ÀÌ·¯ÇÑ ¼ÒÇÁÆ®¿þ¾î¸¦ ±¸ÇØ¼­ ¼³Ä¡ÇÒ
ÇÊ¿ä°¡ ÀÖ´Ù.

BerkekeyDB ´Â Sleepycat ¼ÒÇÁÆ®¿þ¾îÀÇ ´Ù¿î·Îµå ÆäÀÌÁö <url
url="ttp://www.sleepycat.com/download.html">·ÎºÎÅÍ ±¸ÇÒ ¼ö ÀÖ´Ù. ¿©·¯
¹öÀüÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Âµ¥ ÀÌ ¹®¼­¸¦ ÀÛ¼ºÇÏ´Â ½ÃÁ¡¿¡´Â ÃÖ½Å ¹èÆ÷º» ¹öÀü 3.1
ÀÌ ÃßÃµµÈ´Ù.

GDBMÀº FSFÀÇ ´Ù¿î·Îµå »çÀÌÆ® <url
url="ftp://ftp.gnu.org/pub/gnu/gdbm">·ÎºÎÅÍ ±¸ÇÒ ¼ö ÀÖ´Âµ¥ ÀÌ ¹®¼­¸¦
ÀÛ¼ºÇÏ´Â ½ÃÁ¡¿¡´Â ¹öÀü 1.8 ÀÌ ÃÖ½Å ¹èÆ÷º»ÀÌ´Ù.

<em>Threads</em>

OpenLDAP´Â ¾²·¹µå¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖµµ·Ï ¼³°èµÇ¾î ÀÖ´Âµ¥ POSIX pthreads,
Mach CThreads¿Í ¸¹Àº ´Ù¸¥ º¯ÇüµéÀ» Áö¿øÇÑ´Ù. <em>configure</em>
½ºÅ©¸³Æ®°¡ ÀûÇÕÇÑ ¾²·¹µå ÇÏÀ§ ½Ã½ºÅÛÀ» Ã£À» ¼ö ¾ø´Ù¸é ¿¡·¯ ¸Þ¼¼Áö¸¦ 
Ãâ·ÂÇÏ´Âµ¥ ÀÌ·± °æ¿ì OpenLDAP FAQÀÇ ¼ÒÇÁÆ®¿þ¾î - ¼³Ä¡ - ÇÃ·§Æû ÈùÆ®
ÀýÀ» ÂüÁ¶ÇÏ±æ ¹Ù¶õ´Ù.

<url url="http://www.openldap.org/faq">

<em>TCP Wrappers</em>

<em>slapd</em>´Â TCP wrappers(IP ·¹º§ ¿¢¼¼½º Á¦¾î ÇÊÅÍ)°¡ ÀÌ¹Ì ¼³Ä¡µÇ¾î
ÀÖ´Ù¸é ÀÌ¸¦ Áö¿øÇÏ´Âµ¥ °³ÀÎÀûÀÎ ºñ°ø°³ Á¤º¸¸¦ Æ÷ÇÔÇÏ´Â ¼­¹ö º¸¾ÈÀ» À§ÇØ TCP
wrappers ¶Ç´Â ´Ù¸¥ IP ·¹º§ ¿¢¼¼½º ÇÊÅÍ(IP ·¹º§ ¹æÈ­º®ÀÌ Á¦°øÇÏ´Â °Í°ú
°°Àº) »ç¿ëÀ» ÃßÃµÇÑ´Ù.

<sect1>ÆÐÅ°Áö ´Ù¿î·Îµå ¹Þ±â

<p>

LDAP ¼­¹ö·Î´Â Michigan ´ëÇÐ LDAP ¼­¹ö¿Í OpenLDAP ¼­¹ö µÎ Á¾·ùÀÇ ÀÚÀ¯·ÎÀÌ
¹èÆ÷µÇ´Â LDAP ¼­¹ö°¡ ÀÖÀ¸¸ç ¶ÇÇÑ ³Ý½ºÄÉÀÌÇÁ µð·ºÅä¸® ¼­¹öµµ ¾î¶²
Á¶°ÇÇÏ¿¡¼­´Â ÀÚÀ¯·ÎÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù(¿¹¸¦ µé¸é ±³À°±â°üÀº ÀÚÀ¯·ÎÀÌ ¾òÀ»
¼ö ÀÖ´Ù). OpenLDAP ¼­¹ö´Â Michigan ´ëÇÐ LDAP ¼­¹öÀÇ ÃÖ½Å ¹öÀü¿¡
±âÃÊÇÏ´Âµ¥ ±× ¹öÀü¿¡ ´ëÇØ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â ¸ÞÀÏ¸µ ¸®½ºÆ®¿Í ºÎ°¡Àû ¹®¼­°¡
ÀÖ´Ù. ÀÌ ¹®¼­´Â OpenLDAP ¼­¹öÀÇ »ç¿ëÀ» °¡Á¤ÇÑ´Ù.

ÃÖ½Å tar gzipped ¹öÀüÀº ´ÙÀ½ ÁÖ¼Ò¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù:

<url url="http://www.openldap.org/">

Michigan ´ëÇÐ LDAP ¼­¹öÀÇ ÃÖ½Å ¹öÀüÀº ´ÙÀ½ ÁÖ¼Ò¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù:

<url url="ftp://terminator.rs.itd.umich.edu/ldap">

ÀÌ ¹®¼­¸¦ ÀÛ¼ºÇÏ±â À§ÇØ ÀúÀÚ´Â ÃÖ½Å ¾ÈÁ¤ ¹öÀü 1.2.11°ú »õ·ÎÀÌ ¹èÆ÷µÈ
2.0.4 ¹öÀü µÎ°¡Áö OpenLDAP ÆÐÅ°Áö¸¦ »ç¿ëÇß´Ù. ¿î¿µÃ¼Á¦´Â Ä¿³Î 2.2.13ÀÎ
½½·¢¿þ¾î ¸®´ª½ºÀÌ´Ù.

OpenLDAP »çÀÌÆ®¿¡¼­ ´Ã OpenLDAP ¼­¹öÀÇ ÃÖ½Å °³¹ß ¹× ¾ÈÁ¤ ¹öÀüÀ» Ã£À» ¼ö
ÀÖ´Ù. ÀÌ ¹®¼­°¡ °»½ÅµÇ¾ú´ø ½ÃÁ¡±îÁö ÃÖ½Å ¾ÈÁ¤ ¹öÀü°ú ÃÖ½Å °³¹ß ¹öÀüÀº
°¢°¢ openldap-stable-20000704.tgz°ú openldap-2.0.4.tgz ¿´´Ù.

<sect1>ÆÐÅ°Áö ¾ÐÃàÇØÁ¦ ÇÏ±â

<p>
tar gzipped ÆÐÅ°Áö¸¦ ±¸ÇÑ ÈÄ ¾ÐÃàÇØÁ¦ÇÑ´Ù.

¿ì¼± ÆÐÅ°Áö¸¦ ¿øÇÏ´Â µð·ºÅä¸®, ¿¹¸¦ µé¸é /usr/local, ·Î º¹»çÇÏ±æ ¹Ù¶õ´Ù.

±×¸®°í ´ÙÀ½ÀÇ ¸í·ÉÀ» »ç¿ëÇÏ±æ ¹Ù¶õ´Ù:  

<tscreen><verb>
tar xvzf openldap-stable.tgz
 </verb></tscreen>

¸¶Âù°¡Áö·Î ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇÒ ¼öµµ ÀÖ´Ù:
<tscreen><verb> gunzip openldap-stable.tgz | tar xvf -
</verb></tscreen>

<sect1>¼ÒÇÁÆ®¿þ¾î ¼³Á¤ÇÏ±â

<p>

À¥»çÀÌÆ®¿¡ ÃÖÀûÀÇ ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÒ ¼ö ÀÖµµ·Ï °³º°È­(customization)ÇÒ
¼ö ÀÖ´Â ¿©·¯ ¿É¼ÇµéÀÌ ÀÖ´Ù.

¼ÒÇÁÆ®¿þ¾î´Â ´ÜÁö µÎ ´Ü°è¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù:

<itemize>
<item>
¼ÒÇÁÆ®¿þ¾î¸¦ ¾ÐÃàÇØÁ¦ÇÑ µð·ºÅä¸® ¹ØÀÇ ÇÏÀ§ µð·ºÅä¸® <em>include</em>¿¡
À§Ä¡ÇÑ <em>ldapconfig.h.edit</em> ÆÄÀÏÀ» ÆíÁýÇÑ´Ù
<item>
configure ½ºÅ©¸³Æ®¸¦ ½ÇÇà½ÃÅ²´Ù (È£±â½ÉÀÌ ¸¹´Ù¸é configure ½ºÅ©¸³Æ®¸¦
½ÇÇà½ÃÅ°´Â ´ë½Å Make-common ÆÄÀÏÀ» ÆíÁýÇÒ ¼ö ÀÖ´Ù)
</itemize>

include/ldapconfig.h.edit ÆÄÀÏ¾È¿¡¼­ slapd¿Í slurpd µ¥¸óÀÇ À§Ä¡¿Í °°Àº
¿É¼ÇÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. ÆÄÀÏÀÚÃ¼°¡ Àß ÁÖ¼®Ã³¸® µÇ¾î ÀÖ°í default ¼³Á¤Àº
´ëºÎºÐÀÇ ÀÏ¹ÝÀûÀÎ °ü¸®ÀÚ ¼±ÅÃÀ» ¹Ý¿µÇÏ°í ÀÖ´Âµ¥ ±ÞÇÏ´Ù¸é ÀÌ ´Ü°è¸¦
Áö³ªÄ¥ ¼ö ÀÖ´Ù:

<tscreen><verb>
vi include/ldapconfig.h.edit
</verb></tscreen>

OpenLDAP ¼­¹ö ¼Ò½º´Â ¼³Ä¡ µð·ºÅä¸®, ÄÄÆÄÀÏ·¯¿Í ¸µÄ¿ ÇÃ·¡±×¿Í °°Àº ¿É¼Ç
¼³Á¤À» À§ÇÑ ¼³Á¤ ½ºÅ©¸³Æ®¿Í ÇÔ²² ¹èÆ÷µÇ´Âµ¥ ¼ÒÇÁÆ®¿þ¾î¸¦ ¾ÐÃàÇØÁ¦ÇÑ
µð·ºÅä¸®¿¡¼­ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃÅ²´Ù:

<tscreen><verb>
./configure --help
</verb></tscreen>

ÀÌ ¸í·ÉÀº ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÏ±â Àü¿¡ configure ½ºÅ©¸³Æ®¸¦ °®°í °³º°È­ÇÒ
¼ö ÀÖ´Â ¸ðµç ¼±ÅÃ»çÇ×À» Ãâ·ÂÇÒ °ÍÀÌ´Ù. ¼³Ä¡ µð·ºÅä¸® ¼³Á¤¿¡ °üÇÑ À¯¿ëÇÑ
¿É¼ÇÀº --prefix=pref, --exe-prefix=eprefix ¿Í --bindir=dir °¡ ÀÖ´Ù.
ÀÏ¹ÝÀûÀ¸·Î ¿É¼Ç¾øÀÌ configure¸¦ ½ÇÇà½ÃÅ²´Ù¸é ½ºÅ©¸³Æ®°¡ ÀûÀýÇÑ ¼³Á¤À»
ÀÚµ¿ÀûÀ¸·Î ÀÎÁöÇØ¼­ default·Î °øÅë À§Ä¡¿¡ ¼³Ä¡ÇÏ±â À§ÇØ ÁØºñÇÒ °ÍÀÌ´Ù.
´ÜÁö ´ÙÀ½°ú °°ÀÌ ½ÇÇà½ÃÅ²´Ù:

<tscreen><verb>
./configure
</verb></tscreen>

¸ðµç °ÍÀÌ Àß ÁøÇàµÇ´ÂÁö º¸±â À§ÇØ È­¸é¿¡ Ãâ·ÂµÇ´Â ³»¿ëÀ» º¸±æ ¹Ù¶õ´Ù.

<sect1>¼­¹ö ±¸ÃàÇÏ±â

<p>

¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Á¤ÇÑ ÈÄ ±¸ÃàÀ» ½ÃÀÛÇÏ´Âµ¥ ¿ì¼± ´ÙÀ½ ¸í·ÉÀ» ÀÌ¿ëÇÏ¿©
ÀÇÁ¸¼ºÀ» ±¸ÃàÇÑ´Ù:

<tscreen><verb>
make depend
</verb></tscreen>

´ÙÀ½ ¸í·ÉÀ» ÀÌ¿ëÇÏ¿© ¼­¹ö¸¦ ±¸ÃàÇÑ´Ù:

<tscreen><verb>
make
</verb></tscreen>

¸ðµç °ÍÀÌ Àß ÁøÇàµÈ´Ù¸é ¼­¹ö´Â ¼³Á¤µÈ´ë·Î ±¸ÃàµÉ °ÍÀÌ´Ù. ±×·¸Áö ¾Ê´Ù¸é
¼³Á¤ »çÇ×À» °ËÅäÇÏ±â À§ÇØ ÀÌÀü ´Ü°è·Î µ¹¾Æ°¡±æ ¹Ù¶õ´Ù. ÇÃ·§Æû¿¡ 
°ü°èµÇ´Â Æ¯¼öÇÑ Áö½Ã¸¦ °Ë»çÇØ¾ß ÇÏ´Âµ¥ ¼ÒÇÁÆ®¿þ¾î¸¦ ¾ÐÃàÇØÁ¦ÇÑ
µð·ºÅä¸®¹ØÀÇ doc/install/hints ¿¡ ÀÖ´Ù.

¹ÙÀÌ³Ê¸®¿Í man ÆäÀÌÁö¸¦ ¼³Ä¡ÇÑ´Ù. ¾îµð¿¡ ¼³Ä¡ÇÏ´À³Ä¿¡ µû¶ó ½´ÆÛÀ¯ÀúÀÏ
ÇÊ¿ä°¡ ÀÖ´Ù.

<tscreen><verb>
su
make install
</verb></tscreen>

¼³Ä¡°¡ ¿Ï·áµÇ¾úÀ¸¸ç ¼­¹ö ¹ÙÀÌ³Ê¸®¿Í ¿©·¯ ´Ù¸¥ À¯Æ¿¸®Æ¼µéÀÌ »ý¼ºµÇ¾úÀ»
°ÍÀÌ´Ù. LDAP ¼­¹ö ÀÛµ¿ ¼³Á¤ ¹æ¹ýÀ» º¸±â À§ÇØ¼­´Â <ref id="3Àý" 
name="´ÙÀ½">À¸·Î °¡±æ ¹Ù¶õ´Ù.

OpenLDAP 2.0 ¼­¹öÀÇ ¹ÙÀÌ³Ê¸®´Â <em>slapd</em>ÀÌ´Ù. OpenLDAP 2.0Àº 
°ø½ÄÀûÀ¸·Î 8¿ù 30ÀÏ ¹ßÇ¥µÇ¾ú´Âµ¥ RFC 2251¿¡ Á¤ÀÇµÈ ¹Ù¿Í °°ÀÌ Ldap 
ÇÁ·ÎÅäÄÝ v2À» Æ÷ÇÔÇÏ°í ÀÖ´Ù.

OpenLDAP 2.0 ÀÇ ÁÖµÈ Æ¯Â¡Àº ´ÙÀ½°ú °°´Ù:
<itemize>
<item>LDAPv2 and LDAPv3 Support (RFC2251-2256,2829-2831)
<item>Maintenance of interoperability with existing clients
<item>IPv4 and IPv6 support
<item>Strong Authentication (SASL) (RFC2829)
<item>Start TLS (RFC2830)
<item>Language Tags (RFC2596)
<item>DNS-based service location (RFC2247+"locate" I-D)
<item>Enhanced Standalone Server
<item>Named References/ManageDsaIT ("nameref" I-D)
<item>Enhanced Access Control subsystem
<item>Thread pooling
<item>Preemptive threading support
<item>Multiple listener support
<item>LDIFv1 (RFC2849)
<item>Improved platform/subsystem detection
</itemize>

Note: LDP(Linux Document Projext)¿¡ LDAP Implementation HOWTO ¹®¼­°¡
ÀÖÀ» °ÍÀÌ´Ù. ÀÌ ¹®¼­´Â OpenLDAP 2.0 ÀÇ »õ·Î¿î Æ¯Â¡À» ÀÌ¿ëÇÏ±æ ¿øÇÏ´Â
»ç¶÷µé¿¡°Ô ¸¹Àº ÀÚ·á¸¦ Á¦°øÇÒ °ÍÀÌ´Ù. ¹èÆ÷ ³¯Â¥´Â 2000³â 12¿ù ÁîÀ½ÀÌ´Ù.

OpenLDAP ÆÐÅ°Áö ÃÖ½Å ¹öÀü¿¡¼­´Â ±¸ÃàµÈ ¹ÙÀÌ³Ê¸®¸¦ ½ÃÇèÇÏ´Â °Í ¶ÇÇÑ °¡´É
ÇÑµ¥ ´ÙÀ½ ¸í·ÉÀ» ÀÌ¿ëÇÏ¿© ½ÃÇè ½ºÅ©¸³Æ®¸¦ ½ÇÇà½ÃÅ³ ¼ö ÀÖ´Ù:

<tscreen><verb>
make test
</verb></tscreen>

¾î¶² °ÍÀÌ Àß µÇÁö ¾Ê´Â´Ù¸é Ctrl-C¸¦ ´­·¯ Áß°£¿¡ Á¤Áö½ÃÅ³ ¼ö ÀÖ´Ù. ÀúÀÚÀÇ
°æ¿ì ½ºÅ©¸³Æ®°¡ ¿ÏÀüÈ÷ ³¡³ª±â Àü¿¡ Áß°£¿¡ ¸ØÃß¾ú´Âµ¥ ¾îÂ·µç OpenLDAP
¼³Á¤¿¡ ´ëÇÑ ¼º°øÀûÀÎ ¸Þ½ÃÁö¸¦ º¼ ¼ö ÀÖ¾ú´Ù.

<sect>LDAP ¼­¹ö ¼³Á¤ÇÏ±â <label id="3Àý">

<p>

¼ÒÇÁÆ®¿þ¾îÀÇ ¼³Ä¡ ¹× ±¸Ãà ¿Ï·áÈÄ »çÀÌÆ®¿¡ ÀûÇÕÇÏ°Ô ¼³Á¤ÇÒ ¼ö ÀÖ´Âµ¥ ¸ðµç
slapd ·±Å¸ÀÓ ¼³Á¤Àº ¼³Á¤ ½ºÅ©¸³Æ®¿¡¼­ ÁöÁ¤ÇÑ prefix µð·ºÅä¸® ¶Ç´Â
default·Î /usr/local/etc/openldap µð·ºÅä¸®¿¡ ¼³Ä¡µÈ
<em>slapd.conf</em> ÆÄÀÏÀ» ÅëÇØ ÀÌ·ç¾îÁø´Ù.

ÀÌ ÀýÀº <em>slapd.conf</em> ÆÄÀÏ³»ÀÇ ÀÏ¹ÝÀûÀ¸·Î »ç¿ëµÇ´Â ¼³Á¤
Áö½Ã(configuration directive)µéÀ» ¼¼ºÎÀûÀ¸·Î ¼³¸íÇÑ´Ù. ¿ÏÀüÇÑ ¸®½ºÆ®¸¦
À§ÇØ¼­´Â slap.conf(5) ¸Å´º¾ó ÆäÀÌÁö¸¦ º¸±â ¹Ù¶õ´Ù. ¼³Á¤ ÆÄÀÏ Áö½ÃµéÀº
Àü¿ªÀû, ¹é¿£µå Æ¯Á¤Àû ¹× µ¥ÀÌÅ¸ Æ¯Á¤ÀûÀÎ ºÎ¹®À¸·Î ºÐ·ùµÈ´Ù. ÀÌ Àý¿¡¼­
Áö½ÃÀÇ ¼³¸í°ú ±×µéÀÇ default °ªµé(Á¸ÀçÇÑ´Ù¸é) ¹× ±×µé »ç¿ëÀÇ ¿¹¸¦ º¼ ¼ö
ÀÖ´Ù.

<sect1>¼³Á¤ ÆÄÀÏ Æ÷¸Ë

<p>

Slapd.conf ÆÄÀÏÀº Àü¿ªÀû, ¹é¿£µå Æ¯Á¤Àû ¹× µ¥ÀÌÅ¸º£ÀÌ½º Æ¯Á¤ÀûÀÎ ¼¼°¡Áö
À¯ÇüÀÇ ¼³Á¤ Á¤º¸·Î ±¸¼ºµÇ´Âµ¥ Àü¿ªÀûÁ¤º¸, °³°³ÀÇ ¹é¿£µå ÇüÅÂ¿Í °ü·ÃµÈ
Á¤º¸¿Í °³º°Àû µ¥ÀÌÅ¸º£ÀÌ½º ÀÎ½ºÅÏ½º¿Í °ü·ÃµÈ Á¤º¸¼øÀ¸·Î ¼¼ºÎÀûÀ¸·Î
¼³¸íµÈ´Ù.

Àü¿ªÀû Áö½Ã´Â ¹é¿£µå¿Í/¶Ç´Â µ¥ÀÌÅÍº£ÀÌ½º Áö½Ã¿¡¼­ ¹«È¿È­µÉ ¼ö ÀÖÀ¸¸ç,
¹é¿£µå Áö½Ã´Â µ¥ÀÌÅÍº£ÀÌ½º Áö½Ã¿¡ ÀÇÇØ ¹«È¿È­µÉ ¼öÀÖ´Ù.

°ø¶óÀÎ°ú '#'·Î ½ÃÀÛÇÏ´Â ÁÖ¼®¶óÀÎÀº ¹«½ÃµÇ¸ç white space·Î ½ÃÀÛÇÏ´Â
¶óÀÎÀº ÀÌÀü ¶óÀÎÀÇ ¿¬¼ÓÀ¸·Î °í·ÁµÈ´Ù. Slapd.conf ÆÄÀÏÀÇ ÀÏ¹ÝÀû Æ÷¸ËÀº
´ÙÀ½°ú°°´Ù:

<tscreen><verb>
# global configuration directives
<global config directives>

# ¹é¿£ definition
¹é¿£ <typeA>
<¹é¿£-specific directives>

# first database definition & config directives
database <typeA>
<database-specific directives>

# second database definition & config directives
database <typeB>
<database-specific directives>

# second database definition & config directives
database <typeA>
<database-specific directives>

# subsequent backend & database definitions & config directives
...
</verb></tscreen>

¼³Á¤ Áö½Ã´Â ÀÎ¼ö¸¦ ÃëÇÒ ¼ö ÀÖ´Âµ¥ white space¿¡ ÀÇÇØ ±¸ºÐÇÑ´Ù. ÀÎ¼ö°¡
white space¸¦ Æ÷ÇÔÇÑ´Ù¸é "like this"¿Í °°ÀÌ ÀÌÁß ÀÎ¿ëºÎÈ£·Î
¿¡¿ö½Î¾ß ÇÑ´Ù. ÀÎ¼ö°¡ ÀÌÁß ÀÎ¿ëºÎÈ£ ¶Ç´Â ¿ª½½·¡½¬¹®ÀÚ `\'¸¦ Æ÷ÇÔÇÏ¸é
¿ª½½·¡½¬ ¹®ÀÚ°¡ ÀÌµé ¹®ÀÚ ¾Õ¿¡ ÀÖ¾î¾ß ÇÑ´Ù.

¹èÆ÷ÆÇÀº /usr/local/etc/openldap µð·ºÅä¸®¿¡ ¼³Ä¡µÉ ¼ö ÀÖ´Â ¼³Á¤ ÆÄÀÏÀÇ
¿¹¸¦ Æ÷ÇÔÇÑ´Ù. ½ºÅ°¸¶ Á¤ÀÇ(¼Ó¼º ÇüÅÂ¿Í °´Ã¼ Å¬·¡½º)¸¦ Æ÷ÇÔÇÑ ´Ù¼öÀÇ
ÆÄÀÏµéÀº /usr/local/etc/openldap/schema µð·ºÅä¸®¿¡ ¼³Ä¡µÈ´Ù.

<sect1>Àü¿ªÀû Áö½Ã <label id="3.2Àý" 

<p>

ÀÌ Àý¿¡ ±â¼úµÈ Áö½ÃµéÀº ¹é¿£µå ¶Ç´Â µ¥ÀÌÅ¸º£ÀÌ½º Á¤ÀÇ¿¡¼­ Æ¯º°È÷
¹«È¿È­µÇÁö ¾Ê´Â´Ù¸é ¸ðµç ¹é¿£µå¿¡ Àû¿ëµÈ´Ù. ½ÇÁ¦ ÅØ½ºÆ®¿¡ ÀÇÇØ ´ëÃ¼µÇ´Â
ÀÎ¼öµéÀº &lt;&gt; °ýÈ£³»¿¡ ÀÖ´Ù.

access to &lt;what&gt; [ by &lt;who&gt; &lt;accesslevel&gt; &lt;control&gt; ]+
<tscreen><verb>
ÀÌ Áö½Ã´Â ÇÑ¸í ¶Ç´Â ±× ÀÌ»óÀÇ ¿äÃ»ÀÚ(&lt;who&gt;¿¡ ÀÇÇØ ÁöÁ¤µÈ)¿¡ ÀÇÇÑ ÀÏ·ÃÀÇ ¿£Æ®¸®¿Í/¶Ç´Â ¼Ó¼º(&lt;what&gt;¿¡ ÀÇÇØ
ÁöÁ¤µÈ)¿¡ ´ëÇÑ ¿¢¼¼½º(&lt;accesslevel&gt;¿¡ ÀÇÇØ ÁöÁ¤µÈ)¸¦ Çã¿ëÇÑ´Ù. ¼¼ºÎ»çÇ×À» ¾Ë°í ½Í´Ù¸é ¿¢¼¼½º Á¦¾î ¿¹¸¦
º¸±æ ¹Ù¶õ´Ù.
</verb></tscreen>
attributetype &lt;RFC2252 Attribute Type Description&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â ¼Ó¼º ÇüÅÂ¸¦ Á¤ÀÇÇÑ´Ù.
</verb></tscreen>
defaultaccess { none | compare | search | read | write }
<tscreen><verb>
ÀÌ Áö½Ã´Â ¿¢¼¼½º Áö½Ã°¡ ÁöÁ¤µÇÁö ¾Ê¾ÒÀ» ¶§ ¿äÃ»ÀÚ¿¡°Ô Çã¿ëµÈ default ¿¢¼¼½º¸¦ ÁöÁ¤ÇÑ´Ù. ÀÓÀÇÀÇ
ÁÖ¾îÁø ¿¢¼¼½º ·¹º§Àº ¸ðµç ÇÏÀ§ ¿¢¼¼½º ·¹º§À» ³»Æ÷ÇÑ´Ù (¿¹, ÀÐ±â ¿¢¼¼½º´Â °Ë»ö°ú ºñ±³¸¦ ³»Æ÷ÇÏÁö¸¸
¾²±â¸¦ ³»Æ÷ÇÏÁö´Â ¾Ê´Â´Ù).

Default:
defaultaccess read
</verb></tscreen>
idletimeout &lt;integer&gt;
<tscreen><verb>
À¯ÈÞ Å¬¶óÀÌ¾ðÆ® ¿¬°áÀ» °­Á¦·Î Á¾·áÇÏ±â Àü¿¡ ±â´Ù¸®´Â ½Ã°£(ÃÊ)À» ÁöÁ¤ÇÑ´Ù. Default·Î 0ÀÇ°ªÀÇ ideltimeoutÀº
ÀÌ Æ¯Â¡À» ÀÛµ¿½ÃÅ°Áö ¾Ê´Â´Ù.
</verb></tscreen>
include &lt;filename&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â ÇöÀç ÆÄÀÏÀÇ ´ÙÀ½ ¶óÀÎÀ» °è¼Ó ÁøÇàÇÏ±â Àü¿¡ slapd µ¥¸óÀÌ ÁÖ¾îÁø ÆÄÀÏ·ÎºÎÅÍ ºÎ°¡ÀûÀÎ ¼³Á¤ Á¤º¸¸¦
ÀÐ¾î¾ß ÇÔÀ» ÁöÁ¤ÇÑ´Ù. IncludedµÈ ÆÄÀÏÀº ÀÏ¹ÝÀûÀÎ slapd config ÆÄÀÏ Æ÷¸ËÀ» µû¶ó¾ßÇÑ´Ù. ÆÄÀÏÀº ÀÏ¹ÝÀûÀ¸·Î
½ºÅ°¸¶ ¸í¼¼»çÇ×(specification)À» °®°íÀÖ´Â ÆÄÀÏµéÀ» Æ÷ÇÔÇÏ±âÀ§ÇØ »ç¿ëµÈ´Ù.
</verb></tscreen>
Note: ³»Æ÷ include Áö½ÃÀÇ ¼ö¿¡ Á¦ÇÑÀÌ ¾øÀ¸¸ç ·çÇÁ(loop) Å½Áö°¡ ÇàÇØÁöÁö ¾Ê±â ¶§¹®¿¡ ÀÌ Áö½Ã¸¦ »ç¿ëÇÒ
¶§´Â ÁÖÀÇÇØ¾ß ÇÑ´Ù.

loglevel &lt;integer&gt;
<tscreen><verb>
º» Áö½Ã´Â µð¹ö±ë º¸°í¼­(statement)¿Í operation Åë°è°¡ syslogged(ÇöÀç´Â syslogd(8) LOCAL4·Î ·Î±×µÇ¾îÀÖ´Ù)
µÇ¾î¾ß ÇÏ´Â ·¹º§À» ÁöÁ¤ÇÑ´Ù. ÀÌ°ÍÀÌ Àß ÀÛµ¿µÇµµ·Ï(´Ã ÀÛµ¿µÇ°í ÀÖ´Â µÎ Åë°è ·¹º§À» Á¦¿ÜÇÏ°í) OpenLDAP¸¦
--enable-debug(default) ¿É¼ÇÀ» °®°í ¼³Á¤Çß¾î¾ß ÇÑ´Ù. ·Î±× ·¹º§Àº ºÎ°¡ÀûÀÌ´Ù. ¾î¶² ¼ýÀÚ°¡ ¾î¶² Á¾·ùÀÇ
µð¹ö±ë¿¡ ÇØ´çµÇ´Â Áö¸¦ Ãâ·ÂÇÏ±âÀ§ÇØ -? À» ¿É¼Ç°ú ÇÔ²² slapd¸¦ ½ÇÇà½ÃÅ°°Å³ª ¾Æ·¡ÀÇ Å×ÀÌºíÀ» Âü°íÇÏ±æ
¹Ù¶õ´Ù. &lt;integer&gt;¿¡ °¡´ÉÇÑ °ªµéÀº ´ÙÀ½°ú °°´Ù:

-1 enable all debugging
0 no debugging
1 trace function calls
2 debug packet handling
4 heavy trace debugging
8 connection management
16 print out packets sent and received
32 search filter processing
64 configuration file processing
128 access control list processing
256 stats log connections/operations/results
512 stats log entries sent
1024 print communication with shell backends
2048 print entry parsing debugging

¿¹:
loglevel 255 or loglevel -1
ÀÌ´Â ¸Å¿ì ¸¹Àº µð¹ö±ë Á¤º¸°¡ sysloggedµÇ°Ô ÇÒ °ÍÀÌ´Ù.
Default: loglevel 256
</verb></tscreen>
objectclass &lt;RFC2252 Object Class Description&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â °´Ã¼ Å¬·¡½º¸¦ Á¤ÀÇÇÑ´Ù.
</verb></tscreen>
referral &lt;URI&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â ¿äÃ»À» Ã³¸®ÇÏ´Â ·ÎÄÃ µ¥ÀÌÅ¸º£ÀÌ½º¸¦ Ã£À»¼ö ¾øÀ» ¶§ µ¹·Áº¸³»´Â referralÀ» ÁöÁ¤ÇÑ´Ù.

¿¹:
referral ldap://root.openldap.org

ÀÌ´Â non-local ÁúÀÇ¿¡ ´ëÇØ OpenLDAP ÇÁ·ÎÁ§Æ®ÀÇ Àü¿ª ·çÆ® LDAP ¼­¹ö¸¦ ÂüÁ¶ÇÏ¶ó´Â °ÍÀ» ÀÇ¹ÌÇÑ´Ù. Smart LDAP 
Å¬¶óÀÌ¾ðÆ®´Â ±× ¼­¹ö¿¡ ÁúÀÇ¸¦ ÀçÂ÷ ¿äÃ»ÇÒ °ÍÀÌÁö¸¸, ´ëºÎºÐÀÇ Å¬¶óÀÌ¾ðÆ®´Â È£½ºÆ® ºÎºÐ°ú ¼±ÅÃÀûÀ¸·Î
±¸º°µÇ´Â ÀÌ¸§ ºÎºÐÀ» Æ÷ÇÔÇÏ´Â °£´ÜÇÑ LDAP URLsÀ» Ã³¸®ÇÏ´Â ¹æ¹ýÀ» ¾Ë·Á°í ÇÑ´Ù´Â °ÍÀ» ÁÖ¸ñÇÏ±æ ¹Ù¶õ´Ù.
</verb></tscreen>
sizelimit &lt;integer&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â °Ë»ö ¿¬»ê½Ã ¸®ÅÏµÇ´Â ÃÖ´ë ¿£Æ®¸®¼ö¸¦ ÁöÁ¤ÇÑ´Ù.

Default:
sizelimit 500
</verb></tscreen>
timelimit &lt;integer&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â slapd°¡ °Ë»ö ¿äÃ»¿¡ ´äº¯ÇÏ±âÀ§ÇØ ¾µ ¼ö ÀÖ´Â ÃÖ´ë½Ã°£(½ÇÁ¦½Ã°£, ÃÊ)À» ÁöÁ¤ÇÑ´Ù. ¿äÃ»ÀÌ ÀÌ ½Ã°£
³»¿¡ Á¾°áµÇÁö ¾Ê´Â´Ù¸é ÃÊ°úµÈ timelimitÀ» ÁöÀûÇÏ´Â °á°ú°¡ ¸®ÅÏµÉ °ÍÀÌ´Ù.

Default:
timelimit 3600
</verb></tscreen>

<sect1>ÀÏ¹ÝÀûÀÎ ¹é¿£µå ¿É¼Ç

<p>

ÀÌ ÀýÀÇ Áö½ÃµéÀº ¿À·ÎÁö ±×µéÀÌ Á¤ÀÇµÈ ¹é¿£µå¿¡¸¸ Àû¿ëµÇ´Âµ¥ ¸ðµç Á¾·ùÀÇ
¹é¿£µå°¡ ÀÌ Áö½ÃµéÀ» Áö¿øÇÑ´Ù. ¹é¿£µå Áö½Ã´Â °°Àº À¯ÇüÀÇ ¸ðµç
µ¥ÀÌÅÍº£ÀÌ½º ÀÎ½ºÅÏ½º¿¡ Àû¿ëµÇÁö¸¸ ¾î¶² Áö½Ã³Ä¿¡ µû¶ó µ¥ÀÌÅÍº£ÀÌ½º
Áö½Ã¿¡ ÀÇÇØ ¹«È¿È­µÉ ¼ö ÀÖ´Ù.

backend &lt;type&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â ¹é¿£µå Á¤ÀÇÀÇ ½ÃÀÛÀ» ³ªÅ¸³½´Ù. <type>Àº ldbm, shell, passwd ¶Ç´Â ´Ù¸¥ Áö¿øµÇ´Â ¹é¿£µå À¯Çü Áß
ÇÏ³ª¿©¾ß ÇÑ´Ù.
</verb></tscreen>

<sect1>ÀÏ¹ÝÀûÀÎ µ¥ÀÌÅ¸º£ÀÌ½º Áö½Ã

<p>
ÀÌ ÀýÀÇ Áö½ÃµéÀº ¿À·ÎÁö ±×µéÀÌ Á¤ÀÇµÈ µ¥ÀÌÅ¸º£ÀÌ½º¿¡¸¸ Àû¿ëµÇ´Âµ¥ ¸ðµç
Á¾·ùÀÇ µ¥ÀÌÅ¸º£ÀÌ½º°¡ ÀÌ Áö½ÃµéÀ» Áö¿øÇÑ´Ù.

database &lt;type&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â »õ·Î¿î µ¥ÀÌÅÍº£ÀÌ½º ÀÎ½ºÅÏ½º Á¤ÀÇÀÇ ½ÃÀÛÀ» ³ªÅ¸³½´Ù. <type>Àº ldbm, shell, passwd ¶Ç´Â ´Ù¸¥
Áö¿øµÇ´Â ¹é¿£µå ÇüÅÂÁßÀÇ ÇÏ³ª¿©¾ßÇÑ´Ù.

¿¹:
database ldbm

ÀÌ´Â LDBM ¹é¿£ µ¥ÀÌÅÍº£ÀÌ½º ÀÎ½ºÅÏ½º Á¤ÀÇÀÇ ½ÃÀÛÀ» ³ªÅ¸³½´Ù.
</verb></tscreen>
readonly { on | off }
<tscreen><verb>
ÀÌ Áö½Ã´Â µ¥ÀÌÅÍº£ÀÌ½º¸¦ &quot;read-only&quot; ¸ðµå·Î ¸¸µç´Ù. µ¥ÀÌÅÍº£ÀÌ½º¸¦ ¼öÁ¤ÇÏ·Á´Â ¸ðµç ½Ãµµ´Â
"unwilling to perform&quot" ¿¡·¯¸¦ Ãâ·ÂÇÒ °ÍÀÌ´Ù.

Default:
readonly off
</verb></tscreen>
replica host=&lt;hostname&gt;[:&lt;port&gt;] [bindmethod={ simple | kerberos | sasl }] [&quot;binddn=&lt;DN&gt;&quot;] [mech=&lt;mech&gt;] [authcid=&lt;identity&gt;] [authzid=&lt;identity&gt;] [credentials=&lt;password&gt;] [srvtab=&lt;filename&gt;]
<tscreen><verb>
ÀÌ Áö½Ã´Â µ¥ÀÌÅÍº£ÀÌ½ºÀÇ º¹»çº» »çÀÌÆ®¸¦ ÁöÁ¤ÇÑ´Ù. host= º¯¼ö´Â È£½ºÆ®¿Í ¿É¼ÇÀ¸·Î slave slapd ÀÎ½ºÅÏ½º¸¦ 
Ã£À» ¼ö ÀÖ´Â Æ÷Æ®¸¦ ÁöÁ¤ÇÑ´Ù. <hostname>¿¡´Â µµ¸ÞÀÎ ³×ÀÓ ¶Ç´Â IP ÁÖ¼Ò°¡ »ç¿ëµÉ ¼ö ÀÖ´Ù. <port>°¡ ÁöÁ¤µÇÁö
¾ÊÀ¸¸é Ç¥ÁØ LDAP Æ÷Æ® ³Ñ¹ö(389)°¡ »ç¿ëµÈ´Ù.
</verb></tscreen>
<tscreen><verb>
binddn= º¯¼ö´Â slave slapd¿¡ °»½ÅÀ» À§ÇØ bindÇÒ DNÀ» ÁØ´Ù. ÀÌ´Â ÀÏ¹ÝÀûÀ¸·Î slaveÀÇ config ÆÄÀÏ¿¡ rootdnÀ¸·Î
ÁÖ¾îÁö´Âµ¥ slave slapd µ¥ÀÌÅÍº£ÀÌ½º¿¡ ´ëÇÑ ÀÐ±â/¾²±â ¿¢¼¼½º¸¦ °®´Â DN ÀÌ¾î¾ß ÇÑ´Ù. ¶ÇÇÑ slave slapd config
ÆÄÀÏ³»ÀÇ updatedn Áö½Ã¿Í ÀÏÄ¡ÇØ¾ß ÇÑ´Ù. DNÀº Áß°£¿¡ space¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ±â¶§¹®¿¡ ÀüÃ¼ "binddn=<DN>" ¹®ÀÚ¿­Àº
ÀÌÁß ÀÎ¿ëºÎÈ£·Î ¿¡¿ö½Î¾ß ÇÑ´Ù.
</verb></tscreen>
<tscreen><verb>
bindmethod´Â slave slapd¿¡ ¿¬°áÇÒ ¶§ °£´ÜÇÑ ÆÐ½º¿öµå¿¡ ±âÃÊÇÑ ÀÎÁõ, Kerberos ÀÎÁõ ¶Ç´Â SASL ÀÎÁõÀÌ
»ç¿ëµÇ´ÂÁö¿¡ µû¶ó simple, kerveros ¶Ç´Â sasl ÀÌ´Ù.
</verb></tscreen>
<tscreen><verb>
Simple ÀÎÁõÀº ÀûÀýÇÑ ¹«°á¼º°ú ÇÁ¶óÀÌ¹ö½Ã º¸È£°¡ Àû´ç(¿¹, TLS ¶Ç´Â IPSEC)ÇÏÁö ¾Ê´Ù¸é »ç¿ëÇÏÁö ¾Ê¾Æ¾ß ÇÑ´Ù.
Simple ÀÎÁõÀº binddn°ú credential º¯¼öÀÇ ¸í¼¼ »çÇ×À» ÇÊ¿ä·Î ÇÑ´Ù.
</verb></tscreen>
<tscreen><verb>
Kerberos ÀÎÁõÀº SASL ÀÎÁõ ±â±¸, Æ¯È÷ KERBEROUS_V4¿Í GSSAPI ±â±¸¿¡ ºñÇØ ±×´ÙÁö ÁöÁö¹ÞÁö ¸øÇÏ°í ÀÖ´Ù. Kerberos
ÀÎÁõÀº binddn°ú srvtab º¯¼ö¸¦ ÇÊ¿ä·Î ÇÑ´Ù.
</verb></tscreen>
<tscreen><verb>
SASL ÀÎÁõÀÌ ÀÏ¹ÝÀûÀ¸·Î ÃßÃµµÇ´Âµ¥ mech º¯¼ö¸¦ »ç¿ëÇÏ´Â ±â±¸ÀÇ ¸í¼¼ »çÇ×À» ÇÊ¿ä·Î ÇÑ´Ù. ¸ÞÄ«´ÏÁò¿¡ µû¶ó
ÀÎÁõ identity ¿Í/¶Ç´Â credentials´Â °¢°¢ authcid¿Í credentialsÀ» »ç¿ëÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. authzid º¯¼ö°¡
ÀÎ°¡(authorization) identity¸¦ ÁöÁ¤ÇÏ±â À§ÇØ »ç¿ëµÉ ¼öµµ ÀÖ´Ù.
</verb></tscreen>
replogfile &lt;filename&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â slapd°¡ º¯°æ»çÇ×µéÀ» ±â·ÏÇÒ º¹»çº» ·Î±× ÆÄÀÏÀÇ ÀÌ¸§À» ÁöÁ¤ÇÑ´Ù. replication ·Î±×ÆÄÀÏÀº
ÀÏ¹ÝÀûÀ¸·Î slapd¿¡ ÀÇÇØ ÀÛ¼ºµÇ¸ç slurpd¿¡ ÀÇÇØ ÀÐÇôÁø´Ù. º¸Åë ÀÌ Áö½Ã´Â slurpd°¡ µ¥ÀÌÅÍº£ÀÌ½º¸¦ º¹»çÇÏ±â
À§ÇØ »ç¿ëµÇ´Â °æ¿ì¸¸ »ç¿ëµÈ´Ù. ±×·¯³ª slurpd°¡ ÀÛµ¿µÇÁö ¾Ê´õ¶óµµ Æ®·£Àè¼Ç(transaction) ·Î±×¸¦ »ý¼ºÇÏ±â
À§ÇØ ÀÌ¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì ÆÄÀÏÀÌ ¹«ÇÑÁ¤ Ä¿Áú ¼ö ÀÖ±â ¶§¹®¿¡ ÁÖ±âÀûÀ¸·Î ÆÄÀÏÀ» truncateÇÒ
ÇÊ¿ä°¡ ÀÖ´Ù.
</verb></tscreen>
rootdn &lt;dn&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â µ¥ÀÌÅÍº£ÀÌ½º¿¡¼­ ÀÛ¾÷À» ÇÏ±â À§ÇÑ ¿¢¼¼½º Á¦¾î ¶Ç´Â °ü¸®»óÀÇ ÇÑ°è Á¦ÇÑÀ» ÇÊ¿ä·Î ÇÏÁö¾Ê´Â DNÀ»
ÁöÁ¤ÇÑ´Ù. DNÀº µð·ºÅä¸®ÀÇ ¿£Æ®¸®¸¦ ÂüÁ¶ÇÒ ÇÊ¿ä°¡ ¾ø´Ù. DNÀº SASL identity¸¦ ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù.

Entry-based Example:
rootdn "cn=Manager, dc=example, dc=com"

SASL-based Example:
rootdn "uid=root@EXAMPLE.COM"
</verb></tscreen>
rootpw &lt;password&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â ÁÖ¾îÁø DNÀ» °¡Áø ¿£Æ®¸®°¡ Á¸ÀçÇÏ´ÂÁö ¶Ç´Â ÆÐ½º¿öµå¸¦ °®´ÂÁö¿¡ »ó°ü¾øÀÌ À§¿¡¼­ ÁÖ¾îÁø DN¿¡ ´ëÇØ
Ç×»ó ÀÛ¿ëÇÒ ÆÐ½º¿öµå¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ Áö½Ã´Â SASL¿¡ ±âÃÊÇÑ ÀÎÁõ¿¡ ºñÇØ ±×´ÙÁö ÁöÁö¹ÞÁö ¸øÇÏ°í ÀÖ´Ù.

¿¹:
rootpw secret
</verb></tscreen>
suffix &lt;dn suffix&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â ¹é¿£µå µ¥ÀÌÅÍº£ÀÌ½º¿¡ º¸³»Áú ÁúÀÇÀÇ DN Á¢¹Ì»ç¸¦ ÁöÁ¤ÇÑ´Ù. ´ÙÁß Á¢¹Ì»ç ¶óÀÎÀÌ ÁÖ¾îÁú ¼ö ÀÖÀ¸¸ç
°¢ µ¥ÀÌÅÍº£ÀÌ½º Á¤ÀÇ¸¦ À§ÇØ Àû¾îµµ ÇÏ³ª°¡ ÇÊ¿äÇÏ´Ù.

¿¹:
suffix "dc=example, dc=com"

"dc=example, dc=com"·Î ³¡³ª´Â ÁúÀÇ°¡ ÀÌ ¹é¿£·Î º¸³»Áú °ÍÀÌ´Ù.

Note: ÁúÀÇ¸¦ ³Ñ°ÜÁÙ ¹é¿£µå°¡ ¼±ÅÃµÉ ¶§ °¢ µ¥ÀÌÅÍº£ÀÌ½º Á¤ÀÇ¿¡¼­ ÁÖ¾îÁø ¼ø¼­´ë·Î suffix ¶óÀÎÀ» Ã£´Â´Ù.
µû¶ó¼­ ÇÑ µ¥ÀÌÅÍº£ÀÌ½º suffix°¡ ´Ù¸¥ °ÍÀÇ prefix¶ó¸é config ÆÄÀÏ¿¡¼­ ³ªÁß¿¡ ³ªÅ¸³ª¾ß ÇÑ´Ù.
</verb></tscreen>
updatedn &lt;dn&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â ´ÜÁö slave slapd¿¡¸¸ ÇØ´çµÈ´Ù. ÀÌ´Â replica º¯°æÀÌ Çã¿ëµÈ DNÀ» ÁöÁ¤ÇÑ´Ù. ÀÌ´Â replica¸¦ º¯°æÇÒ ¶§
slurpd(8)°¡ bindÇÒ DN ¶Ç´Â SASL identity¿Í °ü·ÃµÈ DN ÀÏ ¼ö ÀÖ´Ù.

Entry-based Example:
updatedn "cn=Update Daemon, dc=example, dc=com"

SASL-based Example:
updatedn "uid=slurpd@EXAMPLE.COM"
</verb></tscreen>
updateref &lt;URL&gt;
<tscreen><verb>

ÀÌ Áö½Ã´Â ´ÜÁö slave slapd ¿¡¸¸ ÇØ´çµÈ´Ù. ÀÌ´Â replica¿¡ ´ëÇÑ °»½Å ¿äÃ»À» Á¦ÃâÇÏ´Â Å¬¶óÀÌ¾ðÆ®¿¡ ´äº¯ÇÏ´Â
URLÀ» ÁöÁ¤ÇÑ´Ù. ¿©·¯¹ø ÁöÁ¤ÇÏ·Á¸é °¢°¢ÀÇ URLÀ» ³õ´Â´Ù.

¿¹: update  ldap://master.example.net
</verb></tscreen>

<sect1>LDBM ¹é¿£µå Æ¯Á¤Àû Áö½Ã

<p>

ÀÌ Ç×¸ñÀÇ Áö½Ã´Â ´ÜÁö LDBM ¹é¿£ µ¥ÀÌÅÍº£ÀÌ½º¿¡ Àû¿ëµÇ¸ç "database ldbm"
¶óÀÎ µÚ ¹× ¾î¶² ´Ù¸¥ "database" ¶óÀÎ ¾Õ¿¡ ³õ¿©¾ß ÇÑ´Ù.

cachesize &lt;integer&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â LDBM ¹é¿£µå µ¥ÀÌÅÍº£ÀÌ½º ÀÎ½ºÅÏ½º¿¡ ÀÇÇØ À¯ÁöµÇ´Â in-memory cache ¿£Æ®¸®ÀÇ Å©±â¸¦ ÁöÁ¤ÇÑ´Ù.

Default:
cachesize 1000
</verb></tscreen>
dbcachesize &lt;integer&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â °¢ ¿ÀÇÂ ÀÎµ¦½º ÆÄÀÏ°ú °ü·ÃµÈ in-memory cacheÀÇ ¹ÙÀÌÆ® Å©±â¸¦ ÁöÁ¤ÇÑ´Ù. ±âº»ÀûÀÎ µ¥ÀÌÅÍº£ÀÌ½º
¹æ¹ýÀÌ Áö¿øÇÏÁö ¾Ê´Â´Ù¸é ÁÖ¼®Ã³¸®¾øÀÌ ¹«½ÃµÈ´Ù. ÀÌ ¼ýÀÚÀÇ Áõ°¡´Â ´õ¸¹Àº ¸Þ¸ð¸® »ç¿ëÀ» ÀÇ¹ÌÇÏÁö¸¸ Æ¯È÷
ÀÎµ¦½º º¯°æÁß ¶Ç´Â ±¸ÃàÇÒ ¶§ È¿°úÀûÀÎ ¼º´ÉÇâ»óÀ» °¡Á®¿Ã °ÍÀÌ´Ù.

Default:
dbcachesize 100000
</verb></tscreen>
dbnolocking
<tscreen><verb>
ÀÌ ¿É¼ÇÀº Á¸ÀçÇÑ´Ù¸é µ¥ÀÌÅÍº£ÀÌ½º locking ±â´ÉÀ» ¾ïÁ¦ÇÑ´Ù. ÀÌ ¿É¼ÇÀ» ÀÛµ¿½ÃÅ°¸é µ¥ÀÌÅÍ º¸¾ÈÀ» ³·Ãß¸é¼­
¼º´ÉÀ» Çâ»ó½ÃÅ³ °ÍÀÌ´Ù.
</verb></tscreen>
dbnosync
<tscreen><verb>
ÀÌ ¿É¼ÇÀº µð½ºÅ©»óÀÇ µ¥ÀÌÅÍº£ÀÌ½º ³»¿ëÀÌ ¸Þ¸ð¸®³»¿¡¼­ ¹Ù²î´Â º¯°æ¿¡ Áï°¢ÀûÀ¸·Î µ¿±âÈ­µÇÁö ¾Êµµ·Ï ÇÑ´Ù.
ÀÌ ¿É¼ÇÀÇ È°¼ºÈ­´Â µ¥ÀÌÅÍ º¸¾ÈÀ» ³·ÃßÁö¸¸ ¼º´ÉÀ» Çâ»ó½ÃÅ³ °ÍÀÌ´Ù.
</verb></tscreen>
directory &lt;directory&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â µ¥ÀÌÅÍº£ÀÌ½º¿Í °ü·Ã ÀÎµ¦½º¸¦ Æ÷ÇÔÇÏ´Â LDBM ÆÄÀÏÀÌ ³õÀÌ´Â µð·ºÅä¸®¸¦ ÁöÁ¤ÇÑ´Ù.

Default:
directory /usr/local/var/openldap-ldbm
</verb></tscreen>
index {&lt;attrlist&gt; | default} [pres,eq,approx,sub,none]
<tscreen><verb>
ÀÌ Áö½Ã´Â ÁÖ¾îÁø ¼Ó¼º¿¡ ´ëÇØ À¯ÁöÇÒ ÀÎµ¦½º¸¦ ÁöÁ¤ÇÑ´Ù. ´ÜÁö <attrlist>°¡ ÁÖ¾îÁø´Ù¸é µðÆúÆ® ÀÎµ¦½º°¡
À¯ÁöµÈ´Ù.

¿¹:
index default pres,eq
index objectClass,uid
index cn,sn eq,sub,approx

Ã¹ ¹øÂ° ¶óÀÎÀº present¿Í equality¿¡ À¯ÁöÇÒ µðÆúÆ® ÀÎµ¦½º ÁýÇÕÀ» ¼³Á¤ÇÑ´Ù. µÎ ¹øÂ° ¶óÀÎÀº µðÆúÆ®(pret,eq)
ÀÎµ¦½º ÁýÇÕÀÌ objectClass¿Í uid ¼Ó¼º ÇüÅÂ¸¦ À§ÇØ À¯ÁöµÇµµ·Ï ÇÑ´Ù. ¼¼ ¹øÂ° ¶óÀÎÀº equality, substring¿Í
approximate ÀÎµ¦½ºµéÀÌ cn°ú sn ¼Ó¼º ÇüÅÂ¸¦ À§ÇØ À¯ÁöµÇµµ·Ï ÇÑ´Ù.
</verb></tscreen>
mode &lt;integer&gt;
<tscreen><verb>
ÀÌ Áö½Ã´Â »õ·ÎÀÌ »ý¼ºµÈ µ¥ÀÌÅÍº£ÀÌ½º ÀÎµ¦½º ÆÄÀÏÀÌ °¡Á®¾ß ÇÏ´Â ÆÄÀÏ º¸È£ ¸ðµå¸¦ ÁöÁ¤ÇÑ´Ù.

Default:
mode 0600
</verb></tscreen>

<sect1>´Ù¸¥ ¹é¿£µå µ¥ÀÌÅ¸º£ÀÌ½º

<p>
<em>slapd</em>´Â µðÆúÆ® LDBM ÀÌ¿Ü¿¡µµ ¸¹Àº ¹é¿£µå µ¥ÀÌÅÍº£ÀÌ½º ÇüÅÂ¸¦ Áö¿øÇÑ´Ù:
<itemize>
<item>ldbm: Berkeley or GNU DBM compatible backend
<item>passwd: Provides read-only access to /etc/passwd
<item>shell: Shell (extern program) backend
<item>sql: SQL Programmable backend
</itemize>
¼¼ºÎ»çÇ×À» ¾Ë±â À§ÇØ¼­´Â slapd.conf(5) ¸Å´º¾ó ÆäÀÌÁö¸¦ º¸±æ ¹Ù¶õ´Ù.

<sect1>¿¢¼¼½º Á¦¾î ¿¹

<p>

<ref id="3.2Àý" name="3.2Àý">¿¡ ¼³¸íÇÑ ¿¢¼¼½º Á¦¾î Áö½Ã´Â ¸Å¿ì °­·ÂÇÑµ¥
ÀÌ ÀýÀº ¿¢¼¼½º Á¦¾î »ç¿ëÀÇ ¸î ¿¹¸¦ º¸¿©ÁØ´Ù. ¿ì¼±, ¾à°£ÀÇ °£´ÜÇÑ ¿¹µé:

<tscreen><verb>
access to * by * read
</verb></tscreen>

ÀÌ ¿¢¼¼½º Áö½Ã´Â ¸ðµç »ç¶÷¿¡°Ô ÀÐ±â ¿¢¼¼½º¸¦ Çã¿ëÇÑ´Ù. ÀÌ Áö½Ã°¡
´Üµ¶À¸·Î ³ªÅ¸³ª¸é ´ÙÀ½ÀÇ defaultaccess ¶óÀÎ°ú °°´Ù.

<tscreen><verb>
defaultaccess read
</verb></tscreen>

´ÙÀ½ ¿¹´Â ¼ø¼­°¡ Áß¿äÇÑ µÎ ¿¢¼¼½º Áö½Ã¿¡¼­ DN¿¡ ÀÇÇØ ¿£Æ®¸®¸¦ ¼±ÅÃÇÏ´Â
Á¤±Ô Ç¥Çö »ç¿ëÀÇ ¿¹¸¦ º¸¿©ÁØ´Ù.

<tscreen><verb>
access to dn=".*, o=U of M, c=US"
by * search
access to dn=".*, c=US"
by * read
</verb></tscreen>

°Ë»ö ¿¢¼¼½º°¡ Çã¿ëµÈ "o=University of Michigan, c=US" ÇÏÀ§ Æ®¸®ÇÏÀÇ
¿£Æ®¸®¸¦ Á¦¿ÜÇÑ c=Us ÇÏÀ§ Æ®¸®ÇÏÀÇ ¿£Æ®¸®¿¡ ÀÐ±â ¿¢¼¼½º°¡ Çã¿ëµÈ´Ù.
ÀÌ·¯ÇÑ ¿¢¼¼½º Áö½ÃÀÇ ¼ø¼­°¡ ¹ÝÀüµÇ¸é, ¸ðµç U-M ¿£Æ®¸®¿Í c=US ¿£Æ®¸®°¡
µ¿ÀÏÇÏ±â ¶§¹®¿¡ U-M Æ¯Á¤Àû Áö½Ã´Â Àý´ë·Î ºÎÇÕµÉ ¼ö ¾ø´Ù.

´ÙÀ½ ¿¹ ¶ÇÇÑ ¿¢¼¼½º Áö½Ã¿Í "by" Àý(clause)ÀÇ ¼ø¼­ÀÇ Áß¿ä¼ºÀ» º¸¿©ÁÖ´Âµ¥
Æ¯Á¤ ¼Ó¼º°ú ´Ù¾çÇÑ &lt;who&gt; ¼±ÅÃÀÚ¿¡ ´ëÇÑ ¿¢¼¼½º¸¦ Çã¿ëÇÏ´Â ¼Ó¼º
¼±ÅÃÀÚ »ç¿ëÀÇ ¿¹¸¦ º¸¿©ÁØ´Ù.

<tscreen><verb>
access to dn=".*, o=U of M, c=US" attr=homePhone
by self write
by dn=".*, o=U of M, c=US" search
by domain=.*\.umich\.edu read
by * compare
access to dn=".*, o=U of M, c=US"
by self write
by dn=".*, o=U of M, c=US" search
by * none
</verb></tscreen>

ÀÌ ¿¹´Â "o=U of M, c=US" ÇÏºÎ Æ®¸®³»ÀÇ ¿£Æ®¸®¿¡ Àû¿ëµÈ´Ù. homePhone¸¦
Á¦¿ÜÇÑ ¸ðµç ¼Ó¼ºµé¿¡ ´ëÇØ ¿£Æ®¸®°¡ ¼Ó¼ºµéÀ» ¾µ ¼ö ÀÖ°í, ´Ù¸¥ U-M
¿£Æ®¸®´Â ¼Ó¼ºµé¿¡ ÀÇÇØ °Ë»öµÇ¸ç ¾î´À ´©±¸µµ ¿¢¼¼½º¸¦ ÇÏÁö ¸øÇÑ´Ù.
homePhone ¼Ó¼ºÀº ¿£Æ®¸®¿¡ ÀÇÇØ ¾µ ¼ö ÀÖ°í, ´Ù¸¥ U-M ¿£Æ®¸®¿¡ ÀÇÇØ °Ë»öÇÒ
¼ö ÀÖ°í, umich.edu µµ¸ÞÀÎ »ó¿¡¼­ ¿¬°áÇÏ´Â Å¬¶óÀÌ¾ðÆ®¿¡ ÀÇÇØ ÀÐÀ» ¼ö
ÀÖ°í, ´Ù¸¥ ¸ðµç »ç¶÷¿¡ ÀÇÇØ ºñ±³ÇÒ ¼ö ÀÖ´Ù.

¶§¶§·Î Æ¯Á¤ DN¿¡ ÀÚ½ÅÀÇ ¼Ó¼ºÀ» Ãß°¡ ¶Ç´Â »èÁ¦ÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀ» ÁÖ´Â °ÍÀÌ
À¯¿ëÇÏ´Ù. ¿¹¸¦ µé¾î ±×·ìÀ» »ý¼ºÇØ¼­ »ç¶÷µé·Î ÇÏ¿©±Ý member ¼Ó¼º¿¡¼­ ±×µé
¼ÒÀ¯ÀÇ DNÀ» Ãß°¡ ¹× »èÁ¦ÇÒ ¼ö ÀÖ°Ô Çã¿ëÇÏ°í ½Í´Ù¸é ´ÙÀ½ÀÇ ¿¢¼¼½º Áö½Ã¸¦
ÀÌ¿ëÇØ ¼öÇàÇÒ ¼ö ÀÖ´Ù:

<tscreen><verb>
access to attr=member,entry
by dnattr=member selfwrite
</verb></tscreen>

dnattr &lt;who&gt; ¼±ÅÃÀÚ´Â ¿¢¼¼½º°¡ member ¼Ó¼º¿¡ ¸®½ºÆ®µÈ ¿£Æ®¸®¿¡ Àû¿ëµÊÀ» ¸»ÇØÁØ´Ù. selfwrite ¿¢¼¼½º ¼±ÅÃÀÚ´Â ±× memberµéÀÌ ´Ù¸¥ °ªÀ» Á¦¿ÜÇÑ ±×µéÀÇ DN °ª¸¸À» ¼Ó¼º¿¡ Ãß°¡ ¹× »èÁ¦ÇÒ ¼ö ÀÖÀ½À» ¸»ÇØÁØ´Ù. ¾î¶² ¿£Æ®¸® ¼Ó¼ºÀÇ ¿¢¼¼½º¸¦ À§ÇØ¼­´Â ¿£Æ®¸® ¿¢¼¼½º°¡ ÇÊ¿äÇÏ±â ¶§¹®¿¡ ¿£Æ®¸® ¼Ó¼ºÀÇ Ãß°¡°¡ ÇÊ¿äÇÏ´Ù.

&lt;what&gt;Àý¿¡¼­ attr=member ´Â &quot;dn=* attr=member&quot; Àý(Áï ÀÌ°ÍÀº ¸ðµç ¿£Æ®¸®¿¡ member ¼Ó¼º°ú ºÎÇÕµÈ´Ù)ÀÇ ¼Ó±âÀÓÀ» ÁÖ¸ñÇÏ±â ¹Ù¶õ´Ù.

Note:LdapÀÇ ¿¢¼¼½º Á¦¾î¿¡ ´ëÇØ ´õ ¸¹Àº °ÍÀ» ¹è¿ì±â À§ÇØ <url
url="http://openldap.org/">ÀÇ OpenLDAP °ü¸®ÀÚ ÁöÄ§À» º¸¶ó.

<sect1>¼³Á¤ ÆÄÀÏ ¿¹

<p>

´ÙÀ½Àº ¼³¸í ÅØ½ºÆ®°¡ µé¾îÀÖ´Â ¼³Á¤ ÆÄÀÏ ¿¹Á¦ÀÌ´Ù. ÀÌ´Â X.500 Æ®¸®ÀÇ ¿©·¯
ºÎºÐµéÀ» ´Ù·ç±â À§ÇØ LDBM µ¥ÀÌÅ¸º£ÀÌ½º ÀÎ½ºÅÏ½ºÀÎ µÎ °³ÀÇ µ¥ÀÌÅÍº£ÀÌ½º¸¦
Á¤ÀÇÇÑ´Ù. ¶óÀÎ ¼ýÀÚ´Â ÂüÁ¶¸¦ À§ÇÑ °ÍÀ¸·Î ½ÇÁ¦ ÆÄÀÏ¿¡´Â ¾ø´Ù. ¿ì¼± Àü¿ªÀû
¼³Á¤ ºÎºÐ:

<itemize>
<item>1.   # example config file - global configuration section
<item>2.   include /usr/local/etc/schema/core.schema
<item>3.   referral ldap://root.openldap.org
<item>4.   access to * by * read
</itemize>

¶óÀÎ 1Àº ÁÖ¼®ÀÌ´Ù. ¶óÀÎ 2´Â ÇÙ½É ½ºÅ°¸¶ Á¤ÀÇ¸¦ °®´Â ´Ù¸¥ config ÆÄÀÏÀ»
Æ÷ÇÔÇÑ´Ù. ¶óÀÎ 3ÀÇ referral Áö½Ã´Â ¹Ø¿¡ Á¤ÀÇµÈ µ¥ÀÌÅÍº£ÀÌ½º Áß ÇÏ³ª¿¡
Áö¿ªÀûÀÌ ¾Æ´Ñ ÁúÀÇ´Â root.openldap.org È£½ºÆ®ÀÇ Ç¥ÁØ Æ÷Æ®(389)¿¡¼­
ÀÛµ¿µÇ´Â LDAP ¼­¹ö¸¦ ÂüÁ¶ÇÒ °ÍÀÓÀ» ÀÇ¹ÌÇÑ´Ù.

¶óÀÎ 4´Â Àü¿ªÀû ¿¢¼¼½º Á¦¾î·Î ºÎÇÕµÇ´Â µ¥ÀÌÅÍº£ÀÌ½º ¿¢¼¼½º Á¦¾î°¡ ¾ø°Å³ª
¶Ç´Â Å¸°Ù °´Ã¼°¡ Root DSE¿Í °°Àº ÀÓÀÇÀÇ µ¥ÀÌÅÍº£ÀÌ½ºÀÇ Á¦¾îÇÏ¿¡ ¾øÀ»¶§¸¸
»ç¿ëµÈ´Ù.

¼³Á¤ ÆÄÀÏÀÇ ´ÙÀ½ ºÎºÐÀº Æ®¸®ÀÇ "dc=example,dc=com" ºÎºÐ¿¡ ÀÖ´Â ³»¿ë¿¡
´ëÇÑ ÁúÀÇ¸¦ ´Ù·ê LDBM ¹é¿£µå¸¦ Á¤ÀÇÇÑ´Ù. µ¥ÀÌÅÍº£ÀÌ½º´Â °¢°¢ truelies¿Í
judgementday µÎ °³ÀÇ slapd ¿¡ º¹»çµÉ °ÍÀÌ´Ù. ÀÎµ¦½º´Â ¿©·¯ ¼Ó¼ºÀ» À§ÇØ
À¯ÁöµÇ¸ç userPassword ¼Ó¼ºÀº ÀÎ°¡¹ÞÁö ¸øÇÑ ¿¢¼¼½º¿¡ ´ëÇØ º¸È£µÈ´Ù.

<itemize>
<item>5.   # ldbm definition for the example.com
<item>6.   database ldbm
<item>7.   suffix "dc=example, dc=com" 
<item>8.   directory /usr/local/var/openldap
<item>9.   rootdn "cn=Manager, dc=example, dc=com"
<item>10.  rootpw secret
<item>11.  # replication directives
<item>12.  replogfile /usr/local/var/openldap/slapd.replog
<item>13.  replica host=slave1.example.com:389
<item>14.              binddn="cn=Replicator, dc=example, dc=com" 
<item>15.              bindmethod=simple credentials=secret
<item>16.  replica host=slave2.example.com
<item>17.              binddn="cn=Replicator, dc=example, dc=com" 
<item>18.              bindmethod=simple credentials=secret
<item>19.  # indexed attribute definitions
<item>20.  index uid pres,eq
<item>21.  index cn,sn,uid pres,eq,approx,sub
<item>22.  index objectClass eq
<item>23.  # ldbm access control definitions
<item>24.  access to attr=userPassword
<item>25.               by self write
<item>26.               by anonymous auth
<item>27.               by dn="cn=Admin,dc=example,dc=com" write
<item>28.               by * none
<item>29.  access to *
<item>30.               by self write
<item>31.               by dn="cn=Admin,dc=example,dc=com" write
<item>32.               by * read
</itemize>

¶óÀÎ 5´Â ÁÖ¼®ÀÌ´Ù. ¶óÀÎ 6ÀÇ µ¥ÀÌÅÍº£ÀÌ½º Å°¿öµå¿¡ ÀÇÇØ µ¥ÀÌÅÍº£ÀÌ½º
Á¤ÀÇ°¡ ½ÃÀÛµÈ´Ù. ¶óÀÎ 7Àº ÀÌ µ¥ÀÌÅÍº£ÀÌ½º¿¡ º¸³»Áú ÁúÀÇ¿¡ ´ëÇÑ DN
suffix¸¦ ÁöÁ¤ÇÑ´Ù. ¶óÀÎ 8Àº µ¥ÀÌÅÍº£ÀÌ½º ÆÄÀÏÀÌ ³õÀÏ µð·ºÅä¸®¸¦
ÁöÁ¤ÇÑ´Ù.

¶óÀÎ 9¿Í 10Àº µ¥ÀÌÅÍº£ÀÌ½º "super user" ¿£Æ®¸®¿Í °ü·Ã ÆÐ½º¿öµå¸¦
ÁöÁ¤ÇÑ´Ù. ÀÌ ¿£Æ®¸®´Â ¿¢¼¼½º Á¦¾î ¶Ç´Â Å©±â ¶Ç´Â ½Ã°£ ÇÑ°è Á¦ÇÑÀ» ÇÊ¿ä·Î
ÇÏÁö ¾Ê´Â´Ù.

¶óÀÎ 11-18Àº º¹»çº»¿¡ ´ëÇÑ °ÍÀ¸·Î ¶óÀÎ 11Àº º¹»çº» ·Î±× ÆÄÀÏÀ» ÁöÁ¤ÇÑ´Ù
(µ¥ÀÌÅÍº£ÀÌ½º¿¡ ´ëÇÑ º¯°æ »çÇ×ÀÌ ±â·ÏµÇ´Âµ¥ slapd ¿¡ ÀÇÇØ ¾²¿©Áö°í
slurpd ¿¡ ÀÇÇØ ÀÐÇôÁø´Ù). ¶óÀÎ 12-14´Â º¹»çµÈ È£½ºÆ®¿¡ ´ëÇÑ È£½ºÆ®
³×ÀÓ°ú Æ÷Æ®, °»½ÅÇÒ¶§ÀÇ bindÇÒ DN, binddn¿¡ ´ëÇØ bind ¹æ¹ý(°£·«)¹×
credentials(ÆÐ½º¿öµå)¸¦ ÁöÁ¤ÇÑ´Ù. ¶óÀÎ 15-18Àº µÎ ¹øÂ° º¹»çº» »çÀÌÆ®¸¦
ÁöÁ¤ÇÑ´Ù.

¶óÀÎ20-22´Â ´Ù¾çÇÑ ¼Ó¼º¿¡ ´ëÇØ À¯ÁöµÇ´Â ÀÎµ¦½º¸¦ °¡¸®Å²´Ù.

¶óÀÎ 24-32´Â µ¥ÀÌÅÍº£ÀÌ½º³»ÀÇ ¿£Æ®¸®¿¡ ´ëÇÑ ¿¢¼¼½º Á¦¾î¸¦ ÁöÁ¤ÇÑ´Ù. ¸ðµç
¿£Æ®¸®¿¡ ´ëÇØ userPassword´Â ¿£Æ®¸® ÀÚÃ¼ ¹× "admin" ¿£Æ®¸®¿¡ ÀÇÇØ ¾µ ¼ö
ÀÖ´Ù. ÀÌ´Â ÀÎÁõ/ÀÎ°¡ ¸ñÀû¿¡ »ç¿ëµÉ ¼ö ÀÖÁö¸¸ ±×·¸Áö ¾ÊÀº °æ¿ì ÀÐÀ» ¼ö
¾ø´Ù. ¸ðµç ´Ù¸¥ ¼Ó¼ºÀº ¿£Æ®¸®¿Í "admin" ¿£Æ®¸®¿¡ ÀÇÇØ ¾µ ¼ö ÀÖÁö¸¸
ÀÎÁõ¹ÞÀº »ç¿ëÀÚ¿¡ ÀÇÇØ ÀÐÈú ¼ö ÀÖ´Ù.

¼³Á¤ ÆÄÀÏ ¿¹ÀÇ ´ÙÀ½ ºÎºÐÀº ´Ù¸¥ LDBM µ¥ÀÌÅÍº£ÀÌ½º¸¦ Á¤ÀÇÇÏ´Âµ¥ ÀÌ
µ¥ÀÌÅÍº£ÀÌ½º´Â dc=example,dc=net ÇÏÀ§ Æ®¸®¸¦ Æ÷ÇÔÇÑ ÁúÀÇ¸¦ Ã³¸®ÇÑ´Ù. ¶óÀÎ
38ÀÌ ¾ø´Ù¸é ¶óÀÎ 4¿¡ ÀÖ´Â Àü¿ªÀû ¿¢¼¼½º ±ÔÄ¢ ¶§¹®¿¡ ÀÐ±â ¿¢¼¼½º°¡ Çã¿ëµÉ
¼ö ÀÖÀ½À» ÁÖ¸ñÇÏ±â ¹Ù¶õ´Ù.

<itemize>
<item>33.  # ldbm definition for example.net
<item>34.  database ldbm
<item>35.  suffix "dc=example, dc=net"
<item>36.  directory /usr/local/var/ldbm-example-net
<item>37.  rootdn "cn=Manager, dc=example, dc=com"
<item>38.  access to * by users read
</itemize>

<sect>LDAP ¼­¹ö ±¸µ¿ÇÏ±â <label id="4Àý">

<p>

<em>slapd</em>´Â ½ºÅÄµå ¾ó·Ð ¼­¹ö·Î¼­ ÀÛµ¿µÇµµ·Ï ¼³°èµÇ¾î ÀÖ¾î ¼­¹ö°¡
Ä³½Ì ÀÌ¿ë, ±âº» µ¥ÀÌÅÍº£ÀÌ½º¿ÍÀÇ µ¿½Ã ÀÛ¿ë ¹®Á¦ Ã³¸® ¹× ½Ã½ºÅÛ ÀÚ¿ø
º¸È£¸¦ ÇÒ ¼ö ÀÖ´Ù. inetd(8)·ÎºÎÅÍÀÇ ÀÛµ¿Àº ¿É¼ÇÀÌ ¾Æ´Ï´Ù.

<sect1>Command Line Options

<p>

<em>slapd</em>´Â ¸Þ´º¾ó ÆäÀÌÁö¿¡ »ó¼¼È÷ ¼³¸íµÈ ¹Ù¿Í °°ÀÌ ¸¹Àº
command-line ¿É¼ÇÀ» Áö¿øÇÑ´Ù. ÀÌ ÀýÀº ÀÏ¹ÝÀûÀ¸·Î ÀÚÁÖ »ç¿ëµÇ´Â ¾à°£ÀÇ
¿É¼ÇÀ» »ó¼¼È÷ ¼³¸íÇÑ´Ù:

-f &lt;filename&gt;
<tscreen><verb>

ÀÌ ¿É¼ÇÀº slapd¿¡ ´ëÇÑ ´ëÃ¼ ±¸¼º ÆÄÀÏÀ» Áö¿øÇÑ´Ù. µðÆúÆ®´Â º¸Åë /usr/local/etc/openldap/slapd.conf ÆÄÀÏÀÌ´Ù.

</verb></tscreen>
-h &lt;URLs&gt;
<tscreen><verb>

ÀÌ ¿É¼ÇÀº ´ëÃ¼ listener ±¸¼ºÀ» ÁöÁ¤ÇÑ´Ù. µðÆúÆ®´Â ldap:/// ·Î µðÆúÆ® LDAPÆ÷Æ® 389ÀÇ TCP ÀÎÅÍÆäÀÌ½º¸¦ °®´Â
LDAP¸¦ ÀÇ¹ÌÇÑ´Ù. È£½ºÆ®-Æ÷Æ® ½Ö ¹× ldaps:// ¶Ç´Â ldapi:// ¿Í °°Àº ´Ù¸¥ ÇÁ·ÎÅäÄÝ °èÈ¹À» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.
¿¹¸¦µé¾î, -h "ldaps:// ldap:/127.0.0.1:667"Àº µÎ °³ÀÇ listener¸¦ »ý¼ºÇÒ °ÍÀÌ´Ù: ÇÏ³ª´Â µðÆúÆ® LDAP/SSL Æ÷Æ®
636ÀÇ ¸ðµç ÀÎÅÍÆäÀÌ½º¿¡¼­ SSLÀ» ÀÌ¿ëÇÏ´Â LDAPÀÌ°í ´Ù¸¥ ÇÏ³ª´Â Æ÷Æ® 667ÀÇ ·ÎÄÃ È£½ºÆ®(·çÇÁ¹é,loopback)¿¡¼­
TCP¸¦ ÀÌ¿ëÇÑ LDAP. È£½ºÆ®´Â IPv4 dotted-decimal ÇüÅÂ ¶Ç´Â È£½ºÆ® ³×ÀÓÀ» »ç¿ëÇÏ¿© ÁöÁ¤µÉ ¼ö ÀÖ´Ù.
Æ÷Æ®°ªÀº ¼öÄ¡¿©¾ß ÇÑ´Ù.

</verb></tscreen>
-n &lt;service-name&gt;
<tscreen><verb>

ÀÌ ¿É¼ÇÀº ·Î±ë°ú ´Ù¸¥ ¸ñÀûÀ» À§ÇØ »ç¿ëµÇ´Â ¼­ºñ½º ÀÌ¸§À» ÁöÁ¤ÇÑ´Ù. µðÆúÆ® ¼­ºñ½º ÀÌ¸§Àº slapdÀÌ´Ù.

</verb></tscreen>
-l &lt;syslog-local-user&gt;
<tscreen><verb>

ÀÌ ¿É¼ÇÀº syslog(8) ¿¡ ´ëÇÑ ·ÎÄÃ »ç¿ëÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. LOCAL0, LOCAL1, LOCAL2,..., ¿Í LOCAL7ÀÌ °ªÀÌ ÀÖ´Ù.
µðÆúÆ®´Â LOCAL4ÀÌ´Ù. ÀÌ ¿É¼ÇÀº ¸ðµç ½Ã½ºÅÛ¿¡¼­ Áö¿øµÇÁö ¾ÊÀ» ¼ö ÀÖ´Ù.

</verb></tscreen>
-u user -g group
<tscreen><verb>

ÀÌ ¿É¼ÇµéÀº °¢°¢ ¼­¹ö¸¦ ÀÛµ¿ÇÏ´Â »ç¿ëÀÚ¿Í ±×·ìÀ» ÁöÁ¤ÇÑ´Ù. »ç¿ëÀÚ¿Í ±×·ìÀº °¢°¢ »ç¿ëÀÚ ¹× ±×·ì ÀÌ¸§°ú
uid ¹× gid ÀÏ ¼ö ÀÖ´Ù.

</verb></tscreen>
-r directory
<tscreen><verb>

ÀÌ ¿É¼ÇÀº ·±Å¸ÀÓ µð·ºÅä¸®¸¦ ÁöÁ¤ÇÑ´Ù. slapd´Â listenerÀ» ¿ÀÇÂÇÑ ÈÄ ±×·¸Áö¸¸ ¾î¶² ±¸¼ºÆÄÀÏÀ» ÀÐ±â Àü ¶Ç´Â
¾î¶² ¹é¿£µå¸¦ ÃÊ±âÈ­ÇÏ±â Àü¿¡ ÀÌ µð·ºÅä¸®·Î chroot(2) ÇÒ °ÍÀÌ´Ù.

</verb></tscreen>
-d &lt;level&gt; | ?
<tscreen><verb>

ÀÌ ¿É¼ÇÀº slapd µð¹ö±× ·¹º§À» <level>·Î ¼³Á¤ÇÑ´Ù. ·¹º§ÀÌ `?' ¹®ÀÚÀÏ ¶§´Â ¼±ÅÃÇÑ ¿É¼Ç¿¡ »ó°ü¾øÀÌ ´Ù¾çÇÑ
µð¹ö±ë ·¹º§ÀÌ Ãâ·ÂµÇ¸ç slapd ´Â Á¾·áµÈ´Ù. ÇöÀç µð¹ö±ë ·¹ºôÀº ´ÙÀ½°ú °°´Ù:

-1  enable all debugging
0  no debugging
1  trace function calls
2  debug packet handling
4  heavy trace debugging
8  connection management
16  print out packets sent and received
32  search filter processing
64  configuration file processing
128  access control list processing
256  stats log connections/operations/results
512  stats log entries sent
1024  print communication with shell ¹é¿£s
2048  print entry parsing debugging 

°¢°¢ÀÇ ¿øÇÏ´Â ·¹º§¿¡ ´ëÇØ µð¹ö±× ¿É¼ÇÀ» ÁöÁ¤ÇÔÀ¸·Î½á ´ÙÁß ·¹º§À» ÀÛµ¿½ÃÅ³ ¼ö ÀÖ´Ù. ¶ÇÇÑ  µð¹ö±ë ·¹º§Àº
ºÎ°¡ÀûÀÌ±â ¶§¹®¿¡ ½º½º·Î ·¹º§À» °è»êÇÒ ¼ö ÀÖ´Ù. Áï, function callÀ» tracing ÇØ¼­ config ÆÄÀÏÀÌ 
ÇÁ·Î¼¼½ÌµÇ´Â °ÍÀ» º¸·Á°í ÇÑ´Ù¸é ÀÌ·¯ÇÑ µÎ ·¹º§ÀÇ ÇÕ(ÀÌ °æ¿ì -d 65)À¸·Î ·¹º§À» ¼³Á¤ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
¶Ç´Â slapd °¡ °è»êÀ» ÇÏµµ·Ï ÇÒ ¼ö ÀÖ´Ù(¿¹, -d 1 -d 64). ´õ ¸¹Àº ¼¼ºÎ»çÇ×À» ¾Ë±â À§ÇØ¼­´Â &lt;ldap.h&gt; ÆÄÀÏÀ»
Âü°íÇÏ±æ ¹Ù¶õ´Ù.

Note: slapd°¡  µÎ stats ·¹º§ ÀÌ»óÀÇ ÀÓÀÇÀÇ µð¹ö±ë Á¤º¸¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖµµ·Ï Á¤ÀÇµÈ -DLDAP_DEBUG ¿É¼ÇÀ»
°®°í ÄÄÆÄÀÏµÇ¾îÀÖ¾î¾ß ÇÑ´Ù.
</verb></tscreen>

<sect1>LDAP ¼­¹ö ½ÃÀÛÇÏ±â <label id="4.2Àý">

<p>

ÀÏ¹ÝÀûÀ¸·Î slapd ´Â ´ÙÀ½°ú °°ÀÌ ±¸µ¿½ÃÅ²´Ù:

/usr/local/etc/libexec/slapd [&lt;option&gt;]*

/usr/local/etc/libexec´Â configure¿¡ ÀÇÇØ °áÁ¤µÇ¸ç &lt;option&gt;Àº
À§¿¡¼­ ¼³¸íÇÑ ¿É¼Ç(¶Ç´Â slapd(8)) ÁßÀÇ ÇÏ³ªÀÌ´Ù.  ·¹º§ 0¸¦ Æ÷ÇÔÇÏ¿©
µð¹ö±ë ·¹º§À» ÁöÁ¤ÇÏÁö ¾Ê´Â´Ù¸é slapd´Â ÀÚµ¿ÀûÀ¸·Î ºÐ±â(fork)ÇÏ¿© ±×
ÀÚ½ÅÀÇ Á¦¾î ÅÍ¹Ì³Î·ÎºÎÅÍ ºÐ¸®ÇØ¼­ ¹é±×¶ó¿îµå¿¡¼­ ½ÇÇàµÈ´Ù.

<sect1>LDAP ¼­¹ö ÁßÁöÇÏ±â

<p>

slapd¸¦ ¾ÈÀüÇÏ°Ô Á¾·á½ÃÅ°±â À§ÇØ ´ÙÀ½ÀÇ ¸í·ÉÀ» ½ÇÇà½ÃÄÑ¾ß ÇÑ´Ù:

kill -TERM `cat $(ETCDIR)/slapd.pid`

´õ¿í °ú°¨ÇÑ ¹æ¹ýÀ¸·Î slapd¸¦ Á¾·áÇÏ´Â °ÍÀº ±×°ÍÀÌ Á¾·áÀü¿¡ ´Ù¾çÇÑ ¹öÆÛ¸¦
flush ÇÒ ÇÊ¿ä°¡ ÀÖÀ» ¼ö ÀÖ±â ¶§¹®¿¡ LDBM µ¥ÀÌÅÍº£ÀÌ½º¸¦ ¼Õ»ó½ÃÅ³ ¼ö
ÀÖ´Ù. slapd´Â ÀÚ½ÅÀÇ pid¸¦ slapd.conf ÆÄÀÏ¿¡ ¼³Á¤Çß´ø µð·ºÅä¸®(¿¹¸¦µé¾î
/usr/local/var/slapd.pid)³»ÀÇ slapd.pid ÆÄÀÏ¿¡ ¾´´Ù´Â °ÍÀ» ÁÖ¸ñÇØ¶ó.

include/ldapconfig.h.edit ÆÄÀÏÀÇ SLAD_PIDFILE º¯¼ö¸¦ º¯°æÇÔÀ¸·Î½á ÀÌ pid
ÆÄÀÏÀÇ À§Ä¡¸¦ º¯°æÇÒ ¼ö ÀÖ´Ù.

Slapd ´Â slapd.conf ÆÄÀÏ¿¡ ¼³Á¤Çß´ø µð·ºÅä¸®(¿¹¸¦µé¾î
/usr/local/var/slapd.args)³»ÀÇ slapd.args ÆÄÀÏ¿¡ ¶ÇÇÑ ÀÎ¼öµéÀ» ¾µ
°ÍÀÌ´Ù.

include/ldapconfig.h.edit. ÆÄÀÏÀÇ SLAPD_ARGSFILE º¯¼ö¸¦ º¯°æÇÔÀ¸·Î½á
args ÆÄÀÏÀÇ À§Ä¡¸¦ º¯°æÇÒ ¼ö ÀÖ´Ù.

<sect>µ¥ÀÌÅ¸º£ÀÌ½º »ý¼º°ú À¯Áö º¸¼ö

<p>

ÀÌ Àý¿¡¼­´Â scratch·ÎºÎÅÍ slapd µ¥ÀÌÅ¸º£ÀÌ½º¸¦ »ý¼ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ
³íÀÇÇÑ´Ù. µ¥ÀÌÅ¸º£ÀÌ½º´Â µÎ°¡Áö ¹æ¹ýÀ¸·Î »ý¼ºÇÒ ¼ö ÀÖ´Ù. Ã¹Â°, LDAP¸¦
ÀÌ¿ëÇÏ¿© ¿Â¶óÀÎ»ó¿¡¼­ µ¥ÀÌÅÍº£ÀÌ½º¸¦ »ý¼ºÇÒ ¼ö ÀÖ´Âµ¥ °£´ÜÈ÷ slapd¸¦
±¸µ¿ÇÏ°í ¼±ÅÃÇÑ LDAP Å¬¶óÀÌ¾ðÆ®¸¦ ÀÌ¿ëÇÏ¿© ¿£Æ®¸®¸¦ Ãß°¡ÇØÁÖ¸é µÈ´Ù. ÀÌ
¹æ¹ýÀº ºñ±³Àû ÀÛÀº µ¥ÀÌÅÍº£ÀÌ½º¿¡ ´ëÇØ¼­´Â ´õÇÒ ³ªÀ§¾øÀÌ ÁÁ´Ù (¿ä±¸¿¡
µû¶ó ¼ö¹é ¶Ç´Â ¼öÃµ°³ÀÇ ¿£Æ®¸®).

µÎ ¹øÂ°´Â ÀÎµ¦½º »ý¼º µµ±¸¸¦ ÀÌ¿ëÇÏ¿© ¿ÀÇÁ¶óÀÎ»ó¿¡¼­ µ¥ÀÌÅÍº£ÀÌ½º¸¦
»ý¼ºÇÏ´Â °ÍÀÎµ¥ LDAP ¹æ¹ýÀ» ÀÌ¿ëÇÒ ¶§ ¸Å¿ì ¿À·£ ½Ã°£ÀÌ ¼Ò¿äµÉ ¼ö ÀÖ´Â
¹æ´ëÇÑ ¿£Æ®¸® »ý¼º ¶Ç´Â µ¥ÀÌÅÍº£ÀÌ½º°¡ »ý¼ºµÇ´Â µ¿¾È ¿¢¼¼½ºµÇÁö ¾Ê±â¸¦
¿øÇÒ °æ¿ì ÁÁÀº ¹æ¹ýÀÌ´Ù.

<sect1>¿Â¶óÀÎ»ó¿¡¼­ µ¥ÀÌÅ¸º£ÀÌ½º »ý¼ºÇÏ±â

<p>

OpenLDAP ¼ÒÇÁÆ®¿þ¾î ÆÐÅ°Áö¿¡´Â LDAP ¼­¹ö ÀÛµ¿Áß¿¡ ¿£Æ®¸®¸¦ Ãß°¡ÇÏ´Âµ¥
»ç¿ëÇÏ´Â ldapadd À¯Æ¿¸®Æ¼¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Ù. ¿Â¶óÀÎ»ó¿¡¼­ µ¥ÀÌÅÍº£ÀÌ½º¸¦
»ý¼ºÇÏ·Á°í ÇÑ´Ù¸é ¿£Æ®¸® Ãß°¡¸¦ À§ÇØ ldapadd µµ±¸¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. Ã¹
¹øÂ° ¿£Æ®¸®¸¦ Ãß°¡ÇÑ ÈÄ ´õ ¸¹Àº ¿£Æ®¸®¸¦ Ãß°¡ÇÏ±â À§ÇØ ldapadd¸¦ »ç¿ëÇÒ
¼ö ÀÖ´Ù. slapd¸¦ ±¸µ¿ÇÏ±â Àü¿¡ slapd.conf ÆÄÀÏ¿¡ ´ÙÀ½ ¿É¼ÇÀÌ ¼³Á¤µÇ¾î
ÀÖÀ½À» È®ÀÎÇØ¾ß ÇÑ´Ù.

suffix &lt;dn&gt;

<ref id="3Àý" name="3Àý">¿¡ ¼³¸íÇÑ ¹Ù¿Í °°ÀÌ ÀÌ ¿É¼ÇÀº ¾î¶² ¿£Æ®¸®°¡ ÀÌ
µ¥ÀÌÅ¸º£ÀÌ½º¿¡ µé¾îÀÖ´ÂÁö¸¦ ¸»ÇØÁÖ´Âµ¥ ÀÌ¸¦ »ý¼ºÇÏ·Á°í ÇÏ´Â ÇÏÀ§ Æ®¸®ÀÇ
·çÆ® DNÀ¸·Î ¼³Á¤ÇØ¾ß ÇÑ´Ù:

suffix &quot;o=TUDelft, c=NL&quot;

ÀÎµ¦½º ÆÄÀÏÀÌ »ý¼ºµÇ¾î ³õÀÌ´Â µð·ºÅä¸® ÁöÁ¤À» È®½ÇÈ÷ ÇØÁÖ¾î¾ß ÇÑ´Ù:

directory &lt;directory&gt;

¿¹:

directory /usr/local/tudelft

¿£Æ®¸®¸¦ Ãß°¡ÇÒ ¼ö ÀÖ´Â Çã°¡±ÇÀ» °¡Áø ´©±º°¡·Î slapd ¿¡ ¿¬°áÇÒ ¼ö ÀÖµµ·Ï
¼³Á¤ÇÒ ÇÊ¿ä°¡ ÀÖ´Âµ¥ ÀÌ´Â µ¥ÀÌÅÍº£ÀÌ½º Á¤ÀÇ¿¡¼­ ´ÙÀ½ µÎ ¿É¼ÇÀ» ÅëÇØ
ÀÌ·ç¾îÁø´Ù:

rootdn &lt;dn&gt;

rootpw &lt;passwd&gt; /* ¾ÏÈ£È­µÈ ÆÐ½º¿öµå¸¦ »ç¿ëÇÏ´Â °ÍÀ» ±â¾ïÇØ¶ó !!! */

ÀÌ ¿É¼ÇµéÀº µ¥ÀÌÅÍº£ÀÌ½ºÀÇ ½´ÆÛÀ¯Àú ¿£Æ®¸®(¾î¶² ÀÛ¾÷ÀÌµç ÇÒ ¼ö ÀÖ´Â
¿£Æ®¸®)¸¦ ÀÎÁõÇÏ´Âµ¥ »ç¿ëµÉ ¼ö ÀÖ´Â DN°ú password¸¦ ÁöÁ¤ÇÑ´Ù. ¿©±â¼­
ÁöÁ¤ÇÑ DN°ú password´Â ½ÇÁ¦ ÀÌ¸§À» °®´Â ¿£Æ®¸®°¡ Á¸ÀçÇÏµçÁö ¶Ç´Â
¿£Æ®¸®°¡ ÁöÁ¤µÈ ÆÐ½º¿öµå¸¦ °®´ÂÁö »ó°ü¾øÀÌ ´Ã ÀÛµ¿ÇÑ´Ù. ÀÌ´Â ¾ÆÁ÷ ¾î¶²
¿£Æ®¸®°¡ Á¸ÀçÇÏ±âµµ Àü¿¡ ¾î¶»°Ô ÀÎÁõÀ» ÇÏ°í ¾î¶»°Ô ¿£Æ®¸®¸¦ Ãß°¡ÇÏ´ÂÁöÀÇ
chicken and egg (º´¾Æ¸®°¡ ¸ÕÀú³Ä ´ßÀÌ ¸ÕÀú³Ä ÇÏ´Â ½ÄÀÇ) ¹®Á¦¸¦
ÇØ°áÇÑ´Ù.

¸¶Áö¸·À¸·Î µ¥ÀÌÅÍº£ÀÌ½º Á¤ÀÇ°¡ ¿øÇÏ´Â ÀÎµ¦½º Á¤ÀÇ¸¦ Æ÷ÇÔÇÏ´ÂÁö¸¦ È®ÀÎÇØ¾ß ÇÑ´Ù:

index {&lt;attrlist&gt; | default} [pres,eq,approx,sub,none]

¿¹¸¦µé¾î cn, sn, uid ¿Í objectclass ¼Ó¼ºÀ» ÀÎµ¦½ºÇÏ±â À§ÇØ ´ÙÀ½ ÀÎµ¦½º
¼³Á¤ ¶óÀÎÀÌ »ç¿ëµÉ ¼ö ÀÖ´Ù.

index cn,sn,uid

index objectclass pres,eq

index default none

ÃëÇâ¿¡ ¸Â°Ô ±¸¼ºÇß´Ù¸é slapd¸¦ ±¸µ¿ÇÏ°í LDAP Å¬¶óÀÌ¾ðÆ®·Î ¿¬°áÇÏ¿©
¿£Æ®¸® Ãß°¡¸¦ ½ÃÀÛÇØ¶ó. ¿¹¸¦µé¾î ldapadd µµ±¸¸¦ ÀÌ¿ëÇÏ¿© TUDelft
¿£Æ®¸®¿Í Postmaster ¿£Æ®¸®¸¦ ¼øÂ÷ÀûÀ¸·Î Ãß°¡ÇÏ±â À§ÇØ ´ÙÀ½ ³»¿ëÀ» °®´Â
/tmp/newentry ÆÄÀÏÀ» »ý¼ºÇÒ ¼ö ÀÖ´Ù:

<tscreen><verb>
o=TUDelft, c=NL
objectClass=organization
description=Technical University of Delft Netherlands

cn=Postmaster, o=TUDelft, c=NL
objectClass=organizationalRole
cn=Postmaster description= TUDelft postmaster - postmaster@tudelft.nl
</verb></tscreen>

±×¸®°í³ª¼­ ¿£Æ®¸®¸¦ ½ÇÁ¦ »ý¼ºÇÏ±â À§ÇØ ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇÑ´Ù:

<tscreen><verb>
ldapadd -f /tmp/newentry -D "cn=Manager, o=TUDelft, c=NL" -w secret
</verb></tscreen>

À§ ¸í·ÉÀº rootdnÀ» &quot;cn=Manager, o=TUDelft, c=NL&quot; À¸·Î rootpw¸¦
&quot;secret&quot; ¼³Á¤Çß´Ù°í °¡Á¤ÇÑ´Ù. command-line »ó¿¡¼­ ÆÐ½º¿öµå¸¦
Å¸ÀÌÇÎÇÏ±æ ¿øÇÏÁö ¾Ê´Â´Ù¸é -w &quot;password&quot; ´ë½Å ldapadd ¸í·É¿¡
´ëÇØ -W ¿É¼ÇÀ» »ç¿ëÇØ¶ó. ÆÐ½º¿öµå¸¦ ÀÔ·ÂÇÏ´Â ÇÁ·ÒÇÁÆ®¸¦ º¼ ¼ö ÀÖÀ»
°ÍÀÌ´Ù:

<tscreen><verb>
ldapadd -f /tmp/newentry -D "cn=Manager, o=TUDelft, c=NL" -W
Enter LDAP Password:
</verb></tscreen>

<sect1>¿ÀÇÁ¶óÀÎ»ó¿¡¼­ µ¥ÀÌÅ¸º£ÀÌ½º »ý¼ºÇÏ±â

<p>

µ¥ÀÌÅÍº£ÀÌ½º¸¦ »ý¼ºÇÏ´Â µÎ ¹øÂ° ¹æ¹ýÀº ´ÙÀ½¿¡ ¼³¸íµÈ ÀÎµ¦½º »ý¼º µµ±¸¸¦
ÀÌ¿ëÇÏ¿© ¿ÀÇÁ¶óÀÎ»ó¿¡¼­ ÀÛ¾÷À» ÇÏ´Â °ÍÀÎµ¥ LDAP ¹æ¹ýÀ» ÀÌ¿ëÇÒ ¶§ ¸Å¿ì
¿À·£ ½Ã°£ÀÌ ¼Ò¿äµÉ ¼ö ÀÖ´Â ¹æ´ëÇÑ ¿£Æ®¸® »ý¼º ¶Ç´Â µ¥ÀÌÅÍº£ÀÌ½º°¡
»ý¼ºµÇ´Â µ¿¾È ¿¢¼¼½ºµÇÁö ¾Ê±â¸¦ ¿øÇÒ °æ¿ì ÁÁÀº ¹æ¹ýÀÌ´Ù. ÀÌ µµ±¸´Â slapd
¼³Á¤ ÆÄÀÏ°ú Ãß°¡µÇ´Â ¿£Æ®¸®ÀÇ ÅØ½ºÆ® Ç¥ÇöÀ» Æ÷ÇÔÇÏ´Â ÀÔ·Â LDIF ÆÄÀÏÀ»
ÀÐ¾îµéÀÌ´Âµ¥ LDBM ÀÎµ¦½º ÆÄÀÏÀ» Á÷Á¢ÀûÀ¸·Î »ý¼ºÇÑ´Ù. config ÆÄÀÏ
µ¥ÀÌÅÍº£ÀÌ½º Á¤ÀÇ¿¡¼­ ¿ì¼±ÀûÀ¸·Î È®ÀÎ ¹× ¼³Á¤ÇÏ±æ ¿øÇÏ´Â ¿©·¯ Áß¿äÇÑ
¼³Á¤ ¿É¼ÇÀÌ ÀÖ´Ù:

suffix &lt;dn&gt;

ÀÌÀü Àý¿¡¼­ ¼³¸íÇÑ ¹Ù¿Í °°ÀÌ, ÀÌ ¿É¼ÇÀº ¾î¶² ¿£Æ®¸®°¡ ÀÌ µ¥ÀÌÅ¸º£ÀÌ½º¿¡
µé¾î ÀÖ´ÂÁö¸¦ ¸»ÇØÁÖ´Âµ¥ ÀÌ¸¦ »ý¼ºÇÏ·Á°í ÇÏ´Â ÇÏºÎ Æ®¸®ÀÇ ·çÆ® DN¿¡
¼³Á¤ÇØ¾ß ÇÑ´Ù. ¿¹:

suffix &quot;o=TUDelft, c=NL&quot;

ÀÎµ¦½º ÆÄÀÏÀÌ »ý¼ºµÇ¾î ³õÀÌ´Â µð·ºÅä¸® ÁöÁ¤À» È®½ÇÈ÷ ÇØÁÖ¾î¾ß ÇÑ´Ù.

directory &lt;directory&gt;

¿¹:

directory /usr/local/tudelft

´ÙÀ½ ¾Æ¸¶µµ °¢ ¿ÀÇÂ ÀÎµ¦½º ÆÄÀÏÀÌ »ç¿ëÇÏ´Â in-core Ä³½ÃÀÇ Å©±â¸¦
Áõ°¡½ÃÅ°±æ ¿øÇÒ ¼ö ÀÖ´Âµ¥ ÀÎµ¦½º »ý¼ºÁß ÃÖ»óÀÇ ¼º´ÉÀ» À§ÇØ ÀüÃ¼ ÀÎµ¦½º°¡
¸Þ¸ð¸®»ó¿¡ ³õ¿©¾ß ÇÑ´Ù. µ¥ÀÌÅÍ°¡ ¸Þ¸ð¸®¿¡ ¿Ã¸®Áö ¸øÇÒ Á¤µµ·Î ¹æ´ëÇÏ°Å³ª
¶Ç´Â ¸Þ¸ð¸®°¡ ³Ê¹« ÀÛ´Ù¸é ¸Þ¸ð¸® Å©±â¸¦ Áõ°¡½ÃÅ°°Å³ª ÆäÀÌÂ¡ ½Ã½ºÅÛÀ»
ÀÛµ¿½ÃÅ³ ¼ö ÀÖ´Ù. ÀÌ Å©±â´Â ´ÙÀ½ ¿É¼Ç¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù:

dbcachesize &lt;integer&gt;

¿¹:
dbcachesize 50000000

ÀÌ ¿É¼ÇÀº ²Ï Å«(Michigan ´ëÇÐ¿¡¼­ µ¥ÀÌÅÍº£ÀÌ½º´Â ´ë·« 125K ¿£Æ®¸®¸¦
°¡Áö¸ç °¡Àå Å« ÀÎµ¦½º ÆÄÀÏÀº ´ë·« 45MB ÀÌ´Ù) 50MB Å©±âÀÇ Ä³½Ã¸¦ »ý¼ºÇÒ
°ÍÀÌ´Ù. ½Ã½ºÅÛÀÌ ¾î¶² ¿É¼Ç °ª¿¡¼­ ÃÖ»óÀ¸·Î ÀÛµ¿ÇÏ´Â °¡¸¦ »ìÆìº¸±â À§ÇØ
ÀÌ ºñÆ®¼ö¿Í ¾Æ·¡¼­ ¼³¸íµÇ´Â parallelism Á¤µµ¸¦ º¯È­½ÃÅ°¸é¼­ ½ÇÇèÇØºÁ¶ó.
ÀÎµ¦½º ÆÄÀÏÀÌ ÀÏ´Ü »ý¼ºµÇ¸é slapd¸¦ ½ÇÇà½ÃÅ°±â Àü¿¡ ÀÌ °ªÀ» °¨¼Ò½ÃÅ°´Â
°ÍÀ» ÀØÁö ¸¶¶ó.

¸¶Áö¸·À¸·Î ¾î¶² ÀÎµ¦½º¸¦ ±¸ÃàÇÏ±æ ¿øÇÏ´ÂÁö ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ´Âµ¥ ÀÌ´Â
ÇÏ³ª ¶Ç´Â ±× ÀÌ»óÀÇ ÀÎµ¦½º ¿É¼Ç¿¡ ÀÇÇØ ÁöÁ¤µÈ´Ù:

index {&lt;attrlist&gt; | default} [pres,eq,approx,sub,none]

¿¹:

index cn,sn,uid pres,eq,approx

index default none

ÀÌ´Â cn, sn°ú uid ¼Ó¼º¿¡ ´ëÇØ presence, equality ¿Í approximate ÀÎµ¦½º¸¦
»ý¼ºÇÏ¸ç ³ª¸ÓÁö ´Ù¸¥ ¼Ó¼º¿¡ ´ëÇØ¼­´Â ÀÎµ¦½º¸¦ »ý¼ºÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù. ÀÌ
¿É¼Ç¿¡ ´ëÇØ ´õ ¸¹Àº Á¤º¸¸¦ ¾ò±â À§ÇØ¼­´Â <ref id="3Àý" name="3Àý">ÀÇ ¼³Á¤ ÆÄÀÏÀ» º¸¶ó.

ÃëÇâ¿¡ ¸Â°Ô ¼³Á¤Çß´Ù¸é slapadd(8) ÇÁ·Î±×·¥À» ½ÇÇà½ÃÅ´À¸·Î½á ±âº»
µ¥ÀÌÅÍº£ÀÌ½º¿Í °ü·Ã ÀÎµ¦½º¸¦ »ý¼ºÇÑ´Ù:

slapadd -l &lt;inputfile&gt; -f &lt;slapdconfigfile&gt; [-d
&lt;debuglevel&gt;] [-n &lt;integer&gt;|-b &lt;suffix&gt;]

ÀÎ¼öµéÀº ´ÙÀ½ÀÇ ÀÇ¹Ì¸¦ °®´Â´Ù:
<tscreen><verb>
-l <inputfile>
</verb></tscreen>

ÅØ½ºÆ® ÇüÅÂ·Î Ãß°¡µÇ´Â ¿£Æ®¸®¸¦ Æ÷ÇÔÇÑ LDIF ÀÔ·Â ÆÄÀÏÀ» ÁöÁ¤ÇÑ´Ù(´ÙÀ½
ÀýÀ» º¸¶ó).

<tscreen><verb>
-f &lt;slapdconfigfile&gt;
</verb></tscreen>

ÀÎµ¦½º¸¦ ¾îµð¿¡ »ý¼ºÇÏ´ÂÁö, ¾î¶² ÀÎµ¦½º¸¦ »ý¼ºÇÏ´ÂÁö µîÀ» ¸»ÇØÁÖ´Â slapd
¼³Á¤ ÆÄÀÏÀ» ÁöÁ¤ÇÑ´Ù.

<tscreen><verb>
-d &lt;debuglevel&gt;
</verb></tscreen>

&lt;debuglevel&gt;¿¡ ÀÇÇØ ÁöÁ¤µÈ µð¹ö±ëÀ» ÀÛµ¿½ÃÅ²´Ù. µð¹ö±× ·¹º§Àº slapd ¿¡ ´ëÇÑ ·¹º§°ú °°´Ù. 4.1 ÀýÀÇ ¿É¼ÇÀ» º¸¶ó.

<tscreen><verb>
-n <databasenumber>
</verb></tscreen>

¾î¶² µ¥ÀÌÅÍº£ÀÌ½º°¡ ¼öÁ¤µÇ´Â°¡¸¦ ÁöÁ¤ÇÏ´Â ¼±ÅÃÀû ÀÎ¼ö·Î ¼³Á¤ ÆÄÀÏ¿¡
¸í½ÃµÈ Ã¹ ¹øÂ° µ¥ÀÌÅÍº£ÀÌ½º´Â 1, µÎ ¹øÂ°´Â 2 µîÀ¸·Î Ç¥ÇöµÈ´Ù. µðÆúÆ®·Î
¼³Á¤ ÆÄÀÏÀÇ Ã¹ ¹øÂ° ldbm µ¥ÀÌÅÍº£ÀÌ½º°¡ »ç¿ëµÈ´Ù. -b ¿É¼Ç°ú ÇÔ²²
»ç¿ëµÇ¼­´Â ¾ÈµÈ´Ù.

<tscreen><verb>
-b <suffix>
</verb></tscreen>

¾î¶² µ¥ÀÌÅÍº£ÀÌ½º°¡ ¼öÁ¤µÇ´Â°¡¸¦ ÁöÁ¤ÇÏ´Â ¼±ÅÃÀû ÀÎ¼ö·Î µ¥ÀÌÅÍº£ÀÌ½º
³Ñ¹ö¸¦ °áÁ¤ÇÏ±â À§ÇÑ µ¥ÀÌÅÍº£ÀÌ½º suffix Áö½Ã¿Í ºÎÇÕµÇÁö ¾Ê´Â´Ù. -n
¿É¼Ç°ú ÇÔ²² »ç¿ëµÇ¼­´Â ¾ÈµÈ´Ù.

slapd.conf(5) ÆÄÀÏÀ» ¼öÁ¤ÇÑ ÈÄ¿Í °°ÀÌ ¶§¶§·Î ÀÎµ¦½ºµéÀ» Àç »ý¼ºÇÒ ÇÊ¿ä°¡
ÀÖÀ» ¼ö ÀÖ´Âµ¥ ÀÌ´Â slapindex(8) ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ¿© °¡´ÉÇÏ´Ù. slapindex
´Â ´ÙÀ½°ú °°ÀÌ ½ÇÇà½ÃÅ²´Ù:

slapindex -f &lt;slapdconfigfile&gt; [-d &lt;debuglevel&gt;] [-n
&lt;databasenumber&gt;|-b &lt;suffix&gt;]

-f, -d, -n °ú -b ¿É¼ÇÀº slapadd(1) ÇÁ·Î±×·¥¿¡ ´ëÇÑ ¿É¼Ç°ú µ¿ÀÏÇÏ´Ù. slapindex´Â ÇöÀç µ¥ÀÌÅÍº£ÀÌ½º ³»¿ë¿¡ ±âÃÊÇÑ ¸ðµç ÀÎµ¦½ºµéÀ» Àç ±¸ÃàÇÑ´Ù.

µ¥ÀÌÅÍº£ÀÌ½º¸¦ LDIF ÆÄÀÏ·Î ´ýÇÁ(dump)ÇÏ´Âµ¥ »ç¿ëµÇ´Â slapcat ÀÌ¶ó´Â
ÇÁ·Î±×·¥ÀÌ ÀÖ´Âµ¥ ÀÌ´Â µ¥ÀÌÅÍº£ÀÌ½º¸¦ ÀÐÀ» ¼ö ÀÖ´Â(human-readable)
¹é¾÷À» ÇÒ¶§³ª µ¥ÀÌÅÍº£ÀÌ½º¸¦ ¿ÀÇÁ¶óÀÎ »ó¿¡¼­ ÆíÁýÇÏ·Á°í ÇÒ ¶§ À¯¿ëÇÏ´Ù.
ÀÌ ÇÁ·Î±×·¥Àº ´ÙÀ½°ú °°ÀÌ ½ÇÇà½ÃÅ²´Ù:

slapcat -l &lt;filename&gt; -f &lt;slapdconfigfile&gt; [-d
&lt;debuglevel&gt;] [-n &lt;databasenumber&gt;|-b &lt;suffix&gt;]

-n ¶Ç´Â -b ¿É¼ÇÀº -f¸¦ »ç¿ëÇÏ¿© ÁöÁ¤µÈ slapd.conf(5)³»ÀÇ µ¥ÀÌÅÍº£ÀÌ½º¸¦ ¼±ÅÃÇÏ´Âµ¥ »ç¿ëµÈ´Ù. ÇØ´ç LDIF Ãâ·ÂÀº Ç¥ÁØ Ãâ·Â ¶Ç´Â -l ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÁöÁ¤µÈ ÆÄÀÏ¿¡ ÀÛ¼ºµÈ´Ù.

<sect1>More on the LDIF format

<p>

LDAP Data Interchange Format (LDIF)Àº °£´ÜÇÑ ÅØ½ºÆ® Æ÷¸ËÀ¸·Î LDAP
¿£Æ®¸®¸¦ Ç¥ÇöÇÏ±â À§ÇØ »ç¿ëµÈ´Ù. ¿£Æ®¸®ÀÇ ±âº» ÆûÀº:

<tscreen><verb>
#comment
dn: <distinguished name>
<attrdesc>; <attrvalue>
<attrdesc>; <attrvalue>
...
</verb></tscreen>

`#' ¹®ÀÚ·Î ½ÃÀÛÇÏ´Â ¶óÀÎµéÀº ÁÖ¼®ÀÌ´Ù. ¼Ó¼º ¼³¸í(attrdesc)Àº cn ¶Ç´Â
objectClasse ¶Ç´Â 1.2.3(¼Ó¼º ÇüÅÂ¿Í °ü·ÃµÈ OID)°ú °°Àº °£´ÜÇÑ ¼Ó¼ºÇüÅÂ
ÀÌ°Å³ª cn:lang_en_US ¶Ç´Â userCertificate;binay¿Í °°Àº ¿É¼ÇÀ» Æ÷ÇÔÇÒ ¼ö
ÀÖ´Ù.

¶óÀÎÀº single space ¶Ç´Â tab ¹®ÀÚ·Î ´ÙÀ½ ¶óÀÎÀ» ½ÃÀÛÇÔÀ¸·Î½á °è¼ÓµÉ ¼ö ÀÖ´Ù. ¿¹¸¦µé¾î:
<tscreen><verb>
dn: cn=Barbara J Jensen, dc=example, dc=
 com
cn: Barbara
      Jensen
</verb></tscreen>
Àº
<tscreen><verb>
dn: cn=Barbara J Jensen, dc=example, dc=com
cn: Barbara J Jensen
</verb></tscreen>
°ú µ¿ÀÏÇÏ´Ù.

´ÙÁß ¼Ó¼º °ªµéÀº º°°³ ¶óÀÎ¿¡¼­ ÁöÁ¤µÈ´Ù. ¿¹:
<tscreen><verb>
cn: Barbara J Jensen
cn: Babs Jensen
</verb></tscreen>

&lt;attrvalue&gt;°¡ Ãâ·ÂµÇÁö ¾Ê´Â ¹®ÀÚµéÀ» Æ÷ÇÔÇÏ°Å³ª  ¶Ç´Â space, ÄÝ·Ð(':') ¶Ç´Â '<' À¸·Î ½ÃÀÛµÈ´Ù¸é, &lt;attrdesc&gt;´ÙÀ½¿¡ ÀÌÁß ÄÝ·Ð°ú base64 ·Î ¾ÏÈ£È­µÈ °ªÀÌ ¿Â´Ù. ¿¹¸¦µé¾î "space·Î ½ÃÀÛ"µÇ´Â °ªÀº ´ÙÀ½°ú °°ÀÌ ¾ÏÈ£È­µÉ °ÍÀÌ´Ù:

<tscreen><verb> cn:: IGJlZ2lucyB3aXRoIGEgc3BhY2U= </verb></tscreen>

¼Ó¼º°ªÀ» Æ÷ÇÔÇÏ´Â URLÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¾î, ´ÙÀ½Àº jpegPhoto °ªÀÌ
/path/to/file.jpg ÆÄÀÏ·ÎºÎÅÍ ¾ò¾î¾ß ÇÔÀ» ÁöÁ¤ÇÑ´Ù.

<tscreen><verb>
cn:<file://path/to/file.jpeg
</verb></tscreen>

µ¿ÀÏÇÑ LDIF ÆÄÀÏ³»ÀÇ ´ÙÁß ¿£Æ®¸®µéÀº blank ¶óÀÎÀ¸·Î ±¸º°µÈ´Ù. ¼¼ °³ÀÇ
¿£Æ®¸®¸¦ °®´Â LDIF ÆÄÀÏÀÇ ¿¹´Â ´ÙÀ½°ú °°´Ù:

<tscreen><verb>
# Barbara's Entry
dn: cn=Barbara J Jensen, dc=example, dc=com
cn: Barbara J Jensen
cn: Babs Jensen
objectClass: person
sn: Jensen

# Bjorn's Entry
dn: cn=Bjorn J Jensen, dc=example, dc=com
cn: Bjorn J Jensen
cn: Bjorn Jensen
objectClass: person
sn: Jensen
# Base64 encoded JPEG photo
jpegPhoto:: /9j/4AAQSkZJRgABAAAAAQABAAD/2wBDABALD
A4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQ
ERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVG

# Jennifer's Entry
dn: cn=Jennifer J Jensen, dc=example, dc=com
cn: Jennifer J Jensen
cn: Jennifer Jensen
objectClass: person
sn: Jensen
# JPEG photo from file
jpegPhoto:<file://path/to/file.jpeg
</verb></tscreen>

Bjorn ¿£Æ®¸®ÀÇ jpegPhoto´Â base64·Î ¾ÏÈ£È­µÇ¾î ÀÖ°í Jennifer ¿£Æ®¸®ÀÇ
jpegPhoto´Â URLÀÌ °¡¸®Å°´Â À§Ä¡·ÎºÎÅÍ ¾ò¾îÁüÀ» ÁÖ¸ñÇÏ¶ó.

trailing space´Â LDIF ÆÄÀÏÀÇ °ªµé·ÎºÎÅÍ Á¤¸®µÇÁö ¾ÊÀ¸¸ç ¶ÇÇÑ ³»ºÎÀÇ ´ÙÁß
space´Â ¾ÐÃàµÇÁöµµ ¾Ê´Â´Ù. µ¥ÀÌÅÍ³»¿¡ trailing°ú ³»ºÎ space¸¦ ¿øÇÏÁö
¾Ê´Â´Ù¸é °Å±â¿¡ ±×µéÀ» ³ÖÁö ¸¶¶ó.

<sect1>The ldapsearch, ldapdelete and ldapmodify utilities <label 
id="5.4Àý">

<p>

ladpsearch - ldapsearch ´Â ldap_search(3) ¶óÀÌºê·¯¸® ÄÝ¿¡ ´ëÇØ ½©ÀÌ
¿¢¼¼½ºÇÒ ¼ö ÀÖ´Â ÀÎÅÍÆäÀÌ½º·Î LDAP µ¥ÀÌÅÍº£ÀÌ½º ¹é¿£ÀÇ ¿£Æ®¸®¸¦
°Ë»öÇÏ±â À§ÇØ »ç¿ëÇÑ´Ù.

ldapsearch¸¦ È£ÃâÇÏ±â À§ÇÑ °³¿ä´Â ´ÙÀ½°ú °°´Ù (°¢ ¿É¼ÇÀÇ ÀÇ¹Ì¸¦ ¾Ë±â
À§ÇØ ldapsearch man ÆäÀÌÁö¸¦ Ã£¾Æº¸¶ó):

<tscreen><verb>
ldapsearch  [-n]  [-u]  [-v]  [-k]  [-K]  [-t]  [-A] [-B] [-L] [-R] [-d debuglevel] [-F sep] [-f file]
[-D binddn]  [-W]  [-w bindpasswd] [-h ldaphost]  [-p ldapport]   [-b searchbase]   [-s base|one|sub]
[-a never|always|search|find] [-l timelimit] [-z sizelimit] filter [attrs...]
</verb></tscreen> 

ladpsearch´Â LDAP ¼­¹ö¿¡ ¿¬°á, ¹ÙÀÎµåÇØ ÇÊÅÍ¸¦ ÀÌ¿ëÇÏ¿© °Ë»öÀ» ¼öÇàÇÑ´Ù.
ÇÊÅÍ´Â RFC 1558¿¡ Á¤ÀÇµÈ °Í°ú °°Àº LDAP ÇÊÅÍ¿¡ ´ëÇÑ ¹®ÀÚ¿­ Ç¥ÇöÀ» µû¶ó¾ß
ÇÑ´Ù. ldapsearch°¡ ÇÏ³ª ¶Ç´Â ±× ÀÌ»óÀÇ ¿£Æ®¸®¸¦ Ã£À¸¸é attrs¿¡ ÀÇÇØ
ÁöÁ¤µÈ ¼Ó¼ºµéÀÌ °Ë»öµÇ¾î ¿£Æ®¸®¿Í °ªÀÌ Ç¥ÁØ Ãâ·ÂÀ¸·Î Ãâ·ÂµÈ´Ù. attrs°¡
¸í½ÃµÇÁö ¾ÊÀ¸¸é ¸ðµç ¼Ó¼ºµéÀ» µÇµ¹·ÁÁØ´Ù.

´ÙÀ½Àº ldapsearch »ç¿ë ¿¹ÀÌ´Ù:
<tscreen><verb>
ldapsearch -b 'o=TUDelft,c=NL' 'objectclass=*'

ldapsearch -b 'o=TUDelft,c=NL' 'cn=Rene van Leuken'

ldasearch -u -b 'o=TUDelft,c=NL' 'cn=Luiz Malere' sn mail
</verb></tscreen>

-b ¿É¼ÇÀº searchbase(initial search point, ÃÊ±â °Ë»ö ÁöÁ¡)À» -u ¿É¼ÇÀº »ç¿ëÀÚ¿¡ Æí¸®ÇÑ(userfriendly) Ãâ·Â Á¤º¸¸¦ ³ªÅ¸³½´Ù.

ldapdelete - ldapdelete´Â ldap_delete(3) ¶óÀÌºê·¯¸® ÄÝ¿¡ ´ëÇØ ½©ÀÌ
¿¢¼¼½ºÇÒ ¼ö ÀÖ´Â ÀÎÅÍÆäÀÌ½º·Î LDAP µ¥ÀÌÅÍº£ÀÌ½º ¹é¿£µåÀÇ ¿£Æ®¸®¸¦
»èÁ¦ÇÏ±â À§ÇØ »ç¿ëÇÑ´Ù.

ldapdelete¸¦ È£ÃâÇÏ±â À§ÇÑ °³¿ä´Â ´ÙÀ½°ú °°´Ù (°¢ ¿É¼ÇÀÇ ÀÇ¹Ì¸¦ ¾Ë±â
À§ÇØ ldapdelete man ÆäÀÌÁö¸¦ Ã£¾Æº¸¶ó):

<tscreen><verb>
ldapdelete   [-n]   [-v]  [-k]  [-K]  [-c]  [-d debuglevel]  [-f file]  [-D binddn]  [-W]  [-w passwd]
[-h ldaphost] [-p ldapport] [dn]...
</verb></tscreen>

ldapdelete´Â LDAP ¼­¹ö¿¡ ¿¬°á, ÇÏ³ª ¶Ç´Â ±× ÀÌ»óÀÇ ¿£Æ®¸®¸¦ ¹ÙÀÎµåÇØ
»èÁ¦ÇÑ´Ù. ÇÏ³ª ¶Ç´Â ±× ÀÌ»óÀÇ dn ÀÎ¼ö°¡ Á¦°øµÇ¸é ÀÌ·¯ÇÑ DNÀ» °®´Â
¿£Æ®¸®´Â »èÁ¦µÈ´Ù. °¢ dnÀº RFC 1779¿¡ Á¤ÀÇµÈ °Í°ú °°Àº ¹®ÀÚ¿­·Î Ç¥ÇöµÈ
DN ÀÌ¾î¾ß ÇÑ´Ù. dn ÀÎ¼ö°¡ ¾ø´Ù¸é DNÀÇ ¸®½ºÆ®°¡ Ç¥ÁØ ÀÔ·Â(¶Ç´Â -f flag°¡
»ç¿ëµÈ´Ù¸é ÆÄÀÏ)À¸·ÎºÎÅÍ ÀÐÇôÁø´Ù.

´ÙÀ½Àº ldapdelete »ç¿ë ¿¹ÀÌ´Ù:
<tscreen><verb>
ldapdelete 'cn=Luiz Malere,o=TUDelft,c=NL'

ldapdelete -v 'cn=Rene van Leuken,o=TUDelft,c=NL' -D 'cn=Luiz malere,o=TUDelft,c=NL' -W
</verb></tscreen>

-v ¿É¼ÇÀº verbose ¸ðµå, -D ¿É¼ÇÀº Binddn(ÀÎÁõµÇ¾î¾ß ÇÏ´Â dn), -W ¿É¼ÇÀº ÆÐ½º¿öµå ÇÁ·ÒÇÁÆ®¸¦ ³ªÅ¸³½´Ù.

ldapmodify - ldapmodify ´Â ldap_modify(5)¿Í ldap_add ¶óÀÌºê·¯¸® ÄÝ¿¡
´ëÇØ ½©ÀÌ ¿¢¼¼½ºÇÒ ¼ö ÀÖ´Â ÀÎÅÍÆäÀÌ½º·Î LDAP µ¥ÀÌÅÍº£ÀÌ½º ¹é¿£µåÀÇ
¿£Æ®¸®¸¦ ¼öÁ¤ÇÏ±â À§ÇØ »ç¿ëÇÑ´Ù.

ldapmodify¸¦ È£ÃâÇÏ±â À§ÇÑ °³¿ä´Â ´ÙÀ½°ú °°´Ù(°¢ ¿É¼ÇÀÇ ÀÇ¹Ì¸¦ ¾Ë±â À§ÇØ
ldapmodify man ÆäÀÌÁö¸¦ Ã£¾Æº¸¶ó)

<tscreen><verb>
ldapmodify   [-a]  [-b]  [-c]  [-r]  [-n]  [-v]  [-k]  [-d debuglevel]  [-D binddn]  [-W]  [-w passwd]
[-h ldaphost] [-p ldapport] [-f file]
</verb></tscreen>
<tscreen><verb>
ldapadd [-b] [-c] [-r] [-n] [-v]  [-k]  [-K]  [-d debuglevel]  [-D binddn]  [-w passwd]  [-h ldaphost]
[-p ldapport] [-f file]
</verb></tscreen>

ldapadd´Â ldapmodify µµ±¸¿¡ ´ëÇØ ÇÏµå ¸µÅ©µÇ¾î ¼öÇàµÇ´Âµ¥ ldapadd°¡
½ÇÇàµÉ ¶§ ldapmodifyÀÇ -a (»õ·Î¿î ¿£Æ®¸®¸¦ Ãß°¡) flag °¡ ÀÚµ¿ÀûÀ¸·Î
¼³Á¤µÈ´Ù. ldapmodify´Â LDAP ¼­¹ö¿¡ ¿¬°á, ¹ÙÀÎµåÇØ ¿£Æ®¸®¸¦ ¼öÁ¤ ¶Ç´Â
Ãß°¡ÇÑ´Ù. ¿£Æ®¸® Á¤º¸´Â Ç¥ÁØ ÀÔ·Â ¶Ç´Â -f ¿É¼ÇÀ» »ç¿ë½Ã ÆÄÀÏ·ÎºÎÅÍ
ÀÐÇôÁø´Ù.

´ÙÀ½Àº ldapmodifyÀÇ »ç¿ë ¿¹ÀÌ´Ù:

/tmp/entrymods °¡ Á¸ÀçÇÏ°í ´ÙÀ½ ³»¿ëÀ» °®°í ÀÖ´Ù°í °¡Á¤ÇÑ´Ù:
<tscreen><verb>
dn: cn=Modify Me, o=University of Michigan, c=US
changetype: modify
replace: mail
mail: modme@terminator.rs.itd.umich.edu
-
add: title
title: Grand Poobah
-
add: jpegPhoto
jpegPhoto: /tmp/modme.jpeg
-
delete: description
-
</verb></tscreen>
¸í·É:
<tscreen><verb>
ldapmodify -b -r -f /tmp/entrymods
</verb></tscreen>

ÀÌ´Â "Modify Me" ¿£Æ®¸®ÀÇ ¸ÞÀÏ ¼Ó¼º ³»¿ëÀ»
"modme@terminator.rs.itd.umich.edu"·Î ´ëÃ¼ÇÏ°í, "Grand Poobah"À»
Å¸ÀÌÆ²¿¡ /tmp/modme.jpeg ÆÄÀÏÀÇ ³»¿ëÀ» jpegPhoto·Î Ãß°¡ÇÏ¸ç, description
¼Ó¼ºÀ» ¿ÏÀüÈ÷ »èÁ¦ÇÑ´Ù.

À§¿Í µ¿ÀÏÇÑ ¼öÁ¤Àº ÀÌÀü ldapmodify ÀÔ·Â Æ÷¸ËÀ» ÀÌ¿ëÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ´Ù:
<tscreen><verb>
cn=Modify Me, o=University of Michigan, c=US mail=modme@terminator.rs.itd.umich.edu
+title=Grand Poobah
+jpegPhoto=/tmp/modme.jpeg
-description
</verb></tscreen>
´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃÅ²´Ù:
ldapmodify -b -r -f /tmp/entrymods

/tmp/newentry ÆÄÀÏÀÌ Á¸ÀçÇÏ°í ´ÙÀ½ ³»¿ëÀ» °®´Â´Ù°í °¡Á¤ÇÑ´Ù:
<tscreen><verb>
dn: cn=Barbara Jensen, o=University of Michigan, c=US
objectClass: person
cn: Barbara Jensen
cn: Babs Jensen
sn: Jensen
title: the world's most famous manager
mail: bjensen@terminator.rs.itd.umich.edu
uid: bjensen
</verb></tscreen>
´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃÅ²´Ù:
<tscreen><verb>
ldapadd -f /tmp/entrymods
</verb></tscreen>
/tmp/newentry ÆÄÀÏÀÌ Á¸ÀçÇÏ°í ´ÙÀ½ ³»¿ëÀ» °®´Â´Ù°í °¡Á¤ÇÑ´Ù:
<tscreen><verb>
dn: cn=Barbara Jensen, o=University of Michigan, c=US
changetype: delete
</verb></tscreen>
´ÙÀ½ ¸í·ÉÀº Babs JensenÀÇ ¿£Æ®¸®¸¦ »èÁ¦ÇÑ´Ù:
<tscreen><verb>
ldapmodify -f /tmp/entrymods
</verb></tscreen>

-f ¿É¼ÇÀº ÆÄÀÏ(Ç¥ÁØ ÀÔ·Â´ë½Å ÆÄÀÏ·ÎºÎÅÍ ¼öÁ¤ Á¤º¸¸¦ ÀÐ´Â), -b ¿É¼ÇÀº ¹ÙÀÌ³Ê¸®(ÀÔ·Â ÆÄÀÏÀÇ '/'·Î ½ÃÀÛµÇ´Â ¸ðµç °ªµéÀº ¹ÙÀÌ³Ê¸®·Î ÇØ¼®µÈ´Ù), -r ¿É¼ÇÀº ´ëÃ¼(µðÆúÆ®·Î ±âÁ¸ °ªÀ» ´ëÃ¼ÇÑ´Ù)¸¦ ³ªÅ¸³½´Ù.

<sect>ºÎ°¡Àû Á¤º¸¿Í Æ¯Â¡

<p>

ÀÌ ÀýÀº µð·ºÅä¸®¸¦ ÁúÀÇÇÏ´Âµ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â LDAP Å¬¶óÀÌ¾ðÆ®ÀÎ Netscape
Address Book¿¡ °üÇÑ Á¤º¸¸¦ ´Ù·é´Ù. ¶ÇÇÑ ³Ý½ºÄÉÀÌÇÁ ³×ºñ°ÔÀÌÅÍ ¹öÀü 4.5
¶Ç´Â ±× ÀÌ»ó°ú LDAP ¼­¹ö¸¦ ÀÌ¿ëÇÏ¿© ·Î¿ì¹Ö ¿¢¼¼½º(roaming access)¸¦
¼öÇàÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ ¼¼ºÎ»çÇ×µµ ¼³¸íÇÑ´Ù. ·Î¿ì¹Ö ¿¢¼¼½º´Â ´Ù ¼öÇàµÇÁö´Â
¾Ê±â ¶§¹®¿¡ OpenLDAP ¸ÞÀÏ¸µ ¸®½ºÆ®¿¡ ¸Å¿ì ¸¹ÀÌ ³íÀÇµÇ°í ÀÖ´Âµ¥ ´ëºÎºÐÀÇ
»ç¿ëÀÚµéÀº LDAP ¼­¹ö¿¡ ´Ù¿î·Îµå ¹× ¾÷·Îµå¸¦ ÇÏ´Â ¹Ý¸é ³Ý½ºÄÉÀÌÇÁ
³×ºñ°ÔÀÌÅÍ°¡ LDAP ¼­¹ö¿Í ÇÔ²² ÀÛµ¿µÇ´Â ¹æ½ÄÀ» ÁÁ¾ÆÇÏÁö ¾Ê´Â´Ù. µû¶ó¼­ 
ÀýÀ» ÀÐÀº ÈÄ ·Î¿ì¹Ö ¿¢¼¼½º°¡ ¿øÇÏ´Â ¹æ½Ä´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù ÇÏ´õ¶óµµ
±¥³äÄ¡ ¸»±â¸¦ ¹Ù¶õ´Ù. ¸¹Àº»ç¶÷µéÀÌ ÀÌ·¯ÇÑ °úÁ¤À» ÀÌ¹Ì °ÅÃÄ ¿Ô´Ù. ÀÌ ÀýÀº
»ç¶÷µé¿¡°Ô LDAP ÇÁ·ÎÅäÄÝÀÇ °¡´É¼º¿¡ ´ëÇÑ ¾ÆÀÌµð¾î¸¦ Á¦°øÇÏ±â À§ÇØ ÀÌ·±
Æ¯Â¡À» ¼Ò°³ÇÑ´Ù. slapd ÇÁ·Î¼¼½º¸¦ ¾ÈÀüÇÏ°Ô Á¾·áÇÏ´Â °Í°ú slapd ·Î±×¿¡
´ëÇÑ ´Ù¼ÒÀÇ Á¤º¸°¡ Á¦°øµÈ´Ù.

<sect1>·Î¿ì¹Ö ¿¢¼¼½º(Roaming Access)

<p>

·Î¿ì¹Ö ¿¢¼¼½º¸¦ »ç¿ëÇÏ¸é ³Ý»óÀÇ ¾îµð¿¡ ÀÖ´øÁö ³Ý½ºÄÉÀÌÇÁ ³×ºñ°ÔÀÌÅÍ¿Í
LDAP¼­¹ö¸¦ ÀÌ¿ëÇÏ¿© ºÏ¸¶Å©, preference, ¸ÞÀÏ ÇÊÅÍ µîÀ» °¡Á®¿Ã ¼ö ÀÖ´Âµ¥
ÀÌ´Â ¸Å¿ì ¸ÚÁø Æ¯Â¡ÀÌ´Ù. ¾îµð¼­ À¥¿¡ ¿¢¼¼½ºÇÏ´øÁö ºê¶ó¿ìÀú¿¡ ´ëÇÑ °íÀ¯ÀÇ
¼³Á¤À» °¡Áú ¼ö ÀÖ´Ù°í »ó»óÇØº¸¶ó. ¿©ÇàÁß¿¡ ·ÎÄÃ ºÏ¸¶Å©¿¡ ÀúÀåµÈ ÅëÈ­
»çÀÌÆ®¿¡ ¿¢¼¼½ºÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é °ÆÁ¤ÇÏÁö ¸¶¶ó. ºÏ¸¶Å©¿Í ´Ù¸¥¼³Á¤
ÆÄÀÏµéÀ» LDAP ¼­¹ö¿¡ ¾÷·ÎµåÇØ¼­ ÃßÈÄ ¾î´À Àå¼Ò¿¡ ÀÖ´øÁö ±×µéÀ» ´Ù °¡Á®¿Ã
¼ö ÀÖ´Ù.

·Î¿ì¹Ö ¿¢¼¼½º¸¦ ¼öÇàÇÏ±âÀ§ÇØ ´ÙÀ½ ´Ü°è¸¦ µû¶ó¾ß ÇÑ´Ù:
<itemize>
<item> slapd.conf ¼³Á¤ÆÄÀÏ¿¡ »õ·Î¿î ½ºÅ°¸¶(schema) ÆÄÀÏÀ» Æ÷ÇÔÇÑ´Ù
<item> slapd.conf ¼³Á¤ÆÄÀÏÀÇ µ¥ÀÌÅ¸º£ÀÌ½º ºÎºÐ¿¡ º¯°æ ÇÊµå¸¦ ¼³Á¤ÇÑ´Ù
<item> ·Î¿ì¹Ö ¿¢¼¼½ºÀÇ »ç¿ëÀ» ¿øÇÏ´Â »ç¿ëÀÚµé¿¡ ´ëÇÑ ÇÁ·ÎÆÄÀÏ ¿£Æ®¸®¸¦ 
Ã·°¡ÇÔÀ¸·Î½á Ldif ÆÄÀÏÀ» º¯°æÇÑ´Ù
<item> LDAP ¼­¹ö¸¦ ·Î¿ì¹Ö ¿¢¼¼½º ¼­¹ö·Î »ç¿ëÇÏ±â À§ÇØ ³Ý½ºÄÉÀÌÇÁ 
³×ºñ°ÔÀÌÅÍ¸¦ ¼³Á¤ÇÑ´Ù
<item> »õ·Î¿î ¼³Á¤ »çÇ×À¸·Î LDAP ¼­¹ö¸¦ Àç½ÃÀÛÇÑ´Ù
</itemize>

- »õ·Î¿î ½ºÅ°¸¶ ÆÄÀÏ Æ÷ÇÔÇÏ±â: ¹ØÀÇ ºÎºÐÀ» º¹»ç ¹× ºÙ¿©³Ö±â ÇÑÈÄ 
.schema È®ÀåÀÚ¸¦ °®´Â ÅØ½ºÆ® ÆÄÀÏ·Î ÀúÀåÇÑ´Ù. ´ë°³ ÀÌ ÆÄÀÏÀº 
/usr/local/etc/openldap/schema µð·ºÅä¸®³»¿¡ ÀúÀåµÉ °ÍÀÌ´Ù. ¿øÇÑ´Ù¸é 
ÆÄÀÏÀ» <url url="http://home.kabelfoon.nl/~hvdkooij/mull.schema">·ÎºÎÅÍ 
´Ù¿î¹ÞÀ» ¼ö ÀÖ´Ù. slapd.conf ÆÄÀÏ¿¡ ´ÙÀ½°ú °°ÀÌ core.schema Á¤ÀÇ ÆÄÀÏÀ» 
Æ÷ÇÔÇØ¾ß ÇÔÀ» ¸í½ÉÇÏ¶ó:

<tscreen><verb>
include /usr/local/etc/schema/core.schema
</verb></tscreen>
<tscreen><verb>
#       ÀÌ ½ºÅ°¸¶´Â core ½ºÅ°¸¶°¡ ÀûÀçµÇ´Â °ÍÀ» ÀüÁ¦·Î ÇÑ´Ù

# ³Ý½ºÄÉÀÌÇÁ ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ Á¤º¸¸¦ OpenLDAP v2 ³»·Î ÀúÀåÇÏ´Âµ¥ »ç¿ë
# ÀÌ´Â ½ÇÁ¦ ÇÁ·ÎÆÄÀÏ ÀÌ¸§À» µ¥ÀÌÅ¸º£ÀÌ½º³»·Î ÀúÀåÇÑ´Ù.
attributeType ( 1.3.6.1.4.1.7081.1.1.1
	 NAME 'nsLIProfileName'
         DESC 'Store Netscape Roaming Profile name'
         EQUALITY caseIgnoreMatch
         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

# ³Ý½ºÄÉÀÌÇÁ ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ Á¤º¸¸¦ OpenLDAP v2 ³»·Î ÀúÀåÇÏ´Âµ¥ »ç¿ë
attributeType ( 1.3.6.1.4.1.7081.1.1.2
         NAME 'nsLIPrefs'
         DESC 'Store Netscape Roaming Profile preferences'
         EQUALITY caseExactIA5Match
         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

# ³Ý½ºÄÉÀÌÇÁ ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ Á¤º¸¸¦ OpenLDAP v2 ³»·Î ÀúÀåÇÏ´Âµ¥ »ç¿ë
attributeType ( 1.3.6.1.4.1.7081.1.1.3
         NAME 'nsLIElementType'
         DESC ''
         EQUALITY caseIgnoreMatch
         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

# ³Ý½ºÄÉÀÌÇÁ ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ Á¤º¸¸¦ OpenLDAP v2 ³»·Î ÀúÀåÇÏ´Âµ¥ »ç¿ë
attributeType ( 1.3.6.1.4.1.7081.1.1.4
         NAME 'nsLIData'
         DESC 'Store the actual data blocks'
         EQUALITY bitStringMatch
         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

# ³Ý½ºÄÉÀÌÇÁ ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ Á¤º¸¸¦ OpenLDAP v2 ³»·Î ÀúÀåÇÏ´Âµ¥ »ç¿ë
attributeType ( 1.3.6.1.4.1.7081.1.1.5
         NAME 'nsLIVersion'
         DESC 'Store Netscape Roaming Profile version'
         EQUALITY integerMatch
         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )

# ³Ý½ºÄÉÀÌÇÁ ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ Á¤º¸¸¦ OpenLDAP v2 ³»·Î ÀúÀåÇÏ´Âµ¥ »ç¿ë
# ÀÌ´Â ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏÀÇ ±âº» »ç¿ëÀÚ·Î LDAP µ¥ÀÌÅ¸º£ÀÌ½º³»¿¡ Á¤º¸¸¦ 
# ÀúÀåÇÏ±âÀü¿¡ »ý¼ºµÇ¾î¾ß ÇÑ´Ù.
objectClass ( 1.3.6.1.4.1.7081.1.2.1
         NAME 'nsLIProfile'
         DESC 'Base holder of the NetScape Roaming Profile'
         SUP top
         MUST ( objectClass $ nsLIProfileName )
         MAY ( nsLIPrefs $ uid $ owner )
         )

# ³Ý½ºÄÉÀÌÇÁ ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ Á¤º¸¸¦ OpenLDAP v2 ³»·Î ÀúÀåÇÏ´Âµ¥ »ç¿ë
# ÀÌ °´Ã¼ Å¬·¡½º´Â ½ÇÁ¦ µ¥ÀÌÅ¸¸¦ ÀúÀåÇÒ °ÍÀÌ´Ù.
objectClass ( 1.3.6.1.4.1.7081.1.2.2
         NAME 'nsLIProfileElement'
         DESC 'Contains the actual Roaming Profile data'
         SUP top
         MUST ( objectClass $ nsLIElementType )
         MAY ( owner $ nsLIData $ nsLIVersion )
	 )

# EOF
</verb></tscreen>

- º¯°æ ÇÊµå ¼³Á¤ÇÏ±â: ³Ý½ºÄÉÀÌÇÁ°¡ ÇÁ·ÎÆÄÀÏ µ¥ÀÌÅ¸ÀÇ Áö¿ªÀû º¹»çº»À» 
LDAP ¼­¹ö¿Í ºñ±³ÇÒ ¼ö ÀÖÀ½À» È®ÀÎÇÏ±â À§ÇØ µ¥ÀÌÅ¸º£ÀÌ½º³»ÀÇ º¯°æ ½Ã°£À» 
¼³Á¤ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. slapd.conf ÆÄÀÏÀÇ µ¥ÀÌÅ¸º£ÀÌ½º ºÎºÐ¿¡ ´ÙÀ½°ú °°Àº 
°£´ÜÇÑ ¶óÀÎÀ» Ã·°¡ÇÏ´Â °ÍÀ¸·Î ÃæºÐÇÏ´Ù:

<tscreen><verb>
lastmod on
</verb></tscreen>

- Ldif ÆÄÀÏ º¯°æÇÏ±â: ³Ý½ºÄÉÀÌÇÁÀÇ ·Î¿ì¹Ö ¿¢¼¼½º Æ¯Â¡À» ÀÌ¿ëÇÏ·Á°í ÇÏ´Â 
°¢ »ç¿ëÀÚµéÀº Ldif ÆÄÀÏ¿¡ ÇÁ·ÎÆÄÀÏ ¿£Æ®¸®¸¦ ÇÊ¿ä·Î ÇÑ´Ù. ÇÁ·ÎÆÄÀÏ 
¿£Æ®¸®¸¦ °®´Â °£´ÜÇÑ Ldif ÆÄÀÏÀÇ ¿¹¸¦ º¸¶ó:

<tscreen><verb>
dn: o=myOrg,c=NL 
o: myOrg 
objectclass: organization 

dn: cn=seallers,ou=People,o=myOrg,c=NL 
cn: seallers 
userpassword: myPassword 
objectclass: top 
objectclass: person 

dn: nsLIProfileName=seallers,ou=Roaming,o=myOrg,c=NL 
nsLIProfileName: seallers
owner: cn=seallers,ou=People,o=myOrg,c=NL 
objectclass: top 
objectclass: nsLIProfile
</verb></tscreen> 

ÀÌ ¿£Æ®¸®µéÀº <ref id="5.4Àý" name="ldapadd"> ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ¿© Ãß°¡ÇÒ 
¼ö ÀÖ´Ù. ¾Æ¸¶µµ ´ÜÁö ·Î¿ì¹Ö ÇÁ·ÎÆÄÀÏ (dn: nsLIProfileName=...)°ú ÀÏÄ¡ÇÏ´Â 
¿£Æ®¸®¸¸ Ãß°¡ÇÒ ÇÊ¿ä°¡ ÀÖÀ» °ÍÀÌ´Ù.

- ³Ý½ºÄÉÀÌÇÁ ³×ºñ°ÔÀÌÅÍ ¼³Á¤ÇÏ±â: ´ÙÀ½ ´Ü°è´Â LDAP ¼­¹ö¿¡ ´ëÇÑ ·Î¿ì¹Ö ¿¢¼¼½º°¡ ÀÛµ¿µÇµµ·Ï ³Ý½ºÄÉÀÌÇÁ¸¦
¼³Á¤ÇÏ´Â °ÍÀÌ´Ù. ´ÙÀ½ ¼ø¼­¸¦ µû¸£¶ó:

Go to Menu Edit -> Preferences -> Roaming User

ÀÌ ¿É¼Ç¿¡ ÇØ´çÇÏ´Â Ã¼Å©¹Ú½º¸¦ Å¬¸¯ÇÔÀ¸·Î½á ÀÌ ÇÁ·ÎÆÄÀÏ¿¡ ´ëÇØ
Ã³À½À¸·Î ·Î¿ì¹Ö ¿¢¼¼½º¸¦ ÀÛµ¿½ÃÄÑ¾ßÇÑ´Ù.

ÀûÀýÇÑ °ªÀ» username ¹Ú½º¿¡ ¾²´Âµ¥ ÀÌ´Â LDIF ÆÄÀÏÀÇ »ç¿ëÀÚ ÇÁ·ÎÆÄÀÏ 
¿£Æ®¸®ÀÇ nsLIProfileName= ºÎºÐ°ú ÀÏÄ¡ÇØ¾ß ÇÑ´Ù. ¿¹: sealers


·Î¿ì¹Ö ¿¢¼¼½ºÀÇ ÇÏÀ§ ¿É¼ÇÀ» º¸±â À§ÇØ Preferences Window ¿ÞÆí¿¡ ÀÖ´Â
·Î¿ì¹Ö »ç¿ëÀÚ ¿É¼Ç È­»ìÇ¥¸¦ Å¬¸¯ÇÑ´Ù.

¼­¹ö Á¤º¸¸¦ Å¬¸¯ÇÏ°í LDAP ¼­¹ö ¿É¼ÇÀ» È°¼ºÈ­½ÃÅ°¸ç ´ÙÀ½ Á¤º¸¸¦ ¹Ú½º¿¡ ¾´´Ù.

Address: ldap://myHost/nsLIProfileName=$USERID,ou=Roaming,o=myOrg,c=NL

User DN: cn=$USERID,ou=People,o=myOrg,c=NL

IMPORTANT: ³Ý½ºÄÉÀÌÇÁ´Â ºê¶ó¿ìÀú¸¦ ½ÇÇà½ÃÅ°±â Àü¿¡ ÀÚµ¿ÀûÀ¸·Î $USERID¸¦
¼±ÅÃÇÑ ÇÁ·ÎÆÄÀÏ ÀÌ¸§À¸·Î ´ëÃ¼ÇÑ´Ù. ±×·¡¼­ ÇÁ·ÎÆÄÀÏ seallerÀ» ¼±ÅÃÇÏ¸é
$USERID¸¦ sealler·Î ´ëÃ¼ÇÏ°í ÇÁ·ÎÆÄÀÏ gonzales¸¦ ¼±ÅÃÇÏ¸é $USERID¸¦
gonzales·Î ´ëÃ¼ÇÑ´Ù. ÇÁ·ÎÆÄÀÏ¿¡ ÀÍ¼÷Ä¡ ¾Ê´Ù¸é ³Ý½ºÄÉÀÌÇÁ Ä¿¹Â´ÏÄÉÀÌÅÍ
ÆÐÅ°Áö¿¡ ÀÖ´Â ÇÁ·ÎÆÄÀÏ ¸Å´ÏÀú ¾îÇÃ¸®ÄÉÀÌ¼ÇÀ» ½ÇÇà½ÃÄÑ¶ó. ÀÌ´Â µ¿ÀÏ
¸Ó½Å¿¡¼­ ¿©·¯»ç¶÷ÀÌ ºê¶ó¿ìÀú¸¦ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ¼³°èµÈ ¾îÇÃ¸®ÄÉÀÌ¼ÇÀ¸·Î
ºê¶ó¿ìÀú¿¡ ´ëÇØ °¢ÀÚ ÀÚ½ÅÀÇ °íÀ¯ÇÑ ¼³Á¤À» °¡Áú ¼ö ÀÖ´Ù.

¸¶Áö¸·Àº ¼­¹ö¸¦ Àç½ÃÀÛÇÏ´Â °ÍÀÌ´Ù. ÀÌ¸¦ ¾ÈÀüÇÏ°Ô ÇÏ´Â ¹æ¹ý°ú ´Ù½Ã
½ÃÀÛÇÏ´Â ¹æ¹ýÀº °¢°¢ <ref id="4.2Àý" name="4.2Àý">°ú <ref id="4Àý" 
name="4Àý">À» º¸±æ ¹Ù¶õ´Ù.

<sect1>³Ý½ºÄÉÀÌÇÁ ÁÖ¼Ò·Ï

<p>

LDAP ¼­¹ö¸¦ ±¸µ¿ÇÏ°í ÀÖ´Ù¸é ¿©·¯°¡Áö ¸¹Àº Å¬¶óÀÌ¾ðÆ®(¿¹¸¦µé¾î ldapsearch
command line utiltity)¸¦ ÀÌ¿ëÇÏ¿© ¼­¹ö¿¡ ¿¢¼¼½ºÇÒ ¼ö ÀÖ´Âµ¥ ¸Å¿ì
Èï¹Ì·Î¿î °ÍÀÌ ³Ý½ºÄÉÀÌÇÁ ÁÖ¼Ò·ÏÀÌ´Ù. ÀÌ´Â ³Ý½ºÄÉÀÌÇÁ 4.x ¹öÀüºÎÅÍ ÀÌ¿ëÇÒ
¼ö ÀÖÁö¸¸ LDAP ¼­¹ö¿ÍÀÇ ¾ÈÁ¤µÈ »óÈ£¿î¿µÀ» À§ÇØ¼­´Â 4.5 ¶Ç´Â ±× ÀÌ»óÀÇ
¹öÀüÀ» »ç¿ëÇØ¾ß ÇÑ´Ù.

´ÙÀ½ ¼ø¼­¸¦ µû¸£¶ó:

Open Netscape Navigator -> Go to Communicator Menu -> Address Book

³Ý½ºÄÉÀÌÇÁ ÁÖ¼Ò·ÏÀº ¾î¶² default LDAP µð·ºÅä¸®¿Í ÇÔ²² ½ÃÀÛµÉ ¼ö ÀÖ´Âµ¥ °¢ÀÚÀÇ
LDAP µð·ºÅä¸®¸¦ Ãß°¡ÇØ¾ß ÇÑ´Ù.

Go to File Menu -> New Directory

¼­¹ö Á¤º¸¸¦ ¹Ú½º¿¡ ¾´´Ù. ¿¹¸¦µé¸é:

- Description: TUDelft

- LDAP Server: dutedin.et.tudelft.nl

- Server Root: o=TUDelft, c=NL

Default LDAP Æ÷Æ®´Â 389ÀÎµ¥ ¼­¹ö¸¦ ±¸ÃàÇÒ¶§ ÀÌ ¿É¼ÇÀ» º¯°æÇÏÁö ¾Ê¾Ò´Ù¸é
ÀÌ¸¦ º¯°æÇÏÁö¸»±â ¹Ù¶õ´Ù.

box Show Names Containing¸¦ ÀÌ¿ëÇØ °£·«ÇÑ ÁúÀÇ ¶Ç´Â Search for buttonÀ»
ÀÌ¿ëÇØ Áøº¸µÈ ÁúÀÇ¸¦ ÇØºÁ¶ó.

<sect1>LDAP Migration Tools

<p>

LDAP ÀÌµ¿ µµ±¸´Â ¼³Á¤ ÆÄÀÏÀ» LDIF Æ÷¸ËÀ¸·Î º¯È¯ÇÏ´Âµ¥ »ç¿ëµÇ´Â ÆÞ
½ºÅ©¸³Æ® ¸ðÀ½ÀÎµ¥ PADL ¼ÒÇÁÆ®¿þ¾î È¸»ç¿¡¼­ Á¦°øµÈ´Ù. ÀúÀÚ´Â ÀÌ¸¦
»ç¿ëÇÏ±âÀü¿¡, ÀÚÀ¯·ÎÀÌ »ç¿ëÇÒ ¼ö ÀÖÀ½¿¡µµ, ¶óÀÌ¼¾½º¸¦ ÀÐ¾î º¸±æ ±ÇÇÑ´Ù.
»ç¿ëÀÚ¸¦ ÀÎÁõÇÏ±â À§ÇØ LDAP ¼­¹ö¸¦ ÀÌ¿ëÇÒ °èÈ¹ÀÌ¶ó¸é ÀÌ µµ±¸´Â¸Å¿ì
À¯¿ëÇÒ °ÍÀÌ´Ù. NIS ¶Ç´Â password ¾ÆÄ«ÀÌºêµéÀ» LDAP ¼­¹ö¿Í È£È¯µÇ°Ô ÇÏ´Â
LDIF Æ÷¸ËÀ¸·Î º¯È¯ÇÏ±â À§ÇØ ÀÌµ¿ µµ±¸¸¦ »ç¿ëÇÏ¶ó. ¶ÇÇÑ »ç¿ëÀÚ, ±×·ì,
¾Ù¸®¾î½º(aliases), È£½ºÆ®, ³Ý±×·ì, ÇÁ·ÎÅäÄÝ, RPCs¿Í ¼­ºñ½º¸¦ ±âÁ¸ ³×ÀÓ
¼­ºñ½º(NIS, flat ÆÄÀÏ°ú NetInfo)·ÎºÎÅÍ LDIF Æ÷¸ËÀ¸·Î ÀÌµ¿ÇÏ±â À§ÇØ
½ºÅ©¸³Æ®¸¦ Àû¿ëÇÏ¶ó. LDAP ÀÌµ¿ µµ±¸ÀÇ ´Ù¿î·Îµå¿Í ´õ¿í ¸¹Àº Á¤º¸¸¦ ¾ò±â
À§ÇØ¼­ ´ÙÀ½ ÁÖ¼Ò·Î °¡¶ó:

<quote><url url="http://www.padl.com/tools.html"></quote>

ÆÐÅ°Áö¿¡ README ÆÄÀÏÀÌÀÖ´Âµ¥ ½ºÅ©¸³Æ® ÆÄÀÏ ÀÌ¸§Àº Á÷°üÀûÀÎµ¥ ¿ì¼±
README ÆÄÀÏÀ» ÀÐ°í ³­ÈÄ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ±æ ¹Ù¶õ´Ù.

<sect1>LDAP¸¦ »ç¿ëÇÑ ÀÎÁõ

<p>

LDAP ¼­ºñ½º¸¦ »ç¿ëÇÏ±â À§ÇØ LDAP Å¬¶óÀÌ¾ðÆ®´Â ¼­ºñ½º¿¡ ´ëÇØ ÀÎÁõÀ» 
¹Þ¾Æ¾ßÇÑ´Ù. Áï, Å¬¶óÀÌ¾ðÆ®°¡ º¸±â ¹× ÀÛ¾÷ÀÌ Çã¿ëµÈ °ÍÀÌ ¹«¾ùÀÎÁö¸¦ 
¼­¹ö°¡ °áÁ¤ÇÒ ¼ö ÀÖµµ·Ï Å¬¶óÀÌ¾ðÆ®´Â ¼­¹ö¿¡°Ô µ¥ÀÌÅ¸¸¦ ¿¢¼¼½ºÇÏ·Á°í 
ÇÑ´Ù¶ó°í ¸»À» ÇØ¾ßÇÑ´Ù. Å¬¶óÀÌ¾ðÆ®°¡ LDAP ¼­¹ö¿¡ ´ëÇØ ¼º°øÀûÀ¸·Î
ÀÎÁõ¹Þ´Â´Ù¸é ¼­¹ö°¡ ÈÄ¿¡  Å¬¶óÀÌ¾îÆ®·ÎºÎÅÍ ¿äÃ»À» ¹ÞÀ»¶§ Å¬¶óÀÌ¾ðÆ®°¡
¿äÃ»À» ¼öÇàÇÏµµ·Ï  Çã¿ëµÇ¾ú´ÂÁö ¿©ºÎ¸¦ °Ë»çÇÒ °ÍÀÌ´Ù. ÀÌ ÇÁ·Î¼¼½º¸¦
¿¢¼¼½º Á¦¾î¶ó ÇÑ´Ù. 

LDAP¿¡¼­ ÀÎÁõÀº "bind" ¿¬»ê¿¡¼­ Áö¿øµÇ´Âµ¥ Ldapv3´Â anonymous, simple 
¹× SASLÀÇ ¼¼°¡Áö À¯ÇüÀÇ ÀÎÁõÀ» Áö¿øÇÑ´Ù."bind" ¿¬»ê¾øÀÌ LDAP ¿äÃ»À» 
º¸³»´Â Å¬¶óÀÌ¾ðÆ®´Â anonymous Å¬¶óÀÌ¾ðÆ®·Î Ã³¸®µÈ´Ù. Simple ÀÎÁõÀº LDAP 
¼­¹ö¿¡ Å¬¶óÀÌ¾ðÆ®(»ç¿ëÀÚ)ÀÇ FQDN(Fully Qualified Domain Name)°ú 
¾ÏÈ£È­µÇÁö ¾ÊÀº ÆÐ½º¿öµå¸¦ º¸³»´Â °ÍÀ¸·Î ÀÌ·ç¾îÁø´Ù. ÀÌ ±â±¸´Â 
ÆÐ½º¿öµå¸¦ ³×Æ®¿öÅ©»ó¿¡¼­ ÀÐÀ» ¼ö ÀÖ±â ¶§¹®¿¡ º¸¾È ¹®Á¦¸¦ °®°í ÀÖ´Ù. 
ÀÌ·¯ÇÑ ÆÐ½º¿öµå ³ëÃâÀ» ÇÇÇÏ±â À§ÇØ LDAP ¼­¹ö¿¡ ÀÇÇØ Áö¿øµÈ´Ù¸é SSL°ú
°°Àº ¾ÏÈ£È­µÈ Ã¤³Î³»¿¡¼­  simple ÀÎÁõ ±â±¸¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

¸¶Áö¸·À¸·Î SASLÀº Simple Authentication and Security Layer (RFC 2222)·Î 
ÀÎÁõ ¹× ±× ´ÙÀ½ÀÇ Åë½ÅÀÌ ¼öÇàµÇ´Â º¸¾È °èÃþÀÇ È®¸³À» À§ÇØ µ¥ÀÌÅ¸°¡ 
Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö°£¿¡ ±³È¯ÀÌ ÀÌ·ç¾îÁö´Â ¿ä±¸-ÀÀ´ä (challenge-response) 
ÇÁ·ÎÅäÄÝÀ» ÁöÁ¤ÇÑ´Ù. SASLÀ» »ç¿ëÇÔÀ¸·Î½á LDAP´Â LDAP Å¬¶óÀÌ¾ðÆ®¿Í ¼­¹ö¿¡ ÀÇÇØ ÇÕÀÇµÈ ¸ðµç 
À¯ÇüÀÇ ÀÎÁõÀ» Áö¿øÇÒ ¼ö ÀÖ´Ù. SASL »ç¿ëÀº Cyrus SASL ¶óÀÌºê·¯¸®ÀÇ 
¼³Ä¡°¡ Áß¿äÇÏ±â ¶§¹®¿¡ ÀÌ ÇÏ¿ìÅõ ¹®¼­ÀÇ ´ÙÀ½ ¹öÀü¿¡ ¼³¸íµÉ °ÍÀÌ´Ù.

´õ±¸³ª µð·ºÅä¸® Æ®¸®ÀÇ Á¤º¸¸¦ ¿¢¼¼½ºÇÏ´Â »ç¿ëÀÚ¸¦ ÀÎÁõÇÔ°ú µ¿½Ã¿¡ LDAP
¼­¹ö´Â ´Ù¸¥ ¼­ºñ½º (Sendmail, Login, Ftp, µîµî)¿¡ ´ëÇØ  »ç¿ëÀÚ¸¦ ÀÎÁõÇÒ
¼ö ÀÖ´Ù. ÀÌ´Â Æ¯Á¤ »ç¿ëÀÚ Á¤º¸¸¦ LDAP ¼­¹ö·Î ¿Å°Ü PAM (Pluggable
Authentication Module) ±â±¸¸¦ »ç¿ëÇÏ¿© ¼öÇàµÈ´Ù.

À¯´Ð½º ÃÊÃ¢±â ÀÌÈÄ·Î »ç¿ëÀÚ ÀÎÁõÀº »ç¿ëÀÚ°¡ ÆÐ½º¿öµå¸¦ ÀÔ·ÂÇÏ°í ÀÔ·ÂµÈ 
ÆÐ½º¿öµå¸¦ ½Ã½ºÅÛÀÌ /etc/passwd ÆÄÀÏ¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¾ÏÈ£È­µÈ °ø½Ä 
ÆÐ½º¿öµå¿¡ ÇØ´çÇÏ´ÂÁö °Ë»çÇÏ´Â ¹æ¹ýÀ» ÅëÇØ ÀÌ·ç¾îÁ³´Ù. ÀÌ·¯ÇÑ ¹æ¹ýÀº 
ÃÊÃ¢±â¿¡ ÇàÇØÁ³´Âµ¥ ±× ÈÄ /etc/passwd ÆÄÀÏÀÇ º¸´Ù º¹ÀâÇÑ ´ëÃ¼ ¹× ½º¸¶Æ® 
Ä«µå¶ó ºÒ¸®´Â ÇÏµå¿þ¾î µð¹ÙÀÌ½º¸¦ Æ÷ÇÔÇÏ¿© ÀÎÁõÇÏ´Â ¸¹Àº »õ·Î¿î ¹æ¹ýÀÌ 
Åë¿ëµÇ¾ú´Ù. ±×·¯³ª »õ·Î¿î ÀÎÁõ ½ºÅ°¸¶°¡ °³¹ßµÉ¶§¸¶´Ù ¸ðµç ÇÊ¿äÇÑ 
ÇÁ·Î±×·¥(login, ftp µî)ÀÌ ÀÌ¸¦ Áö¿øÇÏ±â À§ÇØ »õ·Î ÀÛ¼ºµÇ¾î¾ß ÇÏ´Â °ÍÀÌ 
¹®Á¦Á¡ÀÌ¿©´Ù. PAMÀº ÀÎÁõ °èÈ¹¿¡ »ó°ü¾øÀÌ ÇÁ·Î±×·¥À» °³¹ßÇÒ ¼ö ÀÖ´Â 
¹æ¹ýÀ» Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ ÇÁ·Î±×·¥µéÀÌ ÀÛµ¿ÇÏ±â À§ÇØ ·±Å¸ÀÓ½Ã ÇÁ·Î±×·¥¿¡ 
ºÎÂøµÇ´Â ÀÎÁõ ¸ðµâÀ» ÇÊ¿ä·Î ÇÑ´Ù.

LDAP¿¡ ´ëÇÑ ÀÎÁõ ¸ðµâÀº ´ÙÀ½ ÁÖ¼Ò¿¡¼­ tar ball ÇüÅÂ·Î ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù:
<quote><url url="http://www.padl.com/pam_ldap.html"></quote>

ÀúÀÚ´Â ¸®´ª½º ¹èÆ÷ÆÇ¿¡ PAMÀÌ ¼³Ä¡µÇ¾î ÀÖ´Ù°í °¡Á¤ÇÑ´Ù. ÀÌ·¸Áö ¾ÊÀº °æ¿ì
´ÙÀ½ ÁÖ¼Ò <url url="http://www.kernel.org/pub/linux/libs/pam">  º¸±æ
¹Ù¶õ´Ù. ´Ù¾çÇÑ ¸®´ª½º ¹èÆ÷ÆÇµéÀº PAM°ú °ü·ÃÇÏ¿© ¼­·Î ´Ù¸¥ Ç¥ÁØ ¼³Á¤À»
»ç¿ëÇÑ´Ù. ´ë°³ PAM ¼³Á¤ ÆÄÀÏÀº /etc/pam.d µð·ºÅä¸®³»¿¡ Á¸ÀçÇÑ´Ù. ÀÌ
µð·ºÅä¸®¿¡¼­ ¸®´ª½º ¹Ú½º¿¡¼­ ¿î¿µµÇ°í ÀÖ´Â °¢ ¼­ºñ½º¿¡ ´ëÇÑ ÆÄÀÏÀ»
¹ß°ßÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¾î ¸®´ª½º°¡ ºÎÆÃµÈ ÈÄ »ç¿ëÀÚµéÀÇ ·Î±×ÀÎ¿¡ LDAP
¼­¹ö¸¦ »ç¿ëÇÏ±æ ¿øÇÑ´Ù¸é LDAP PAM ¸ðµâÀ»¼³Ä¡ÇÏ°í /etc/pam.d µð·ºÅä¸®³»
login ÆÄÀÏ¿¡ ´ÙÀ½ ³»¿ëÀ» ÆíÁýÇÏ±æ¹Ù¶õ´Ù:

<tscreen><verb>
#%PAM-1.0
auth		required     /lib/security/pam_securetty.so
auth		required     /lib/security/pam_nologin.so
auth		sufficient   /lib/security/pam_ldap.so
auth		required     /lib/security/pam_unix_auth.so try_first_pass
account		sufficient   /lib/security/pam_ldap.so
account		required     /lib/security/pam_unix_acct.so
password	required     /lib/security/pam_cracklib.so
password	required     /lib/security/pam_ldap.so
password	required     /lib/security/pam_pwdb.so use_first_pass
session		required     /lib/security/pam_unix_session.so
</verb></tscreen>

<sect1> ±×·¡ÇÈ LDAP µµ±¸

<p>
<itemize>
<item>Kldap
<tscreen><verb>
Kldap´Â KDE È¯°æÀÇ ±×·¡ÇÈ LDAP Å¬¶óÀÌ¾ðÆ®·Î ¿ì¼öÇÑ ÀÎÅÍÆäÀÌ½º¸¦ °®À¸¸ç µð·ºÅä¸®¿¡ ÀúÀåµÈ ¸ðµç Á¤º¸
Æ®¸®¸¦ º¼ ¼ö ÀÖ´Ù. ¾îÇÃ¸®ÄÉÀÌ¼ÇÀ¸·ÎºÎÅÍ ¾à°£ÀÇ screenshot¸¦ °Ë»çÇÒ ¼ö ÀÖÀ¸¸ç ´ÙÀ½ ÁÖ¼Ò¿¡¼­ ´Ù¿î·Îµå
¹ÞÀ» ¼ö ÀÖ´Ù.
</verb></tscreen>
<quote>
<url url="http://www.mountpoint.ch/oliver/kldap/">
</quote>
<item>GQ
<tscreen><verb>
GQ´Â º¸´Ù °£´ÜÇÑ ÀÎÅÍÆäÀÌ½º¸¦ °®´Â ´Ù¸¥ ±×·¡ÇÈ LDAP Å¬¶óÀÌ¾ðÆ®·Î GNOME È¯°æÀ» À§ÇØÀÛ¼ºµÇ¾úÁö¸¸
KDE È¯°æ¿¡¼­µµ ÀÛµ¿µÈ´Ù. Kldapµµ ¶ÇÇÑ GNOME È¯°æ¿¡¼­ ÀÛµ¿ÇÑ´Ù. ´Ù¿î·Îµå ¹× ´õ¿í ¸¹Àº Á¤º¸¸¦ ¾ò±â
À§ÇØ¼­´Â ´ÙÀ½ ÁÖ¼Ò·Î °¡±æ ¹Ù¶õ´Ù:
</verb></tscreen>
<quote>
<url url="http://biot.com/gq/">
</quote>
</itemize>

<sect1>·Î±×

<p>

Slapd´Â ·Î±×¸¦ ¹ß»ý½ÃÅ°±â À§ÇØ syslog(8)¸¦ »ç¿ëÇÏ´Âµ¥ ÀÌ À¯Æ¿¸®Æ¼ÀÇ
default »ç¿ëÀÚ´Â LOCAL4 ÀÌÁö¸¸ LOCAL0, LOCAL1¿¡¼­ LOCAL7±îÁöÀÇ °ªÀÌ
Çã¿ëµÈ´Ù.

·Î±× ¹ß»ýÀ» µ¿ÀÛ½ÃÅ°±â À§ÇØ ´ë°³ /etc µð·ºÅä¸®³»¿¡ÀÖ´Â syslog.conf
ÆÄÀÏÀ» ÆíÁýÇØ¾ß ÇÑ´Ù.

´ÙÀ½°ú °°Àº ¶óÀÎÀ» Ãß°¡ÇÏ±æ ¹Ù¶õ´Ù:

local4.* /usr/adm/ldalog

ÀÌ´Â syslog¿¡ ´ëÇØ LOCAL4 default »ç¿ëÀÚ¸¦ ÀÌ¿ëÇÒ °ÍÀÌ´Ù. À§ ¶óÀÎÀÇ
±¸¹®¿¡ ÀÍ¼÷Ä¡¾Ê´Ù¸é syslog, syslog.conf ¿Í syslogd man ÆäÀÌÁö¸¦ º¸¶ó.
Default »ç¿ëÀÚ º¯°æ ¹× »ý¼ºµÇ´Â ·Î±× ·¹º§À» ÁöÁ¤ÇÏ±æ ¿øÇÑ´Ù¸é slapd¸¦
±¸µ¿ÇÒ¶§ ´ÙÀ½ ¿É¼ÇÀ» ÁöÁ¤ÇÏ±æ¹Ù¶õ´Ù.

-s syslog-level  ¿É¼ÇÀº slapd¿¡°Ô ¾î¶² ·¹º§ÀÇ µð¹ö±ë º¸°í¼­°¡ syslog(8)·Î ·Î±×µÇ¾î¾ß ÇÏ´Â Áö¸¦ ¸»ÇØÁØ´Ù. ·¹º§Àº ¸Þ½ÃÁöÀÇ ¾ö¹ÐÁ¤µµ¸¦ ±â¼úÇÏ´Âµ¥ ´ÙÀ½ÀÇ Á¤¿­µÈ ¸®½ºÆ®(³ôÀº ¼öÁØ¿¡¼­ ³·Àº ¼öÁØ)ÀÇ Å°¿öµåÀÌ´Ù: emerg, alert, crit, err, warning, notice, info, and debug. ¿¹: slapd -f myslapd.conf -s debug

-l syslog-local-user syslog(8)ÀÇ ·ÎÄÃ »ç¿ëÀÚ¸¦ ¼±ÅÃÇÑ´Ù. LOCAL0, LOCAL1,..., LOCAL7 ±îÁöÀÇ °ªÀ» °¡Áú ¼ö ÀÖ´Ù. µðÆúÆ®´Â LOCAL4 ÀÌ´Ù. ±×·¯³ª 
ÀÌ ¿É¼ÇÀº ·ÎÄÃ »ç¿ëÀÚ¿¡°Ô syslogd(8)¸¦ Áö¿øÇÏ´Â ½Ã½ºÅÛ¿¡¸¸ ´ÜÁö Çã¿ëµÈ´Ù.

»ý¼ºµÈ ·Î±×¸¦ º¸¶ó. ÀÌµéÀº ÁúÀÇ, °»½Å, ¹ÙÀÎµù µî°ú °ü°èµÈ ¹®Á¦¸¦
ÇØ°áÇÏ´Âµ¥ »ó´çÇÑ µµ¿òÀ» Á¦°øÇÒ °ÍÀÌ´Ù.

<sect>Âü°í ¹®Çå

<p>
On this section you will find additional documentation about LDAP: useful URLs, cool books and definition RFCs. 

<sect1>URLs 

<p>
Here are the URLs that contain very useful information about LDAP. From these URLs, this HOWTO was made, so if after reading this document you need more specific information, you probably will find here: 

<itemize>
<item>University of Michigan LDAP Page:<p> 
<url url="http://www.umich.edu/~dirsvcs/ldap/index.html"><p>
<item>University of Michigan LDAP Documentation Page:<p> 
<url url="http://www.umich.edu/~dirsvcs/ldap/doc/"><p>
<item>OpenLDAP Administrator's Guide:<p> 
<url url="http://www.openldap.org/doc/admin"><p>
<item>Manually Implementing Roaming Access:<p> 
<url 
url="http://help.netscape.com/products/client/communicator/manual_roaming2.html"><p
>
<item>Customizing LDAP Settings for Communicator 4.5:<p> 
<url 
url="http://developer.netscape.com/docs/manuals/communicator/ldap45.htm"><p
>
<item>Introducing to Directory Service (X.500):<p> 
<url 
url="http://www.nic.surfnet.nl/surfnet/projects/x500/introducing/"><p>
<item>Linux Directory Service:<p> 
<url url="http://www.rage.net/ldap/"><p>
</itemize>

<sect1>¼­Àû  

<p>
These are the most popular and useful books about LDAP: 

<itemize>
<item>Implementing LDAP by Mark Wilcox 
<item>LDAP: Programming Directory-Enabled Applications with Lightweight Directory Access Protocol by Howes and Smith 
<item>Understanding and Deploying LDAP Directory Servers by Howes, Smith, and Good 
</itemize>

<sect1>RFCs 

<p>
The RFCsw that support the LDAP development efforts:

<itemize>
<item>RFC 1558: A String Representation of LDAP Search Filters 
<item>RFC 1777: Lightweight Directory Access Protocol 
<item>RFC 1778: The String Representation of Standard Attribute Syntaxes 
<item>RFC 1779: A String Representation of Distinguished Names 
<item>RFC 1781: Using the OSI Directory to Achieve User Friendly Naming 
<item>RFC 1798: Connectionless LDAP 
<item>RFC 1823: The LDAP Application Programming Interface 
<item>RFC 1959: An LDAP URL Format 
<item>RFC 1960: A String Representation of LDAP Search Filters 
<item>RFC 2251: Lightweight Directory Access Protocol (v3) 
<item>RFC 2307: LDAP as a Network Information Service RFC 1558: A String Representation of LDAP Search Filters 
</itemize>

</article>

