<-
Apache > HTTP Server > Documentation > Version 2.0

Please note

This document refers to the 2.0 version of Apache httpd, which is no longer maintained. Upgrade, and refer to the current version of httpd instead, documented at:

You may follow this link to go to the current version of this document.

suEXEC Áö¿ø

°¡´ÉÇÑ ¾ð¾î:  en  |  ja  |  ko  |  tr 

ÀÌ ¹®¼­´Â ÃÖ½ÅÆÇ ¹ø¿ªÀÌ ¾Æ´Õ´Ï´Ù. ÃÖ±Ù¿¡ º¯°æµÈ ³»¿ëÀº ¿µ¾î ¹®¼­¸¦ Âü°íÇϼ¼¿ä.

suEXEC ±â´ÉÀº ¾ÆÆÄÄ¡°¡ CGI¿Í SSI ÇÁ·Î±×·¥À» À¥¼­¹ö¸¦ ½ÇÇàÇÑ »ç¿ëÀÚ ID°¡ ¾Æ´Ñ ´Ù¸¥ »ç¿ëÀÚ ID·Î ½ÇÇàÇϵµ·Ï ÇÑ´Ù. º¸Åë CGI³ª SSI ÇÁ·Î±×·¥À» ½ÇÇàÇϸé À¥¼­¹ö¸¦ ½ÇÇàÇÑ »ç¿ëÀÚ¿Í °°Àº »ç¿ëÀÚ·Î ½ÇÇàÇÑ´Ù.

ÀÌ ±â´ÉÀ» ÀûÀýÈ÷ »ç¿ëÇÏ¸é »ç¿ëÀÚ°¡ Á÷Á¢ CGI³ª SSI ÇÁ·Î±×·¥À» °³¹ßÇÏ°í ½ÇÇàÇÒ¶§ ¹ß»ýÇÒ ¼ö ÀÖ´Â º¸¾ÈÀ§ÇèÀ» »ó´çÈ÷ ÁÙÀÏ ¼ö ÀÖ´Ù. ±×·¯³ª suEXEC°¡ ºÎÀûÀýÇÏ°Ô ¼³Á¤µÇ¸é ¸¹Àº ¹®Á¦¿Í ÄÄÇ»ÅÍ¿¡ »õ·Î¿î º¸¾È ÇãÁ¡À» ¸¸µé ¼ö ÀÖ´Ù. ¸¸¾à setuid root ÇÁ·Î±×·¥°ú ÀÌ·± ÇÁ·Î±×·¥ÀÇ º¸¾È ¹®Á¦¿¡ »ý¼ÒÇÏ´Ù¸é suEXEC¸¦ »ç¿ëÇÏÁö¾Ê±æ Áø½ÉÀ¸·Î ¹Ù¶õ´Ù.

top

½ÃÀÛÇϱâ Àü¿¡

½ÃÀÛÇϱâ Àü¿¡ ¿ì¼± ¾ÆÆÄÄ¡±×·ì°ú ÀÌ ¹®¼­ÀÇ °¡Á¤À» ¹àÈù´Ù.

¸ÕÀú setuid¿Í setgid ±â´ÉÀÌ °¡´ÉÇÑ À¯´Ð½º·ù ¿î¿µÃ¼Á¦¸¦ »ç¿ëÇÑ´Ù°í °¡Á¤ÇÑ´Ù. ¸ðµç ¸í·É¾î ¿¹µéµµ °°Àº °¡Á¤À» ÇÑ´Ù. suEXEC¸¦ Áö¿øÇÏ´Â ´Ù¸¥ Ç÷¡ÆûÀ» »ç¿ëÇÏ´Ù¸é ¼³Á¤ÀÌ ´Ù¸¦ ¼ö ÀÖ´Ù.

µÎ¹ø°, ´ç½ÅÀÌ ÄÄÇ»ÅÍ º¸¾ÈÀÇ ±âº» °³³ä°ú °ü¸®¿¡ Àͼ÷ÇÏ´Ù°í °¡Á¤ÇÑ´Ù. ¿©±â¿¡´Â setuid/setgid ±â´É°ú À̵éÀÌ ½Ã½ºÅÛ°ú º¸¾È¿¡ ¹ÌÄ¡´Â ¿©·¯ ¿µÇâ¿¡ ´ëÇÑ ÀÌÇØ°¡ Æ÷ÇԵȴÙ.

