´ÙÀ½ ÀýÀº ºñ¹ÐŰ ÆÄÀÏ, CSR ¹× ÀÚÇÊ ¼¸í ÀÎÁõ¼¸¦ »ý¼ºÇϴµ¥ Æ÷ÇÔµÈ ´Ü°èµéÀ» ´Ù·é´Ù. CA°¡ ¼¸íÇÑ ÀÎÁõ¼¸¦ ¾òÀ¸·Á¸é CSRÀ» »ý¼ºÇÒ Çʿ䰡 ÀÖÀ¸¸ç ±×·¸Áö ¾ÊÀº °æ¿ì ÀÚÇÊ ¼¸í ÀÎÁõ¼¸¦ »ý¼ºÇÒ ¼ö ÀÖ´Ù.
ºñ¹Ð۸¦ ¸¸µé±â À§Çؼ´Â OpenSSL ŸŶÀ» ¾ÆÆÄÄ¡¿Í ÇÔ²² ¼³Ä¡ ¹× ¼³Á¤ÇØ¾ß ÇÑ´Ù. ´ÙÀ½ ¿¹´Â µðÆúÆ®·Î /usr/local/ssl/bin µð·ºÅ丮³»¿¡ ¼³Ä¡µÈ OpenSSL command line µµ±¸¸¦ »ç¿ëÇϴµ¥ ÀÌ µµ±¸¸¦ Æ÷ÇÔÇÏ´Â µð·ºÅ丮°¡ $PATH º¯¼ö¿¡ Ãß°¡µÇ¾î ÀÖ´Ù°í °¡Á¤ÇÑ´Ù.
»ïÁß des ¾ÏÈ£È Ç¥ÁØ(ÃßõµÈ´Ù)À» »ç¿ëÇØ ºñ¹Ð۸¦ »ý¼ºÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃŲ´Ù:
openssl genrsa -des3 -out filename.key 1024 |
pass phrase¸¦ ÀÔ·Â ¹× ÀçÀÔ·ÂÇ϶ó´Â Áö½Ã ¸Þ¼¼Áö¸¦ º¼ °ÍÀÌ´Ù. »ïÁß des ¾Ïȣȸ¦ »ç¿ëÇÑ´Ù°í ¼±ÅÃÇÑ´Ù¸é cold start·Î SSL ¼¹ö¸¦ ½ÃÀÛÇÒ ¶§¸¶´Ù ÆÐ½º¿öµå¸¦ ¹¯´Â Áö½Ã ¸Þ¼¼Áö¸¦ º¼ °ÍÀÌ´Ù (restart ¸í·ÉÀ» »ç¿ëÇÒ ¶§´Â ÀÌ·¯ÇÑ ¸Þ¼¼Áö¸¦ º¸Áö ¸øÇÒ °ÍÀÌ´Ù). ¾î¶² »ç¶÷Àº ÆÐ½º¿öµå ÇÁ·ÒÇÁÆ®À» ±ÍÂú°Ô »ý°¢ÇÒ ¼ö Àִµ¥ ƯÈ÷ ÈÞ½Ä ½Ã°£¿¡ ½Ã½ºÅÛÀ» ½Ãµ¿ÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì°¡ ±×·¸´Ù. ¶Ç´Â ½Ã½ºÅÛÀÌ ÀÌ¹Ì ÃæºÐÈ÷ ¾ÈÀüÇÏ´Ù°í ¹ÏÀ» ¼ö Àֱ⠶§¹®¿¡ ÆÐ½º¿öµå ÇÁ·ÒÇÁÆ®°¡ ³ªÅ¸³ªÁö ¾Êµµ·Ï ÇÑ´Ù¸é(µû¶ó¼ »ïÁß des ¾ÏȣȰ¡ ¾Æ´Ï´Ù) ¾Æ·¡ÀÇ ¸í·ÉÀ» »ç¿ëÇØ¶ó. ¿ÀÈ÷·Á ´ÜÁö 512 ºñÆ® ۸¦ »ý¼ºÇÏ·Á°í ÇÑ´Ù¸é ¸í·É ³¡ºÎºÐÀÇ 1024¸¦ »ý·«Çضó. OpenSSLÀº µðÆúÆ®·Î 512 ºñÆ®°¡ µÉ °ÍÀÌ´Ù. ´õ¿í ÀÛÀº ۸¦ »ç¿ëÇÑ´Ù¸é ¾à°£ ºü¸£°ÚÁö¸¸ ´õ¿í º¸¾È¿¡ Ãë¾àÇÏ´Ù.
»ïÁß des ¾Ïȣȸ¦ »ç¿ëÇÏÁö ¾Ê°í ºñ¹Ð۸¦ »ý¼ºÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃŲ´Ù:
openssl genrsa -out filename.key 1024 |
±âÁ¸ ºñ¹ÐŰ¿¡ ÆÐ½º¿öµå¸¦ Ãß°¡ÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃŲ´Ù:
openssl -in out filename.key -des3 -out newfilename.key |
±âÁ¸ ºñ¹ÐŰ·ÎºÎÅÍ ÆÐ½º¿öµå¸¦ Á¦°ÅÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃŲ´Ù:
openssl -in filename.key -out newfilename.key |
Note: Ưº°È÷ ÁöÁ¤µÇÁö ¾Ê´Â´Ù¸é ºñ¹ÐŰ´Â ÇöÀç µð·ºÅ丮³»¿¡ »ý¼ºµÉ °ÍÀÌ´Ù. À̸¦ ´Ù·ç´Â ¼Õ½¬¿î ¼¼°¡Áö ¹æ¹ýÀÌ Àִµ¥ OpenSSLÀÌ °æ·Î¿¡ ÀÖ´Ù¸é Ű ÆÄÀÏÀ» ÀúÀåÇϵµ·Ï ¸í½ÃÇÑ µð·ºÅ丮(RPM ¶Ç´Â ¼Ò½º ÆÄÀÏÀ» »ç¿ëÇØ ¾ÆÆÄÄ¡¸¦ ¼³Ä¡Çß´Ù¸é °¢°¢ /etc/httpd/conf/ssl.key ¶Ç´Â /usr/local/apache/conf/ssl.key °¡ µðÆúÆ®ÀÌ´Ù)¿¡¼ À̸¦ ½ÇÇà½Ãų ¼ö ÀÖ´Ù. ´Ù¸¥ ¹æ¹ýÀº »ý¼ºµÈ µð·ºÅ丮¿¡¼ Á¤È®ÇÑ µð·ºÅ丮·Î ÆÄÀÏÀ» º¹»çÇÏ´Â °ÍÀÌ´Ù. ¸¶Áö¸·À¸·Î ƯÈ÷ ¸í·ÉÀ» ½ÇÇà½Ãų ¶§ (¿¹¸¦µé¸é openssl genrsa -out /etc/httpd/conf/ssl.key/filename.key 1024) °æ·Î¸¦ ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ¾î¶² ¹æ¹ýÀ» »ç¿ëÇÏµç º° ¹®Á¦´Â ¾ø´Ù.
OpenSSL ŸŶ¿¡ ´ëÇØ ´õ ¸¹Àº Á¤º¸¸¦ ¾ò±â À§Çؼ OpenSSL WebSite¸¦ ÂüÁ¶Çضó.
CA°¡ ¼¸íÇÑ ÀÎÁõ¼¸¦ ¾ò±â À§Çؼ´Â CSRÀ» »ý¼ºÇÒ Çʿ䰡 ÀÖ´Ù. ÀÌ ¸ñÀûÀº Àüü ºñ¹Ð۸¦ º¸³»°Å³ª ¸ðµç ±â¹Ð Á¤º¸¸¦ ¼Õ»ó½ÃŰÁö ¾Ê°í ÀÎÁõ¼¸¦ »ý¼ºÇÒ ¼ö ÀÖÀ»¸¸Å ÃæºÐÇÑ Á¤º¸¸¦ CA¿¡ º¸³»·Á´Â °ÍÀε¥ CSRÀº µµ¸ÞÀÎ À̸§, ¼ÒÀçÁö Á¤º¸ µî°ú °°Àº ÀÎÁõ¼¿¡ Æ÷Ç﵃ ¼ö ÀÖ´Â Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù.
CSRÀ» »ý¼ºÇÏ·Á´Â ºñ¹ÐŰ À§Ä¡¸¦ °áÁ¤ÇÏ°í ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃŲ´Ù:
openssl req -new -key filename.key -out filename.csr |
¼ÒÀçÁö Á¤º¸, °øÅë À̸§(µµ¸ÞÀÎ ³×ÀÓ), Á¶Á÷ Á¤º¸ µî¿¡ ´ëÇÑ Áö½Ã ¸Þ¼¼Áö¸¦ º¼ °ÍÀÌ´Ù. Çʼö Çʵå¿Í ¹«È¿ÇÑ ¿£Æ®¸®¿¡ °üÇÑ Á¤º¸¿¡ ´ëÇØ ½ÅûÇÏ·Á´Â CA¿¡ ¹®ÀÇÇØ¶ó.
CSRÀ» Áö½Ã¿¡ µû¶ó CA¿¡ º¸³»¶ó.
»õ·Î¿î ÀÎÁõ¼¸¦ ±â´Ù¸®°Å³ª ÀÚÇÊ ¼¸í ÀÎÁõ¼¸¦ »ý¼ºÇضó. CA·Î ºÎÅÍ ÀÎÁõ¼¸¦ ¹ÞÀ» ¶§±îÁö ÀÚÇÊ ¼¸í ÀÎÁõ¼¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
Note: ºñ¹ÐŰ »ý¼º°ú ¿äûÀ» µ¿½Ã¿¡ Çϱâ À§ÇØ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃŲ´Ù:
openssl genrsa -des3 -put filename.key 1024 |
CA°¡ ¼¸íÇÑ ÀÎÁõ¼¸¦ ¾òÀ¸·Á ÇÑ´Ù¸é ÀÚÇÊ ¼¸í ÀÎÁõ¼¸¦ »ý¼ºÇÏ´Â °ÍÀº ÇÊ¿äÇÏÁö ¾ÊÁö¸¸ ÀÌ´Â ¸Å¿ì °£´ÜÇÏ´Ù. ÇÊ¿äÇÑ °ÍÀº ºñ¹ÐŰ¿Í º¸È£ÇÏ·Á°í ÇÏ´Â ¼¹ö À̸§(fully qualified domain name)ÀÌ´Ù. ¼ÒÀçÁö Á¤º¸, °øÅë À̸§(µµ¸ÞÀÎ ³×ÀÓ), Á¶Á÷ Á¤º¸ µî¿¡ ´ëÇÑ Áö½Ã ¸Þ¼¼Áö¸¦ º¼ ¼ö Àִµ¥ OpenSSLÀº ¿©±â¼ ¸¹Àº ÀÚÀ¯¸¦ ÁØ´Ù. ÀÎÁõ¼°¡ Á¤È®È÷ ÀÛµ¿µÇ±â À§ÇØ ÇÊ¿äÇÑ Çʵå´Â µµ¸ÞÀÎ ³×ÀÓ Çʵå·Î ÀÌ Çʵ尡 ¾ø°Å³ª ºÎÁ¤È®ÇÏ´Ù¸é ºê¶ó¿ìÀú·ÎºÎÅÍ Certificate Name CheckÀ̶ó´Â °æ°í ¸Þ¼¼Áö¸¦ ¹ÞÀ» °ÍÀÌ´Ù.
ÀÚÇÊ ¼¸í ÀÎÁõ¼¸¦ »ý¼ºÇϱâ À§Çؼ´Â ´ÙÀ½ ¸í·ÉÀ» ½ÇÇà½ÃŲ´Ù:
openssl req -new -key filename.key -x509 -out filename.crt |
Áö±Ý±îÁö Áö½ÃµéÀ» Àß µû¶ú´Ù¸é ÀÌ ½ÃÁ¡¿¡¼ ¾Æ¹« ¹®Á¦µµ ¾ø¾î¾ß ÇÑ´Ù. CSRÀ» CA¿¡ º¸³»°í ÀÎÁõ¼¸¦ ¾ÆÁ÷±îÁö ¹ÞÁö ¸øÇß´Ù¸é Àá½Ã ½¯ ¼ö ÀÖÀ» °ÍÀÌ´Ù! ÀÚÇÊ ¼¸í ÀÎÁõ¼¸¦ »ç¿ëÇϰųª ÀÎÁõ¼¸¦ ¹Þ¾Ò´Ù¸é ´ÙÀ½À» °è¼ÓÇÒ ¼ö ÀÖ´Ù.
»ç¿ëÇϱâ·Î °áÁ¤ÇÑ ºñ¹ÐŰ ÆÄÀÏÀÌ µð·ºÅ丮³»¿¡ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇØ¶ó. ´ÙÀ½ ¿¹´Â ·¹µåÇÞ ¹èÆ÷ÆÇÀÇ RPM ¼³Ä¡½ÃÀÇ µðÆúÆ® /etc/httpd/conf/ssl.key ¿¡ ±âÃÊÇÒ °ÍÀÌ´Ù.
CA°¡ ¼¸íÇÑ ¶Ç´Â ÀÚÇÊ ¼¸í ÀÎÁõ¼°¡ ¸í½ÃÇÑ À§Ä¡¿¡ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇØ¶ó. RPM ¼³Ä¡½ÃÀÇ µðÆúÆ® /etc/httpd/conf/ssl.crt¸¦ »ç¿ëÇÒ °ÍÀÌ´Ù. ÀÌ À§Ä¡¿¡ ¾ø´Ù¸é ÀÎÁõ¼¸¦ À̰÷¿¡ ³õ´Â´Ù.
¼³Ä¡µÈ intermediate(root) ÀÎÁõ¼°¡ ÀÖ´Ù¸é À̸¦ /etc/httpd/conf/ssl.crt µð·ºÅ丮¿¡ º¹»çÇÑ´Ù.
ÀÌÁ¦ httpd.conf ÆÄÀÏÀ» ÆíÁýÇØ¾ß Çϴµ¥ ´ÙÀ½ ´Ü°è, 4Àý·Î °¡±â Àü¿¡ ÀÌ ÆÄÀÏÀ» ¹é¾÷ÇÑ´Ù.