ÀúÀå¼Ò¸¦ ¸¸µé¾úÀ¸¸é CVS¸¦ ÀÌ¿ëÇÒ °³¹ßÀڵ鿡°Ô ÀúÀå¼Ò¸¦
»ç¿ëÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀ» ÁÖ¾î¾ß ÇÑ´Ù. ±ÇÇÑ ºÎ¿© ¹æ¹ýÀº °³¹ßÀÚµéÀÌ
ÀúÀå¼Ò°¡ À§Ä¡ÇÑ ¾¾½ºÅÛ¿¡ °èÁ¤ÀÌ ÀÖ´ÂÁö¿¡ µû¶ó µÎ °¡Áö·Î ³ª´¶´Ù.
°³¹ßÀÚµéÀÌ °èÁ¤À» °®°í ÀÖ´Â °æ¿ì´Â °³¹ßÀÚµéÀÌ ¸ðµÎ ÀúÀå¼Ò°¡
ÀÖ´Â ¾¾½ºÅÛ¿¡¼ ÀÛ¾÷À» Çϰųª, °¢ÀÚÀÇ ±â°è¿¡¼ ÀÛ¾÷À» ÇϵÇ
sshÀ̳ª rshÀ» ½á¼
¿ø°ÝÀ¸·Î CVS¸¦ »ç¿ëÇÏ´Â °æ¿ìÀÌ´Ù. ÀÌ ¹æ¹ýÀº ´ÙÀ½¿¡ ³ª¿Ã ¾ÏÈ£
ÀÎÁõ ¹æ½Ä¿¡ ºñÇØ ¼³Á¤ÀÌ °£´ÜÇϰí, º°µµÀÇ Æ÷Æ®¸¦ ¿ Çʿ䰡 ¾ø´Ù´Â
ÀåÁ¡ÀÌ ÀÖ´Ù. °³¹ßÀÚµéÀÌ ¸ðµÎ °èÁ¤À» °®°í ÀÖÀ¸¹Ç·Î ÀúÀå¼Ò°¡
À§Ä¡ÇÑ µð·ºÅ丮¿¡ ÀÐ±â ¹× ¾²±â ±ÇÇÑÀ» Áֱ⸸ ÇÏ¸é µÇ´Â °ÍÀÌ´Ù.
±×·¯±â À§ÇØ °³¹ßÀÚµéÀ» ¸ðµÎ °°Àº ±×·ì(¿¹: cvs)ÀÇ ±¸¼º¿øÀ¸·Î
¸¸µç´Ù. ÀÌ´Â ¾¾½ºÅÛº°·Î Á¸ÀçÇÏ´Â ±×·ì °ü¸® µµ±¸¸¦ ÀÌ¿ëÇϰųª
groupadd¿Í °°Àº ¸í·ÉÀ¸·Î cvs¶ó´Â ±×·ìÀ»
¸¸µé°í, ±×·ì °ü¸® µµ±¸¸¦ ¾²°Å³ª /etc/group
ÆÄÀÏÀ» Á÷Á¢ ¼öÁ¤ÇÏ¿© °³¹ßÀÚµéÀ» ±× ±×·ì¿¡ Ãß°¡ÇÏ¸é µÈ´Ù. ¿¹¸¦
µé¾î minskim°ú sehkoneÀ̶ó´Â »ç¿ëÀÚ¸¦ cvs ±×·ì¿¡ Ãß°¡ÇÑ´Ù¸é
´ÙÀ½°ú °°Àº ÁÙÀÌ /etc/group¿¡ »ý±æ °ÍÀÌ´Ù.
cvs:*:510:minskim,sehkone |
ÀÌÁ¦ ´ÙÀ½ ¸í·ÉÀ¸·Î µð·ºÅ丮ÀÇ ±ÇÇÑÀ» ¿¾î ÁÖ¸é µÈ´Ù.
# chgrp -R cvs /home/cvs
# chmod ug+rwx /home/cvs /home/cvs/CVSROOT |
ÀÌÈķδ cvs ±×·ì¿¡ ¼ÓÇÑ °³¹ßÀÚ´Â ÀÌ ÀúÀå¼Ò¸¦ ¸¶À½´ë·Î ÀÌ¿ëÇÒ
¼ö ÀÖ´Ù.
°³¹ßÀÚµéÀÌ ¾¾½ºÅÛ¿¡ °èÁ¤À» °®°í ÀÖÁö ¾Ê´Ù¸é CVSÀÇ ¾ÏÈ£
ÀÎÁõ ¹æ½ÄÀ» ÀÌ¿ëÇØ¼ CVS ½á¹ö¿¡ Á¢¼ÓÇÒ ¼ö ÀÖ´Ù. °³¹ßÀÚ °¢°¢Àº
CVS °èÁ¤(¾¾½ºÅÛ °èÁ¤°ú´Â ´Ù¸£´Ù)À» ºÎ¿©¹Þ°Ô µÇ¸ç,
inetd¸¦ ÅëÇØ Á¤ÇØÁø Æ÷Æ®·Î CVS¸¦ »ç¿ëÇϰÔ
µÈ´Ù. ¼³Á¤Àº Á¶±Ý º¹ÀâÇÏÁö¸¸ °³¹ßÀڵ鿡°Ô ÀÏÀÏÀÌ ¾¾½ºÅÛ °èÁ¤À»
¹ß±ÞÇÒ Çʿ䰡 ¾øÀ¸¹Ç·Î ¾¾½ºÅÛ °ü¸® Ãø¸é¿¡¼´Â º¸´Ù ³ºÀº ¹æ¹ýÀ̶ó
ÇÒ ¼ö ÀÖ´Ù. ƯÈ÷ ºÒƯÁ¤ ´Ù¼ö¿¡ ´ëÇØ CVS·Î ÆÄÀÏÀ» ¹Þ¾Æ°¥ ¼ö
ÀÖµµ·Ï ÇØ¾ß ÇÏ´Â °ø°³ ÇÁ·ÎÁ§Æ®ÀÇ °æ¿ì ´ëºÎºÐÀÌ ÀÌ ¹æ½ÄÀ»
äÅÃÇϰí ÀÖ´Ù. ¾ÆÆÄÄ¡³ª ¸ðÁú¶ó °°Àº °æ¿ì°¡ ´ëÇ¥ÀûÀÎ ¿¹°¡ µÉ °ÍÀÌ´Ù.
¹Ý¸é °³¹ßÀÚµéÀÌ ¾¾½ºÅÛ °èÁ¤À» °®°í ÀÖ´Â °æ¿ì¶óµµ
sshÀ̳ª rshÀ» ÅëÇÑ Á¢¼ÓÀ»
Çã¿ëÇÏ°í ½ÍÁö ¾ÊÀ» °æ¿ì´Â º°µµÀÇ CVS °èÁ¤À» ¸¸µé¾î ¾ÏÈ£ ÀÎÁõ
¹æ½ÄÀ» ÀÌ¿ëÇÒ ¼öµµ ÀÖ´Ù.
±×·¯¸é inetd·Î CVS Á¢¼ÓÀ» Çã¿ëÇÏ´Â ¹æ¹ýÀ»
¾Ë¾Æº¸ÀÚ. ¿ì¼± CVS°¡ »ç¿ëÇÏ´Â Æ÷Æ® ¹øÈ£(2401¹ø)¸¦ µî·ÏÇØ¾ß
ÇÑ´Ù. /etc/services¿¡ ´ÙÀ½°ú °°Àº ÁÙÀÌ
ÀÖ´ÂÁö »ìÆì º¸ÀÚ.
¸¸ÀÏ ¾ø´Ù¸é À§ÀÇ ³»¿ëÀ» Ãß°¡ÇÏ¸é µÈ´Ù. ´ÙÀ½Àº ½ÇÁ¦·Î ÇØ´ç
Æ÷Æ®¸¦ ¿¾îÁÙ Â÷·ÊÀε¥, ÀÌ´Â ¾¾½ºÅÛÀÌ
inetd¸¦ ¾²°í ÀÖ´ÂÁö,
xinetd¸¦ ¾²°í ÀÖ´ÂÁö¿¡ µû¶ó ¼³Á¤ ¹æ¹ýÀÌ
´Ù¸£´Ù. ¸ÕÀú
inetdÀÇ °æ¿ì´Â
/etc/inetd.conf¿¡
´ÙÀ½ ³»¿ëÀ» Ãß°¡ÇÑ´Ù.
cvspserver stream tcp nowait root /usr/bin/cvs cvs
--allow-root=/home/cvs pserver |
ÆíÀÇ»ó µÎ ÁÙ·Î ³ªÅ¸³ÂÀ¸³ª, ½ÇÁ¦ ÆÄÀÏ¿¡´Â ÇÑ ÁÙ·Î µé¾î°¡¾ß
ÇÑ´Ù. ¸¸¾à
tcpd¸¦ »ç¿ëÇÑ´Ù¸é À§ÀÇ ÁÙ ´ë½Å
´ÙÀ½À» Ãß°¡ÇÑ´Ù.
cvspserver stream tcp nowait root /usr/sbin/tcpd /usr/bin/cvs
--allow-root=/home/cvs pserver |
¹°·Ð
/usr/bin/cvs³ª
/usr/sbin/tcpd´Â ½ÇÁ¦·Î ÀÌµé ¸í·ÉÀÌ
À§Ä¡ÇÏ´Â Àý´ë °æ·Î·Î ½á ÁÖ¾î¾ß ÇÑ´Ù.
»õ·Î¿î ¼³Á¤ ³»¿ëÀ» ¹Ý¿µÇÏ·Á¸é inetd¸¦
Àç½ÃÀÛÇÏ¿©¾ß ÇÑ´Ù. inetdÀÇ ÇÁ·Î¼¼½º ID°¡
357À̶ó¸é ´ÙÀ½°ú °°ÀÌ HUP ½ÅÈ£¸¦ º¸³»¸é µÈ´Ù.
xinetd¸¦ ¾´´Ù¸é
/etc/xinetd.d¿¡
cvspserver¶õ À̸§À¸·Î º°µµÀÇ ÆÄÀÏÀ»
¸¸µé¾î¾ß ÇÑ´Ù. ÆÄÀÏ ³»¿ëÀº ´ÙÀ½°ú °°´Ù.
# default: on
# description: The cvspsever serves CVS Passowrd Server sessions; it uses \
# unencrypted username/password pairs for authentication.
service cvspserver
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = --allow-root=/home/cvs pserver
log_on_failure += USERID
} |
inetdÀÇ °æ¿ì¿Í ¸¶Âù°¡Áö·Î
/usr/bin/cvs´Â
cvs ¸í·ÉÀÇ Àý´ë °æ·Î,
/home/cvs´Â ÀúÀå¼ÒÀÇ À§Ä¡·Î ¹Ù²ã
ÁØ´Ù.
xinetd¸¦ Àç½ÃÀÛÇÏ´Â ¹æ¹ýµµ
inetd¿Í µ¿ÀÏÇÏ´Ù. ¿ì¼±
xinetdÀÇ ÇÁ·Î¼¼½º ID(357ÀÌ¶ó °¡Á¤ÇÑ´Ù)¸¦
¾Ë¾Æ³½ ÈÄ, HUP ½ÅÈ£¸¦ º¸³»ÀÚ.
ÀÌÁ¦ Á¢¼Ó Æ÷Æ®´Â ¿¾îµÎ¾úÀ¸´Ï, °³¹ßÀڵ鿡°Ô CVS °èÁ¤À»
¹ß±ÞÇÏ´Â Àϸ¸ ³²¾Ò´Ù. ¾ÏÈ£ ÀÎÁõ ¹æ½ÄÀ» ÀÌ¿ëÇÏ´Â °æ¿ì, °èÁ¤°ú
¾ÏÈ£´Â ÀúÀå¼ÒÀÇ CVSROOT µð·ºÅ丮 ¹Ø¿¡
passwd¶õ À̸§ÀÇ ÆÄÀÏ¿¡ ÀúÀåµÈ´Ù.
¿©±â¿¡¼´Â /home/cvs/CVSROOT/passwd°¡ µÉ
°ÍÀÌ´Ù. ÇÏÁö¸¸ ÀÌ ÆÄÀÏÀº óÀ½¿¡´Â Á¸ÀçÇÏÁö ¾Ê´Â´Ù. ±×·¯¹Ç·Î
Á÷Á¢ ¸¸µé¾îÁÖ¾î¾ß Çϴµ¥, ¸ÕÀú ¿¹¸¦ Çϳª º¸µµ·Ï ÇÏÀÚ.
minskim:YxNPCzaM/WCp2:cvs
sehkone:Yw2najHG5cLfo:cvs |
°¢ ÁÙÀº ÇÑ »ç¿ëÀÚ¿¡ ´ëÇÑ Á¤º¸¸¦ ´ã°í ÀÖ´Ù. ÁÙÀº ':'À»
°æ°è·Î ´Ù½Ã ¼¼ ºÎºÐÀ¸·Î ³ª´µ´Âµ¥ ù ºÎºÐÀÌ »ç¿ëÀÚÀÇ CVS °èÁ¤
À̸§(¾¾½ºÅÛ °èÁ¤°ú´Â ¹«°üÇÏ´Ù), ±× ´ÙÀ½Àº ¾ÏÈ£, ±×¸®°í
¸¶Áö¸·Àº ¾¾½ºÅÛ °èÁ¤ À̸§ÀÌ´Ù. Áï, ÀÌ ÆÄÀÏ¿¡´Â ÇöÀç
minskim°ú sehkoneÀ̶ó´Â µÎ »ç¿ëÀÚ°¡ µî·ÏµÇ¾î ÀÖ°í, À̵éÀÌ
CVS ÀÌ¿ë½Ã¿¡´Â cvs¶õ ¾¾½ºÅÛ °èÁ¤ÀÇ ±ÇÇÑÀ» °®´Â °ÍÀÌ´Ù.
¾ÏÈ£ºÎºÐÀº À¯´Ð½º ¾¾½ºÅÛ¿¡¼ ÀüÅëÀûÀ¸·Î »ç¿ëµÇ´Â
crypt ÇÔ¼ö¸¦ ÀÌ¿ëÇÏ¿© º¯È¯µÈ °ªÀÌ
ÀúÀåµÇ¾î ÀÖ´Ù. »õ·Î¿î »ç¿ëÀÚ¸¦ Ãß°¡ÇÏ·Á¸é °°Àº Çü½ÄÀ¸·Î ÇÑ ÁÙÀ» Ãß°¡ÇØ
ÁÖ¸é µÈ´Ù.
¸¶Áö¸·À¸·Î ÇÊ¿äÇÑ °ÍÀº cvs¶õ ¾¾½ºÅÛ °èÁ¤¿¡ ÀúÀå¼Ò¿¡ ´ëÇÑ
ÀÐ±â ¹× ¾²±â ±ÇÇÑÀ» ÁÖ´Â °ÍÀÌ´Ù. 3.2.1Àý°ú
Àϰü¼ºÀ» À¯ÁöÇÏ·Á¸é cvs¶õ ±×·ìÀ» ¸¸µé°í cvs¶õ »ç¿ëÀÚ¸¦ cvs
±×·ì¿¡ Ãß°¡ÇÑ ÈÄ, cvs ±×·ì¿¡ ´ëÇÑ ±ÇÇÑÀ» °°Àº ¹æ¹ýÀ¸·Î
¿¾îÁÖ¸é µÈ´Ù.
# chgrp -R cvs /home/cvs
# chmod ug+rwx /home/cvs /home/cvs/CVSROOT |