¼¼¹ø°, suEXEC ÄÚµåÀÇ ¼öÁ¤ÇÏÁö¾ÊÀº ¹öÀüÀ» »ç¿ëÇÑ´Ù°í °¡Á¤ÇÑ´Ù. °³¹ßÀÚ¿Í ¿©·¯ º£Å¸Å×½ºÅ͵éÀº suEXEC¿Í °ü·ÃµÈ ¸ðµç Äڵ带 Á¶½É½º·´°Ô Á¶»çÇÏ°í °Ë»çÇß´Ù. Äڵ带 °£´ÜÇÏ°Ô ÇÏ°í È®½ÇÇÑ ¾ÈÀüÀ» º¸ÀåÇϱâÀ§ÇØ ¸ðµç ÁÖÀǸ¦ ±â¿ï¿´´Ù. ÀÌ Äڵ带 ¼öÁ¤ÇÏ¸é ¿¹»óÄ¡¸øÇÑ ¹®Á¦¿Í »õ·Î¿î º¸¾È À§ÇèÀÌ ¹ß»ýÇÒ ¼ö ÀÖ´Ù. º¸¾È ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇØ ¸Å¿ì Àß ¾Ë°í Äڵ带 »ìÆ캸±âÀ§ÇØ ¾ÆÆÄÄ¡±×·ì°ú ÀÛ¾÷À» °øÀ¯ÇÒ Àǻ簡 ¾ø´Ù¸é suEXEC Äڵ带 ¼öÁ¤ÇÏÁö¾Ê±æ °­·ÂÈ÷ ±ÇÇÑ´Ù.

³×¹ø°ÀÌÀÚ ¸¶Áö¸·À¸·Î, ¾ÆÆÄÄ¡±×·ìÀº suEXEC¸¦ ¾ÆÆÄÄ¡ ±âº»¼³Ä¡¿¡ Æ÷ÇÔÇÏÁö ¾Ê±â·Î °áÁ¤Çß´Ù. °á±¹ °ü¸®ÀÚ°¡ ÁÖÀǸ¦ ±â¿ï¿©¼­ suEXEC¸¦ ¼³Á¤ÇØ¾ß ÇÑ´Ù. suEXECÀÇ ¿©·¯ ¼³Á¤À» Àß °í·ÁÇÑÈÄ °ü¸®ÀÚ´Â ÀϹÝÀûÀÎ ¼³Ä¡¹æ¹ýÀ» suEXEC¸¦ ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù. suEXEC ±â´ÉÀ» »ç¿ëÇÏ´Â ½Ã½ºÅÛÀÇ º¸¾ÈÀ» Ã¥ÀÓÁö´Â °ü¸®ÀÚ´Â ÀÌ ¼³Á¤°ªµéÀ» ÁÖÀÇÀÖ°Ô »ìÆ캸°í ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ÀÌ·± »ó¼¼ÇÑ °úÁ¤Àº suEXEC¸¦ »ç¿ëÇÒ¸¸Å­ ÁÖÀÇÀÖ°í ´ÜÈ£ÇÑ »ç¶÷¸¸ÀÌ suEXEC¸¦ »ç¿ëÇϵµ·Ï ¾ÆÆÄÄ¡±×·ìÀÌ ¿øÇϱ⠶§¹®ÀÌ´Ù.

¾ÆÁ÷µµ »ç¿ëÇÏ±æ ¿øÇϴ°¡? ±×·±°¡? ÁÁ´Ù. ÀÌÁ¦ ½ÃÀÛÇÏÀÚ!

top

suEXEC º¸¾È¸ðµ¨

suEXEC¸¦ ±¸¼ºÇÏ°í ¼³Ä¡Çϱâ Àü¿¡ ¿ì¸®´Â º¸¾È¸ðµ¨À» ¸ÕÀú ¼³¸íÇÑ´Ù. À̸¦ ÅëÇØ Á¤È®È÷ suEXEC ¾È¿¡¼­´Â ¹«½¼ ÀÏÀÌ ÀϾ¸ç ½Ã½ºÅÛÀÇ º¸¾ÈÀ» À§ÇØ ¹«¾ùÀ» Á¶½ÉÇØ¾ß ÇÒÁö ´õ Àß ÀÌÇØÇÒ ¼ö ÀÖ´Ù.

suEXEC´Â ¾ÆÆÄÄ¡ À¥¼­¹ö°¡ ºÎ¸£´Â setuid "wrapper" ÇÁ·Î±×·¥À» ±â¹ÝÀ¸·Î ÇÑ´Ù. ÀÌ wrapper´Â °ü¸®ÀÚ°¡ ÁÖ¼­¹ö¿Í ´Ù¸¥ userid·Î ½ÇÇàÇϵµ·Ï ¼³Á¤ÇÑ CGI³ª SSI ÇÁ·Î±×·¥¿¡ HTTP ¿äûÀÌ ¿À¸é ºÒ¸°´Ù. ÀÌ·± ¿äûÀÌ ¿À¸é ¾ÆÆÄÄ¡´Â suEXEC wrapper¿¡°Ô ÇÁ·Î±×·¥¸í°ú ÇÁ·Î±×·¥À» ½ÇÇàÇÒ »ç¿ëÀÚ¿Í ±×·ì ID¸¦ Á¦°øÇÑ´Ù.

