Ä¿ÇǴнº, ½Ã½ºÅÛ ¿£Áö´Ï¾îÀÇ ½°ÅÍ Ä¿ÇÇÇâÀÌ ³ª´Â *NIX
Ä¿ÇǴнº
½Ã½ºÅÛ/³×Æ®¿÷/º¸¾ÈÀ» ´Ù·ç´Â °÷
* HanIRCÀÇ #coffeenix ¹æ
[ Àåºñ ¹× ȸ¼± ÈÄ¿ø ]
HOME > ³×Æ®¿öÅ©(network) > À¥ ¼­¹ö(web, httpd, apache) > Apache SSL / mod_ssl µµ¿ò¸»
°Ë»ö : »çÀÌÆ® WHOIS À¥¼­¹ö Á¾·ù


  SSL ¿î¿µ(https)½Ã µµ¸ÞÀαâ¹Ý Virtual host°¡ ¾ÈµÇ´Â ÀÌÀ¯ ÀÛ¼ºÀÏ : 2007/09/19 12:16
 
  • ±Û¾´ÀÌ : ÁÁÀºÁøÈ£ ( http://coffeenix.net/ )
  • Á¶È¸¼ö : 18115
          [ ÀÌÀüÈ­¸é / ¼öÁ¤ ]   ºñ¹Ð¹øÈ£ :     Àμâ¿ë È­¸é
      Á¦  ¸ñ : SSL ¿î¿µ(https)½Ã µµ¸ÞÀαâ¹Ý Virtual host°¡ ¾ÈµÇ´Â ÀÌÀ¯
    ÀÛ¼ºÀÚ : ÁÁÀºÁøÈ£(truefeel, http://coffeenix.net/ )
    ´äº¯ÀÏ : 2006.1.10(È­) AM 00:21
    Á¤¸®ÀÏ : 2007.9.18(È­)

    SSLÀÎÁõ¼­¸¦ »ç¿ëÇÒ ¶§, https´Â ¿Ö µµ¸ÞÀαâ¹Ý virtual host°¡ ¾ÈµÇ´Â°¡¿¡ ´ëÇؼ­ http://linuxchannel.net/board/read.php?table=qna&no=6427 ¿¡ 2006³â 1¿ù¿¡ ´äº¯ÇÑ ³»¿ëÀ» Á¤¸®ÇÑ °ÍÀÌ´Ù. ´ÜÀϵµ¸ÞÀÎ ÀÎÁõ¼­(ÀÎÁõ¼­ 1°³¿¡ ÇϳªÀÇ µµ¸ÞÀθ¸ °®°í ÀÖÀ½)¸¦ ±âÁØÀ¸·Î ´äº¯ÇÑ ³»¿ëÀÌ´Ù. ¿ÍÀϵåÄ«µå ÀÎÁõ¼­(*.foo.com ÇüÅÂÀÇ ÀÎÁõ¼­)¿Í ¸ÖƼÀÎÁõ¼­(foo.com, bar.com µî ¿©·¯ µµ¸ÞÀÎÀ» Çϳª¿¡ ³ÖÀº ÀÎÁõ¼­. Áï, Common Name(CN)À» ¿©·¯°³ °®°í ÀÖÀ½)´Â 1°³ÀÇ ÀÎÁõ¼­·Î °°Àº IP, °°Àº Æ÷Æ®(443)·Î ¿©·¯ µµ¸ÞÀÎÀÇ SSL ¼­ºñ½º°¡ °¡´ÉÇÏ´Ù.

    ÇÑÆí Channy's Blog( http://channy.creation.net/blog/?p=444 )¿¡ µû¸£¸é TLS ÇÁ·ÎÅäÄÝ(RFC 2246, http://www.rfc-archive.org/getrfc.php?rfc=2246 )ÀÇ È®Àå ±Ô¾à(RFC 3546, http://www.rfc-archive.org/getrfc.php?rfc=3546 )¿¡¼­ À¥ ¼­¹ö¿Í ºê¶ó¿ìÀú »çÀÌÀÇ Åë½ÅÀ» ÇÒ ¶§ ¼­¹ö¸íÀ» ¹Ì¸® º¸³»´Â SNI(Server Name Indication)À» Ãß°¡ÇÏ¿´´Ù°í ÇÑ´Ù. µû¶ó¼­, ºê¶ó¿ìÀú¿Í ¼­¹ö°¡ Áö¿øÇÏ°Ô µÇ¸é ½±°Ô virtual ¼³Á¤ÀÌ °¡´ÉÇÒ ³¯ÀÌ ¿Ã °ÍÀ¸·Î º¸ÀδÙ.



    ------------------------------------------------------
    ±Û¾´ÀÌ : ÁÁÀºÁøÈ£
    ±Û¾´³¯ : 2006³â 01¿ù 10ÀÏ
    ------------------------------------------------------

     [ÀÌÇöö]´ÔÀÌ ³²±â½Å ±Û:

    > »ó¿ëÈ­¿ë CA¿Í ¼­¹ö¿¡¼­ ¸¸µç CA(Å×½ºÆ®¿ë CA)¸¦ »ç¿ëÇÒ °æ¿ì
    > ´Ù¸¥Á¡Àº ´ÜÁö À¥ºê¶ó¿ìÀú Á¢¼Ó½Ã ¼­¹ö¿¡¼­ ¸¸µç CA¸¦ »ç¿ëÇؼ­ ¼­¸íÇÑ »çÀÌÆ® °æ¿ì¿¡´Â °æ°íâÀÌ ¶á´Ù´Â°ÍÀ¸·Î ¾Ë°í ÀÖ½À´Ï´Ù.
    > (½Å·Ú¼ºÀÌ ¾ø´Â »çÀÌÆ®¶ó´Â ÇüÅÂÀÇ ¸Þ¼¼Áö)
    >
    > »ó¿ëÈ­ CA¶ó´Â°ÍÀ» »ç¿ëÇÏ´Â ÀÌÀ¯´Â ½Å·Ú¼ºÀ» ¹Ï°í »çÀÌÆ®¸¦ ÀÌ¿ëÇصµ µÈ´Ù´Â ÆÇ´ÜÀ̶ó°í »ý°¢ÇÕ´Ï´Ù.
    >
    > ±× ÀÌ¿Ü ±â´ÉÀº °°´Ù°í »ý°¢ÇÕ´Ï´Ù.(¾Ïȣȭ ó¸®)
     


    ¿¹. ±×·¸½À´Ï´Ù.

    »ç¼³ÀÎÁõ¼­¸¦ »ç¿ëÇÏ´õ¶óµµ Å×½ºÆ®´Â µ¿ÀÏÇÏ°Ô ÇÏ½Ç ¼ö ÀÖÀ¸¸ç,
    ³»ºÎ¿ëÀ¸·Î »ç¿ëÇÏ´Â °ÍÀ̳ª ´ÜÁö ¾Ïȣȭ¸¦ À§ÇѰŶó¸é »ç¼³ÀÎÁõ¼­¸¦ »ç¿ëÇصµ µË´Ï´Ù.

     
    > ----------------   ------------------ --------------------
    > ÇöÀç 1´ë¼­¹ö¿¡ 2°³ÀÇ µµ¸ÞÀÎÀÌ Á¸ÀçÇÏ°í µÎ°³ÀÇ µµ¸ÞÀÎ ÀüºÎ(http)À¥¼­ºñ½º ±×¸®°í
    > ÇϳªÀÇ µµ¸ÞÀο¡ °üÇؼ­¸¸(https) ÀÌ¿ëÇÏ°íÀÖ½À´Ï´Ù.(»ó¿ëÈ­Å°¸¦ ÀÌ¿ëÇÏÁö ¾ÊÀ½-Å×½ºÆ®¿ëca¸¦ °¡Áö°í httpsÇüÅ·ΠÀÌ¿ëÁß)
    >
    > httpd.conf¿¡´Â
    > ---------------------------------------------------
    > <VirtualHost xxx.xxx.xxx.xxx:80>
    >    ServerAdmin xxxxxxxxx
    >    DocumentRoot /home/xxxxxxx
    >    ServerName zec.gigaprize.co.jp
    >    ErrorLog logs/error.log
    >    CustomLog logs/access.log common
    > </VirtualHost>
    > <VirtualHost xxx.xxx.xxx.xxx:80>
    >    ServerAdmin xxxxxxxxx
    >    DocumentRoot /home/xxxxxxx
    >    ServerName gourmet-star.gigaprize.co.jp
    >    ErrorLog logs/error_1.log
    >    CustomLog logs/access_1.log common
    > </VirtualHost>
    > ---------------------------------------------
    >
    > http://zec.gigaprize.co.jp/index.html (ÇöÀç index.html¿Í Á¸ÀçÇÏÁö ¾ÊÄ¡¸¸ µµ¸ÞÀαîÁö Á¢¼ÓÀº °¡´ÉÇÔ)
    > http://gourmet-star.gigaprize.co.jp/index.html (ÇöÀç test¿ë index.html)ÀÌ Á¸ÀçÇÔ
    >
    > ----------------------------------
    > ssl.conf¿¡´Â
    > ----------------------------------
    > <VirtualHost _default_:443>
    > #   General setup for the virtual host
    > DocumentRoot /home/xxxxxxx
    > ServerName gourmet-star.gigaprize.co.jp:443
    > ErrorLog logs/ssl-error_log
    > TransferLog logs/ssl-access_log
    > -----------------------------------------------
    > gourmet-star.gigaprize.co.jp ¸¸ https(ssl)ÇüÅ·Π¼³Á¤ÀÌ µÇ¾î ÀÖÀ½.
    >
    > ----
    > ½ÇÁ¦ Á¢¼ÓÀ» Çغ¸½Ã¸é ¾Ë½Ã°ÚÁö¸¸ https://gourmet-star.gigaprize.co.jp/index.html
    > Á¦´ë·Î Á¢¼ÓÀÌ µÇ°í ÀÖ½À´Ï´Ù.
    >
    > ±×·±µ¥
    > https://zec.gigaprize.co.jp/index.html
    > ·Î Á¢¼ÓÇغ¸¸é ÀÌ µµ¸ÞÀεµ https·Î Á¢¼ÓµÇ¾î ¹ö¸³´Ï´Ù.(index.htmlÀº ½ÇÁ¦ Á¸ÀçÇÏÁö ¾Ê´Âµ¥, ³»¿ëÀ» º¸¸é gourmet-gigaprize.co.jp ÇüÅ·ΠÁ¢¼ÓÇعö¸³´Ï´Ù.(À¥ºê¶ó¿ìÀú URLÀº zec.gigaprize.co.jp Àε¥ index.htmlÀº
    > gourmet-star.gigaprize.co.jp ³»¿ëÀÌ º¸ÀÌ°í ÀÖ½À´Ï´Ù)
    >
    > -------Áú¹® 1ÀÔ´Ï´Ù..-----------------
    > À§ÀÇ °á°ú¸¦ º¸¸é 1´ëÀÇ ¼­¹ö¿¡ 443ÀÇ Æ÷Æ®·Î ¿äûÀÌ(https°¡ ¼³Ä¡µÇ¾îÀÖÁö¾ÊÀº µµ¸ÞÀεµ ) ssl.conf¿¡ ¼³Á¤µÈ µµ¸ÞÀÎÀ¸·Î °á°ú¸¦ º¸¿©ÁÖ°í Àִµ¥ ÀÌ°ÍÀÌ Á¤»óÀÎÁö¿ä?
    > °³ÀÎÀûÀ¸·Î https ¼³Á¤µÇÁö ¾ÊÀº µµ¸ÞÀÎ °æ¿ì¿¡´Â 80Àº º¸¿©ÁÖÁö¸¸
    > 443°üÇؼ­´Â ¿¡·¯°¡ ³ª´Â °ÍÀÌ Á¤»óÀ̶ó°í »ý°¢Çϴµ¥, ¾Æ´Ï¸é Á¦ ¼³Á¤ÀÌ À߸øµÇ¾ú½À´Ï±î?
    >------------------------------------
     


    Á¤»óÀûÀÎ Çö»óÀÔ´Ï´Ù.
    ÀÌÀ¯´Â ¾Æ·¡ Áú¹®¿¡¼­ ´äº¯.

     
    > --------Áú¹®2ÀÔ´Ï´Ù-------------------
    > ±×¸®°í À§ÀÇ µÎ°³ µµ¸ÞÀÎÀ» ÀüºÎ httpsÇüÅ·Π½ÃÇèÇغÃÁö¸¸.
    > (ssl.conf¿¡ ¹öÃò¾ó·Î µÎ°³ÀÇ µµ¸ÞÀÏ µî·Ï-¹°·Ð ca¿Í °¢°¢ µµ¸ÞÀκ°·Î ¸¸µé¾úÀ½-Å×½ºÆ®¿ë ca¸¦ »ç¿ë)
    >
    > µÎ°³ÀÇ µµ¸ÞÀÎÀ» µî·Ï ÈÄ ¾ÆÆÄÄ¡¼³Á¤ syntaxÅ×½ºÆ®
    > #sh apache2/bin/apachectl configtest
    > Syntax OK
    > ±×¸®°í restart ÇÑÈÄ error.log¸¦ º¸¸é ±âÁ¸ÀÇ 443Æ÷Æ®°¡ ÀÌ¿ëÇÏ°í Àֱ⶧¹®¿¡ apachessl¸¦ ±âµ¿ÇÒ¼ö¾ø´Ù°í ³ª¿É´Ï´Ù.
    > °á±¹ ÇÑ´ëÀÇ ¼­¹ö¿¡ 443Æ÷Æ®´Â ÇϳªÀÇ µµ¸ÞÀθ¸ ¿òÁ÷Àϼö ÀÖ´Ù´Â °á·ÐÀä.(80Æ÷Æ®´Â ¸î°³ÀÇ µµ¸ÞÀÎÀ»  ¶ç¿ï¼öÀִµ¥ ¸»ÀÌÁÒ)
    >
    > °á±¹ ÇÑ´ëÀÇ ¼­¹ö¿¡ ÇϳªÀÇ µµ¸ÞÀθ¸ httpsÇüÅ·ΠÀÛµ¿ÇÏ´ÂÁö¿ä.
    > --------------------------------------------------------------
    > (»ó¿ëÈ­ CA»çÀÌÆ®¿¡ º¸¸é 700´Þ·¯ Á¤µµÁÖ¸é ¼­ºêµµ¸ÞÀÎ(aaa.domail.com ,
    > bbb.domail.com) ±îÁö ÀüºÎ ´ëÀÀÇÏ´Â CAµµ ÆÈ°í Àִµ¥¿ä..
    > ---------------------------------------------------------------
    >
     


    ¿ì¼± óÀ½ Áú¹®¿Ã¸± ¶§ ¸»¾¸ÇϽÅ, ¿©·¯ µµ¸ÞÀÎÀ» SSL·Î ¼­ºñ½º¸¦ ÇÑ´Ù¸é

    1) ÇÑ ¼­¹ö¿¡ ¿©·¯ IP¸¦ ÇÒ´çÇÏ°í, À¥¼­¹ö´Â °¢°¢ÀÇ IP¿¡ ¹ÙÀεùÇؼ­ ¿Ã¸®¼Å¾ß ÇÕ´Ï´Ù.
       ¶Ç´Â https Æ÷Æ®¸¦ 443¿Ü¿¡ °¢ µµ¸ÞÀκ°·Î ´Ù¸£°Ô ÇÏ¿© ¹ÙÀεùÇϰųª.

    2) ¿ÏÀüÈ÷ ´Ù¸¥ ¼­¹ö¿¡ ÇÑ´ë´ç ÇϳªÀÇ µµ¸ÞÀÎÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.

    http(80Æ÷Æ®)¿¡¼­ virtual host ¼³Á¤ÇÏ´Â °Íó·³ https¸¦ µµ¸ÞÀαâ¹Ý virtual ¼³Á¤À¸·Î´Â ¾ÈµË´Ï´Ù.

    ÀÌÀ¯´Â ÇÁ·ÎÅäÄÝÀÇ °èÃþ¸¸ ÀÌÇØÇÏ¸é °£´ÜÇÕ´Ï´Ù.
    HTTPS·Î Ç¥½ÃµÇ´Â SSLÇÁ·ÎÅäÄÝÃþÀº HTTPº¸´Ù ÇÏÀ§¿¡ ÀÖ½À´Ï´Ù.
    ±×·±µ¥ À¥¼­¹öÀÇ virtual host¼³Á¤¿¡ ÀÇÇÑ µµ¸ÞÀÎÁ¤º¸´Â HTTPÀÇ Çì´õ¿¡ ºÙ¾îÀÖ½À´Ï´Ù.
    Áï, SSLÇÁ·ÎÅäÄÝÀº HTTPº¸´Ù ÇÏÀ§ÀÌ´Ï HTTPÀÇ Çì´õ¸¦ ÀÌÇظ¦ ¸øÇÏ´Â °ÍÀÌ°ÚÁÒ.
    µû¶ó¼­ µµ¸ÞÀαâ¹Ý virtual host¼³Á¤°ú´Â ´Ù¸£°Ô ¾î¶² µµ¸ÞÀÎÀ¸·Î µé¾î¿Àµç ù ¼³Á¤¿¡ µû¶ó °áÁ¤ÀÌ µÇ´Â°Ì´Ï´Ù.

    layer´Â http://coffeenix.net/doc/network/ssl_fig3.gif ¿¡¼­ º¼ ¼ö ÀÖ°í,


    ÀÌÀ¯´Â http://www.modssl.org/docs/2.8/ssl_faq.html ¿¡¼­ º¼ ¼ö ÀÖ½À´Ï´Ù.

     
    Why can't I use SSL with name-based/non-IP-based virtual hosts?

    The reason is very technical. Actually it's some sort of a chicken and egg problem: The SSL protocol layer stays below the HTTP protocol layer and encapsulates HTTP. When an SSL connection (HTTPS) is established Apache/mod_ssl has to negotiate the SSL protocol parameters with the client. For this mod_ssl has to consult the configuration of the virtual server (for instance it has to look for the cipher suite, the server certificate, etc.). But in order to dispatch to the correct virtual server Apache has to know the Host HTTP header field. For this the HTTP request header has to be read. This cannot be done before the SSL handshake is finished. But the information is already needed at the SSL handshake phase. Bingo!
     

      Ä¿ÇǴнº Ä«Æä ÃÖ±Ù ±Û
    [04/24] º¸Çè&#5
    [04/22] Re: OpenSSL Ãë¾àÁ¡ Á¤¸®, Logjam(·Î±×Àë)¿¡¼­ Heartbleed±îÁö
    [04/21] LET¡¯S START WITH ON
    [04/21] º¸Çè&#5
    [04/20] Á¦ÁÖ&#5
    [04/20] ±¹³»&#5
    [04/19] Á¦ÁÖ&#5
    [04/18] ??? ?????
    [04/17] ???? onion ?????? -
    [04/11] ±¹°¡&#5
    [04/10] Stride Into Dream:
    [03/20] Re: ¿Â¶óÀΰÔÀÓÀÇ Á¾ÁÖ±¹ ´ëÇѹα¹
    [10/20] Cross Compiler ±ò
    [07/14] SSL ¬¡¬°
    [04/26] Re: µµ½ºÈ­¸é ¿ø°ÝÁ¶Á¾ ¿©ºÎ
      New!   ÃÖ±Ù¿¡ µî·ÏÇÑ ÆäÀÌÁö
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      ¿ÀÇÂij½ºÄÉÀ̵å ijµå (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI¸¦ È°¿ëÇÑ ¸®´ª½º ¼­¹ö°ü¸®
      DNS ¼³Á¤ °Ë»ç
      nagiosgraph ¼³Ä¡ ¹æ¹ý
      Slony-I ¼³Ä¡ ¹æ¹ý (postgresql replication tool)
      Qmail±â¹ÝÀÇ Anti spam ½Ã½ºÅÛ ±¸ÃàÇϱâ
      clusterssh

    [ ÇÔ²²ÇÏ´Â »çÀÌÆ® ]




    ¿î¿µÁø : ÁÁÀºÁøÈ£(truefeel), ¾ß¼ö(yasu), ¹ü³ÃÀÌ, sCag
    2003³â 8¿ù 4ÀÏ~