±×·¯¸é wrapper´Â ´ÙÀ½ °úÁ¤À» ÅëÇØ ¼º°ø°ú ½ÇÆи¦ °áÁ¤ÇÑ´Ù. ÀÌ Á¶°ÇÁß Çϳª¶óµµ ½ÇÆÐÇϸé ÇÁ·Î±×·¥Àº ½ÇÆзΠ±â·ÏµÇ°í ¿À·ù¸¦ ³»¸ç Á¾·áÇÑ´Ù. ½ÇÆÐÇÏÁö ¾ÊÀ¸¸é °úÁ¤À» °è¼ÓÇÑ´Ù:

  1. wrapper¸¦ ½ÇÇàÇÏ´Â »ç¿ëÀÚ°¡ ½Ã½ºÅÛÀÇ Á¤»óÀûÀÎ »ç¿ëÀÚÀΰ¡?

    wrapper¸¦ ½ÇÇàÇÏ´Â »ç¿ëÀÚ°¡ ½ÇÁ¦·Î ½Ã½ºÅÛÀÇ »ç¿ëÀÚÀÎÁö È®ÀÎÇÑ´Ù.

  2. ÀûÀýÇÑ ¼öÀÇ ¾Æ±Ô¸ÕÆ®·Î wrapper¸¦ ½ÇÇàÇϴ°¡?

    wrapper´Â ÀûÀýÇÑ ¼öÀÇ ¾Æ±Ô¸ÕÆ®°¡ ÀÖ¾î¾ß¸¸ ½ÇÇàµÈ´Ù. ¾ÆÆÄÄ¡ À¥¼­¹ö°¡ ÀÌ °³¼ö¸¦ ¾È´Ù. wrapper°¡ ÀûÀýÇÑ ¼öÀÇ ¾Æ±Ô¸ÕÆ®¸¦ ¹ÞÁö¸øÇϸé ÇØÅ·µÇ¾ú°Å³ª ¾ÆÆÄÄ¡ÀÇ suEXEC¿¡ ¹º°¡ ¹®Á¦°¡ ÀÖ´Â °ÍÀÌ´Ù.

  3. ÀÌ »ç¿ëÀÚ°¡ wrapper¸¦ ½ÇÇàÇϵµ·Ï Çã¿ëµÇ¾ú³ª?

    ÀÌ »ç¿ëÀÚ°¡ wrapper¸¦ ½ÇÇàÇϵµ·Ï Çã¿ëµÇ¾ú³ª? ¿ÀÁ÷ ÇÑ »ç¿ëÀÚ(¾ÆÆÄÄ¡ »ç¿ëÀÚ)¸¸ÀÌ ÀÌ ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ÀÖ´Ù.

  4. ÁöÁ¤ÇÑ CGI³ª SSI ÇÁ·Î±×·¥ÀÌ ¾ÈÀüÇÏÁö¾ÊÀº °èÃþÂüÁ¶¸¦ °¡Áö´Â°¡?

    ÁöÁ¤ÇÑ CGI³ª SSI ÇÁ·Î±×·¥ÀÌ '/'·Î ½ÃÀÛÇϰųª µÞÂüÁ¶ '..'À» °¡Áö´Â°¡? À̵éÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù. ÁöÁ¤ÇÑ CGI/SSI ÇÁ·Î±×·¥Àº suEXEC ¹®¼­ root (¾Æ·¡ --with-suexec-docroot=DIR Âü°í) ³»¿¡ ÀÖ¾î¾ß ÇÑ´Ù.

  5. ÁöÁ¤ÇÑ »ç¿ëÀÚ¸íÀÌ À¯È¿ÇÑ°¡?

    ÁöÁ¤ÇÑ »ç¿ëÀÚ°¡ Á¸ÀçÇϴ°¡?

  6. ÁöÁ¤ÇÑ ±×·ì¸íÀÌ À¯È¿ÇÑ°¡?

    ÁöÁ¤ÇÑ ±×·ìÀÌ Á¸ÀçÇϴ°¡?

  7. ÁöÁ¤ÇÑ »ç¿ëÀÚ°¡ superuser°¡ ¾Æ´Ñ°¡?

    ÇöÀç suEXEC´Â root°¡ CGI/SSI ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ¾øµµ·Ï ÇÑ´Ù.

  8. ÁöÁ¤ÇÑ userid°¡ ÃÖ¼Ò ID ¼ýÀÚº¸´Ù Å«°¡?

    ¼³Á¤¿¡¼­ ÃÖ¼Ò »ç¿ëÀÚ ID ¼ýÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ±×·¡¼­ CGI/SSI ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ÀÖ´Â useridÀÇ ÃÖ¼ÒÄ¡¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. "½Ã½ºÅÛ¿ë" °èÁ¤À» Á¦¿ÜÇÒ¶§ À¯¿ëÇÏ´Ù.

  9. ÁöÁ¤ÇÑ ±×·ìÀÌ superuser ±×·ìÀÌ ¾Æ´Ñ°¡?

    ÇöÀç suEXEC´Â root ±×·ìÀÌ CGI/SSI ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ¾øµµ·Ï ÇÑ´Ù.

  10. ÁöÁ¤ÇÑ groupid°¡ ÃÖ¼Ò ID ¼ýÀÚº¸´Ù Å«°¡?

    ¼³Á¤¿¡¼­ ÃÖ¼Ò ±×·ì ID ¼ýÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ±×·¡¼­ CGI/SSI ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ÀÖ´Â groupidÀÇ ÃÖ¼ÒÄ¡¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. "½Ã½ºÅÛ¿ë" ±×·ìÀ» Á¦¿ÜÇÒ¶§ À¯¿ëÇÏ´Ù.

  11. wrapper°¡ ¼º°øÀûÀ¸·Î ÁöÁ¤ÇÑ »ç¿ëÀÚ¿Í ±×·ìÀÌ µÉ ¼ö Àִ°¡?

    ÀÌ ´Ü°è¿¡¼­ ÇÁ·Î±×·¥Àº setuid¿Í setgid È£ÃâÀ» ÇÏ¿© ÁöÁ¤ÇÑ »ç¿ëÀÚ¿Í ±×·ìÀÌ µÈ´Ù. ¶Ç, ±×·ì Á¢±Ù¸ñ·ÏÀº »ç¿ëÀÚ°¡ ÇØ´çµÈ ¸ðµç ±×·ìÀ¸·Î ÃʱâÈ­µÈ´Ù.

  12. CGI/SSI ÇÁ·Î±×·¥ÀÌ ÀÖ´Â µð·ºÅ丮·Î µð·ºÅ丮¸¦ º¯°æÇÒ ¼ö Àִ°¡?

    µð·ºÅ丮°¡ Á¸ÀçÇÏÁö ¾Ê´Ù¸é ÆÄÀÏÀÌ ÀÖÀ» ¼ö ¾ø´Ù. ÀÌ°÷À¸·Î µð·ºÅ丮¸¦ º¯°æÇÒ ¼ö ¾ø´Ù¸é µð·ºÅ丮´Â Á¸ÀçÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.

  13. µð·ºÅ丮°¡ ¾ÆÆÄÄ¡ À¥°ø°£ ¾È¿¡ Àִ°¡?

    ¼­¹öÀÇ ÀϹÝÀûÀÎ ºÎºÐÀ» ¿äûÇÒ °æ¿ì ¿äûÇÏ´Â µð·ºÅ丮°¡ suEXEC ¹®¼­ root ¾Æ·¡ Àִ°¡? UserDirÀ» ¿äûÇÒ °æ¿ì ¿äûÇÏ´Â µð·ºÅ丮°¡ suEXEC userdir·Î ¼³Á¤ÇÑ (suEXEC ¼³Á¤ ¿É¼Ç Âü°í) µð·ºÅ丮 ¾Æ·¡¿¡ Àִ°¡?

  14. ´Ù¸¥ ´©±¸µµ µð·ºÅ丮¿¡ ¾²±â±ÇÇÑÀÌ ¾ø´Â°¡?

    µð·ºÅ丮¸¦ ´Ù¸¥ »ç¶÷¿¡°Ô ¿­¾îµÎ±æ ¿øÇÏÁö¾Ê´Â´Ù. ¿ÀÁ÷ ¼ÒÀ¯ÀÚ¸¸ÀÌ µð·ºÅ丮 ³»¿ëÀ» º¯°æÇÒ ¼ö ÀÖ´Ù.

  15. ÁöÁ¤ÇÑ CGI/SSI ÇÁ·Î±×·¥ÀÌ Á¸ÀçÇϴ°¡?

    Á¸ÀçÇÏÁö¾Ê´Ù¸é ½ÇÇàÇÒ ¼öµµ ¾ø´Ù.

  16. ´Ù¸¥ ´©±¸µµ ÁöÁ¤ÇÑ CGI/SSI ÇÁ·Î±×·¥¿¡ ¾²±â±ÇÇÑÀÌ ¾ø´Â°¡?

    ¼ÒÀ¯ÀÚ¿Ü ´©±¸µµ CGI/SSI ÇÁ·Î±×·¥À» º¯°æÇÏ±æ ¿øÇÏÁö¾Ê´Â´Ù.

  17. ÁöÁ¤ÇÑ CGI/SSI ÇÁ·Î±×·¥ÀÌ setuid³ª setgid°¡ ¾Æ´Ñ°¡?

    ¿ì¸®´Â ÇÁ·Î±×·¥ÀÌ ´Ù½Ã UID/GID¸¦ º¯°æÇÏ±æ ¿øÇÏÁö¾Ê´Â´Ù.

  18. ÁöÁ¤ÇÑ »ç¿ëÀÚ/±×·ìÀÌ ÇÁ·Î±×·¥ÀÇ »ç¿ëÀÚ/±×·ì°ú °°Àº°¡?

    »ç¿ëÀÚ°¡ ÆÄÀÏÀÇ ¼ÒÀ¯ÀÚÀΰ¡?

  19. ¾ÈÀüÇÑ µ¿ÀÛÀ» À§ÇØ ÇÁ·Î¼¼½ºÀÇ È¯°æº¯¼ö¸¦ û¼ÒÇÒ ¼ö Àִ°¡?

    suEXEC´Â (¼³Á¤¿¡¼­ Á¤ÀÇÇÑ) ¾ÈÀüÇÑ ½ÇÇà PATH¸¦ Àâ°í, (À̰͵µ ¼³Á¤¿¡¼­ Á¤ÀÇ) ¾ÈÀüÇÑ È¯°æº¯¼ö ¸ñ·Ï¿¡ ¿­°ÅµÈ º¯¼ö¸¸ ³²±â°í ÇÁ·Î¼¼½ºÀÇ È¯°æº¯¼ö¸¦ Áö¿î´Ù.

  20. ¼º°øÀûÀ¸·Î ÁöÁ¤ÇÑ CGI/SSI ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö Àִ°¡?

    ¿©±â¼­ suEXEC°¡ ³¡³ª°í ÁöÁ¤ÇÑ CGI/SSI ÇÁ·Î±×·¥ÀÌ ½ÃÀÛÇÑ´Ù.

ÀÌ°ÍÀÌ suEXEC wrapper º¸¾È¸ðµ¨ÀÇ Ç¥ÁØ µ¿ÀÛÀÌ´Ù. ´Ù¼Ò ¾ö°ÝÇÏ°í CGI/SSI ¼³°è¿¡ »õ·Î¿î Á¦ÇÑÀÌ µÇÁö¸¸, º¸¾ÈÀ» ¿°µÎ¿¡ µÎ°í ÇѴܰ辿 Á¶½É½º·´°Ô ¸¸µé¾îÁ³´Ù.

ÀÌ º¸¾È ¸ðµ¨ÀÌ ¼­¹ö ¼³Á¤¿¡ ¾î¶² Á¦ÇÑÀ» ÁÖ´ÂÁö¿Í ÀûÀýÇÑ suEXEC ¼³Á¤À¸·Î ¾î¶² º¸¾È À§ÇèÀ» ÇÇÇÒ ¼ö ÀÖ´ÂÁö¿¡ ´ëÇØ ÀÌ ¹®¼­ÀÇ "´Ù½Ã Çѹø Á¶½ÉÇ϶ó" ÀýÀ» Âü°íÇ϶ó.

top

suEXEC ±¸¼º°ú ¼³Ä¡

ÀÌÁ¦ Àç¹ÌÀÖ´Â ³»¿ëÀÌ ½ÃÀÛÇÑ´Ù.

suEXEC ±¸¼º ¿É¼Ç

--enable-suexec
ÀÌ ¿É¼ÇÀº ±âº»ÀûÀ¸·Î ¼³Ä¡µÇ°Å³ª È°¼ºÈ­µÇÁö¾Ê´Â suEXEC ±â´ÉÀ» È°¼ºÈ­ÇÑ´Ù. APACI°¡ suEXEC¸¦ ¹Þ¾ÆµéÀÌ·Á¸é --enable-suexec ¿É¼Ç¿Ü¿¡ --with-suexec-xxxxx ¿É¼ÇÀÌ ÃÖ¼ÒÇÑ ÇÑ°³ ÇÊ¿äÇÏ´Ù.
--with-suexec-bin=PATH
suexec ¹ÙÀ̳ʸ® °æ·Î´Â º¸¾È»ó ÀÌÀ¯·Î ¼­¹ö¿¡ ±â·ÏµÇ¾ß ÇÑ´Ù. °æ·Î ±âº»°ªÀ» ¹«½ÃÇÏ·Á¸é ÀÌ ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. ¿¹¸¦ µé¾î --with-suexec-bin=/usr/sbin/suexec
--with-suexec-caller=UID
º¸Åë ¾ÆÆÄÄ¡¸¦ ½ÇÇàÇÏ´Â »ç¿ëÀÚ¸í. ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼ö ÀÖ´Â À¯ÀÏÇÑ »ç¿ëÀÚ´Ù.
--with-suexec-userdir=DIR
suEXEC Á¢±ÙÀÌ Çã¿ëµÇ´Â »ç¿ëÀÚ È¨µð·ºÅ丮ÀÇ ÇÏÀ§µð·ºÅ丮¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ µð·ºÅ丮¿¡ ÀÖ´Â ¸ðµç ½ÇÇàÆÄÀÏÀ» »ç¿ëÀÚÀÇ suEXEC·Î ½ÇÇà¹Ç·Î, ¸ðµç ÇÁ·Î±×·¥ÀÌ "¾ÈÀüÇؾß" ÇÑ´Ù. (¿¹¸¦ µé¾î, °ª¿¡ "*"ÀÌ ¾ø´Â) "°£´ÜÇÑ" UserDir Áö½Ã¾î¸¦ »ç¿ëÇÑ´Ù¸é °°Àº °ªÀ» ¼³Á¤ÇØ¾ß ÇÑ´Ù. UserDir Áö½Ã¾î°¡ passwd ÆÄÀÏ¿¡ ³ª¿Â »ç¿ëÀÚ È¨µð·ºÅ丮¿Í ´Ù¸£¸é suEXEC´Â Á¤»óÀûÀ¸·Î ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù. ±âº»°ªÀº "public_html"ÀÌ´Ù.
°¡»óÈ£½ºÆ®µéÀÌ °¢°¢ ´Ù¸¥ UserDirÀ» »ç¿ëÇÑ´Ù¸é ¸ðµÎ ÇÑ ºÎ¸ð µð·ºÅ丮 ¾È¿¡ ÀÖµµ·Ï Á¤ÀÇÇØ¾ß ÇÏ°í, ±× ºÎ¸ð µð·ºÅ丮¸íÀ» ¿©±â Àû´Â´Ù. ÀÌ·¸°Ô Á¤ÀÇÇÏÁö ¾ÊÀ¸¸é, "~userdir" cgi ¿äûÀÌ ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù!
--with-suexec-docroot=DIR
¾ÆÆÄÄ¡ÀÇ DocumentRoot¸¦ Á¤ÀÇÇÑ´Ù. ÀÌ´Â suEXEC°¡ »ç¿ëÇÒ ¼ö ÀÖ´Â (UserDirsÀ» Á¦¿ÜÇÑ) À¯ÀÏÇÑ °ø°£ÀÌ´Ù. ±âº» µð·ºÅ丮´Â --datadir °ª¿¡ "/htdocs"À» ºÙÀÎ °ÍÀÌ´Ù. ¿¹¸¦ µé¾î "--datadir=/home/apache"·Î ±¸¼ºÇß´Ù¸é suEXEC wrapper´Â document root·Î "/home/apache/htdocs" µð·ºÅ丮¸¦ »ç¿ëÇÑ´Ù.
--with-suexec-uidmin=UID
suEXEC¿¡¼­ ÁöÁ¤°¡´ÉÇÑ »ç¿ëÀÚÀÇ ÃÖ¼Ò UID¸¦ Á¤ÀÇÇÑ´Ù. ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ 500À̳ª 100ÀÌ ÀûÀýÇÏ´Ù. ±âº»°ªÀº 100ÀÌ´Ù.
--with-suexec-gidmin=GID
suEXEC¿¡¼­ ÁöÁ¤°¡´ÉÇÑ ±×·ìÀÇ ÃÖ¼Ò GID¸¦ Á¤ÀÇÇÑ´Ù. ´ëºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼­ 100ÀÌ ÀûÀýÇϹǷΠÀÌ °ªÀÌ ±âº»°ªÀÌ´Ù.
--with-suexec-logfile=FILE
¸ðµç suEXEC ÀÛµ¿°ú ¿À·ù¸¦ (°¨½Ã³ª µð¹ö±ë ¸ñÀû¿¡ À¯¿ëÇÑ) ±â·ÏÇÒ ·Î±×ÆÄÀϸíÀ» ÁöÁ¤ÇÑ´Ù. ±âº»ÀûÀ¸·Î ·Î±×ÆÄÀÏÀÇ À̸§Àº "suexec_log"ÀÌ°í Ç¥ÁØ ·Î±×ÆÄÀÏ µð·ºÅ丮¿¡ (--logfiledir) À§Ä¡ÇÑ´Ù.
--with-suexec-safepath=PATH
CGI ½ÇÇàÆÄÀÏ¿¡ ³Ñ°ÜÁú ¾ÈÀüÇÑ PATH ȯ°æº¯¼ö¸¦ Á¤ÀÇÇÑ´Ù. ±âº»°ªÀº "/usr/local/bin:/usr/bin:/bin"ÀÌ´Ù.

suEXEC wrapper¸¦ ÄÄÆÄÀÏÇÏ°í ¼³Ä¡Çϱâ
--enable-suexec ¿É¼ÇÀ¸·Î suEXEC ±â´ÉÀ» °¡´ÉÇÏ°ÔÇÑ °æ¿ì make ¸í·É¾î¸¦ ½ÇÇàÇϸé suexec ½ÇÇàÆÄÀÏÀÌ (¾ÆÆÄÄ¡¿Í ÇÔ²²) ÀÚµ¿À¸·Î ¸¸µé¾îÁø´Ù.
¸ðµç°ÍÀ» ÄÄÆÄÀÏÇÑ ÈÄ make install ¸í·É¾î¸¦ ½ÇÇàÇÏ¿© ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù. ¹ÙÀ̳ʸ®ÆÄÀÏ suexec´Â --sbindir ¿É¼ÇÀ¸·Î ÁöÁ¤ÇÑ µð·ºÅ丮¿¡ ¼³Ä¡µÈ´Ù. ±âº» À§Ä¡´Â "/usr/local/apache2/sbin/suexec"ÀÌ´Ù.
¼³Ä¡ °úÁ¤¿¡ root ±ÇÇÑÀÌ ÇÊ¿äÇÔÀ» ÁÖÀÇÇ϶ó. wrapper°¡ »ç¿ëÀÚ ID¸¦ ¼³Á¤ÇϱâÀ§Çؼ­´Â ¼ÒÀ¯ÀÚ°¡ rootÀÌ°í ÆÄÀϸðµå·Î setuserid ½ÇÇàºñÆ®°¡ ¼³Á¤µÇ¾ß ÇÑ´Ù.

ÆíÁýÁõÀûÀÎ ±ÇÇѼ³Á¤
suEXEC wrapper´Â ÀÚ½ÅÀ» ½ÇÇàÇÑ »ç¿ëÀÚ°¡ ±¸¼º ¿É¼Ç --with-suexec-caller·Î ÁöÁ¤ÇÑ ¿Ã¹Ù¸¥ »ç¿ëÀÚÀÎÁö È®ÀÎÀ» ÇÏÁö¸¸, ÀÌ °Ë»ç ÀÌÀü¿¡ suEXEC°¡ »ç¿ëÇÏ´Â ½Ã½ºÅÛÈ£Ãâ ȤÀº ¶óÀ̺귯¸® ÇÔ¼ö°¡ Á¶À۵ǾúÀ» ¼ö ÀÖ´Ù. À̸¦ ´ëºñÇϸç ÀϹÝÀûÀ¸·Î ÁÁÀº ½À°üÀ̹ǷΠ¿ÀÁ÷ ¾ÆÆÄÄ¡¸¦ ½ÇÇàÇÏ´Â ±×·ì¸¸ÀÌ suEXEC¸¦ ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï ÆÄÀϽýºÅÛ ±ÇÇÑÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù.

¿¹¸¦ µé¾î, À¥¼­¹ö¸¦ ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÏ°í:

User www
Group webgroup

suexec¸¦ "/usr/local/apache2/sbin/suexec"¿¡ ¼³Ä¡ÇÏ¿´´Ù¸é, ´ÙÀ½À» ½ÇÇàÇØ¾ß ÇÑ´Ù:

chgrp webgroup /usr/local/apache2/bin/suexec
chmod 4750 /usr/local/apache2/bin/suexec

±×·¯¸é ¿ÀÁ÷ ¾ÆÆÄÄ¡¸¦ ½ÇÇàÇÏ´Â ±×·ì¸¸ÀÌ suEXEC wrapper¸¦ ½ÇÇàÇÒ ¼ö ÀÖ´Ù.

top

suEXEC Å°°í ²ô±â

¾ÆÆÄÄ¡´Â ½ÃÀÛÇÒ¶§ --sbindir ¿É¼ÇÀ¸·Î ÁöÁ¤ÇÑ µð·ºÅ丮¿¡¼­ suexec ÆÄÀÏÀ» (±âº»°ª "/usr/local/apache2/sbin/suexec") ã´Â´Ù. ¾ÆÆÄÄ¡°¡ Á¤»óÀûÀ¸·Î ±¸¼ºµÈ suEXEC wrapper¸¦ ¹ß°ßÇÏ¸é ¿À·ù ·Î±×(error log)¿¡ ´ÙÀ½°ú °°ÀÌ Ãâ·ÂÇÑ´Ù:

[notice] suEXEC mechanism enabled (wrapper: /path/to/suexec)

¼­¹ö ½ÃÀÛÁß¿¡ ÀÌ·± ¹®±¸¸¦ ¾ø´Ù¸é ¼­¹ö´Â ±â´ëÇÑ Àå¼Ò¿¡¼­ wrapper ÇÁ·Î±×·¥À» ãÁö ¸øÇ߰ųª, ½ÇÇàÆÄÀÏÀÌ setuid root·Î ¼³Ä¡µÇÁö¾Ê¾Ò±â ¶§¹®ÀÏ °ÍÀÌ´Ù.

óÀ½À¸·Î suEXEC ±â´ÉÀ» »ç¿ëÇÏ°í ½Í°í ÀÌ¹Ì ¾ÆÆÄÄ¡ ¼­¹ö°¡ ½ÇÇàÁßÀ̶ó¸é, ¾ÆÆÄÄ¡¸¦ Á×ÀÌ°í ´Ù½Ã ½ÃÀÛÇØ¾ß ÇÑ´Ù. °£´ÜÈ÷ HUPÀ̳ª USR1 ½Ã±×³Î·Î Àç½ÃÀÛÇÏ´Â °ÍÀ¸·Î´Â ÃæºÐÇÏÁö ¾Ê´Ù.

suEXEC¸¦ ¾È»ç¿ëÇÏ·Á¸é suexec ÆÄÀÏÀ» Áö¿îÈÄ ¾ÆÆÄÄ¡¸¦ Á×ÀÌ°í Àç½ÃÀÛÇØ¾ß ÇÑ´Ù.

top

suEXEC »ç¿ëÇϱâ

CGI ÇÁ·Î±×·¥ ¿äûÀÇ °æ¿ì SuexecUserGroup Áö½Ã¾î¸¦ »ç¿ëÇÑ °¡»óÈ£½ºÆ®¿¡ ¿äûÀ» ÇÏ¿´°Å³ª mod_userdirÀÌ ¿äûÀ» ó¸®ÇÏ´Â °æ¿ì¿¡¸¸ suEXEC wrapper¸¦ È£ÃâÇÑ´Ù.

°¡»óÈ£½ºÆ®:
suEXEC wrapper¸¦ »ç¿ëÇÏ´Â ÇÑ°¡Áö ¹æ¹ýÀº VirtualHost Á¤ÀÇ¿¡ SuexecUserGroup Áö½Ã¾î¸¦ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. ÀÌ Áö½Ã¾î¸¦ ÁÖ¼­¹ö »ç¿ëÀÚ ID¿Í ´Ù¸£°Ô ¼³Á¤Çϸé CGI ÀÚ¿øÀÇ ¸ðµç ¿äûÀÌ <VirtualHost>¿¡¼­ ÁöÁ¤ÇÑ User¿Í GroupÀ¸·Î ½ÇÇàµÈ´Ù. ÀÌ Áö½Ã¾îµéÀÌ <VirtualHost>¿¡ ¾øÀ¸¸é ÁÖ¼­¹ö userid¸¦ »ç¿ëÇÑ´Ù.

»ç¿ëÀÚ µð·ºÅ丮:
mod_userdirÀÌ ¿äûÀ» ó¸®ÇÑ´Ù¸é suEXEC wrapper¸¦ È£ÃâÇÏ¿©, ¿äûÇÑ »ç¿ëÀÚ µð·ºÅ丮¿¡ ÇØ´çÇÏ´Â »ç¿ëÀÚ ID·Î CGI ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù. ÀÌ ±â´ÉÀÌ µ¿ÀÛÇÏ·Á¸é »ç¿ëÀÚ ID·Î CGI¸¦ ½ÇÇàÇÒ ¼ö ÀÖ°í ½ºÅ©¸³Æ®°¡ À§ÀÇ º¸¾È °Ë»ç Ç׸ñÀ» ¸¸Á·ÇØ¾ß ÇÑ´Ù. ±¸¼º ¿É¼Ç --with-suexec-userdirÀ» Âü°íÇ϶ó.

top

suEXEC µð¹ö±ëÇϱâ

suEXEC wrapper´Â ·Î±× Á¤º¸¸¦ À§¿¡¼­ ´Ù·é --with-suexec-logfile ¿É¼ÇÀ¸·Î ÁöÁ¤ÇÑ ÆÄÀÏ¿¡ ¾´´Ù. wrapper¸¦ ¿Ã¹Ù·Î ±¸¼ºÇÏ°í ¼³Ä¡Çß´Ù¸é ¾îµð¼­ À߸øµÇ¾ú´ÂÁö ÀÌ ·Î±×ÆÄÀÏ¿Í ¼­¹öÀÇ error_log¸¦ »ìÆìºÁ¶ó.

top

´Ù½Ã Çѹø Á¶½ÉÇ϶ó: °æ°í¿Í ¿¹Á¦

ÁÖÀÇ! ÀÌ ¼½¼ÇÀº ¿ÏÀüÇÏÁö ¾ÊÀ» ¼ö ÀÖ´Ù. ¾ÆÆÄÄ¡±×·ìÀÇ ¿Â¶óÀÎ ¹®¼­¿¡¼­ ÀÌ ¹®¼­ÀÇ ÃÖ½ÅÆÇÀ» Âü°íÇ϶ó.

wrapper°¡ ¼­¹ö ¼³Á¤À» Á¦¾àÇÏ´Â ¸î°¡Áö Èï¹Ì·Î¿î Á¡ÀÌ ÀÖ´Ù. suEXEC¿Í °ü·ÃµÈ "¹ö±×"¸¦ º¸°íÇϱâ Àü¿¡ À̵éÀ» »ìÆ캸±æ ¹Ù¶õ´Ù.

°¡´ÉÇÑ ¾ð¾î:  en  |  ja  |  ko  |  tr