ª©Åv©Ò¦³ © 2002 ¨Ìº¿¿ß¡C¨Ìº¿¿ß«O¦³©Ò¦³Åv§Q¡C¦p±ýÂà¸ü¡B¤Þ¥Î¥»¤å ¡A½Ð¥ý¸Ô¾\®ÈªÙ¨Ìº¿ª©Åv Án©ú¡C
¥»¤åªº¥Øªº¬°¡G¦b Linux/*BSD/UNIX ¤U¡A¥Î OpenSSL ¡A¥H¦Û¤v¦W¦rµo¦æ X.509 SSL ¾ÌÃÒ (Certificate) ¡C§ÚÌ·|»s§@¨âÓ¾ÌÃÒ¡G²Ä¤@ ¨B¥ý°µ¥H¦Û¤v¬°¦W (XXX Association, YYY Corporation) ¡A¦Û¤vñ¦WI®Ñªº ³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¡A²Ä¤G¨B¦A°µ¥H¦øªA¾¹¬°¦W (www.abccompany.com) ¡A¥Î²Ä¤@¨B°µªº³Ì°ª¼h»{ÃÒ¤¤¤ß (XXX Association, YYY Corporation) ñµoªº¾ÌÃÒ (Certificate) ¡C¬°Â²¤Æ°_¨£¡A§Ṳ́£°µ¤¤¶¡ ªº¾ÌÃÒ³æ¦ì¡Aª½±µ¥Ñ³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¡A¨Óñµo¾ÌÃÒ¡C
¥»¤å¥u°Q½× SSL X.509 ¾ÌÃÒ°µªk¡A¤£°Q½×¨t²Î¦w¥þ°ÝÃD¡A¤£ °Q½×¥[¸Ñ±Kªººtºâªk¡A¤]¤£°Q½× OpenSSL ªº¦p¦ó¦w¸Ë¡C§Ú°²³]©pÁA¸Ñ°ò¥» Public Key/Private Key ¤£¹ïºÙ¥[¸Ñ±KªºÆ[©À¡Aª¾¹D¤°»ò¬O RSA/DSA ºtºâªk ¡C§Ú¤]°²³]©p¤w¸g¸Ë¦n¤F OpenSSL ¡A¦w¸Ë®É¨Ï¥Î¤U¦C²Å¦X FHS[1] ¼Ð·Çªº³]©w¡G
./config --prefix=/usr --openssldir=/usr/share/ssl
©Î¦w¸Ë RPM ©Î apt ªº openssl ®M¥ó¡C
¥»¤å¬O°µªk±Ð¾Ç (HOWTO) ¡A©Ò¥H¦b½s±Æ¤W¡A§â°µªk¨BÆJ (how) ©ñ¦b³Ì«e± ¡AÆ[©À»¡©ú©M°Q½× (what and why) µ¥¡A³£©ñ¦b¤å¥½¡CY©p¬Ý¤£À´°µªk¡A©Î·Q ¥ý¾Ç¤@¨Ç°ò¥»·§©À¡A½Ð¥ý©¹«á½¾\¡A¤£»Ý¥Ñ«e¨ì«á¾\Ū¡C
½Ðª`·N¡G¨Ì¥»¤å»s§@ªº¾ÌÃÒ¡AÁÙ¬O·|¦bÂsÄý¾¹µ¥ SSL µ{ ¦¡¤W¥X²{¾ÌÃÒµL®ÄªºÄµ§i¡C¸Ô±¡½Ð°Ñ¦Ò¡uSSL/X.509 ²¤¶¡v»P¡u¾ÌÃÒµL®ÄªºÄµ§i¡v¡C
«ö X.509 ªº³W©w¡A¾ÌÃÒ¥i¥H¥Î RSA Key ¡A¤]¥i¥H¥Î DSA Key ¡C¤£¹L¦b SSL ³q°T¤¤¡A¦øªA¾¹ªº¾ÌÃÒ¦]¬°n¥Î¨Ó¶Ç Key ¡A¦Ó¥u¦³ RSA ¥i¥H¶Ç Key ¡A©Ò¥H¥u¯à¥Î RSA ¡C¦Ü©ó»{ÃÒ¤¤¤ß¡A¥u¬Oñ¦W¬d®Ö¥Î¡A¤£¥Î¶Ç Key ¡A DSA ©Î RSA ³£¥i¥H¡A¦ý¦]¬°ÁÙ¦³¤@¨Ç SSL µ{¦¡¤£»{±o DSA[2] ¡A¬°¬Û®e©Ê°_¨£¡A³oùاṲ́]°µ¦¨ RSA ¡C
n»s§@³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¥i¥H¥H¤@¯ë¨Ï¥ÎªÌÅv¨Ó°µ¡A¤£¤@©wn¬O root ¡C¦ý¦pªG°µ¥X¨Óªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¬O¾ãÓ²Õ´ñµo¾ÌÃÒ n¥Îªº¡A«ØÄ³¥H root ªºÅv¨Ó°µ¡A¤ñ¸û¦w¥þ¡C¦P²z¡A»s§@¾ÌÃÒ ¡A¤]¥i¥H¥H¤@¯ë¨Ï¥ÎªÌÅv¨Ó°µ¡C¦ý¦pªG°µ¥X¨Óªº¾ÌÃÒ¡A¬O³oÓ¦øªA¾¹n¥Îªº ¡A¬°¦w¥þ°_¨£¡A«ØÄ³¥H root ªºÅv¨Ó°µ¡C
Y©p¬O¥Î¤Wz¤èªk¦w¸Ë¡G
./config --prefix=/usr --openssldir=/usr/share/ssl
©Î¸Ë Red Hat ªº RPM ¡A OpenSSL ªº³]©wÀɥؿý·|¦b /usr/share/ssl ¡CY©p¬O¦w¸Ë Mandrake ªº RPM ¡A³]©wÀɥؿý·|¦b /usr/lib/ssl ¡C³o¨âÓ¦ì¸m³£¤£²Å¦X FHS ªºn¨D¡A¸ê®Æ³Æ¥÷°_¨Ó¤]¤£¤è«K¡C³]©wÀÉÀ³¸Ó©ñ¦b /etc/ssl ¤U¡CY©p¬O¦w¸Ë Debian ªº apt ¡A³]©wÀɥؿý·|¦b /etc/ssl ¤U¡A¤£·|¦³°ÝÃD¡C
# ³]©w¬ÛÃöªº¥Ø¿ý mkdir -p /etc/ssl mkdir -p /etc/ssl/private chmod og-rwx /etc/ssl/private mkdir -p /etc/ssl/certs mkdir -p /etc/ssl/crl mkdir -p /etc/ssl/newcerts # ³]©w OpenSSL ³]©wÀÉ[3] mv /usr/share/ssl/openssl.cnf /etc/ssl ln -s /etc/ssl/openssl.cnf /usr/share/ssl/openssl.cnf # ³]©w OpenSSL ³]©wÀɪº¦ì¸m[4] export OPENSSL_CONF="/etc/ssl/openssl.cnf" # §â OpenSSL ³]©wÀɪº¦ì¸m¥[¶i .bashrc ¤¤[5] echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.bashrc echo "export OPENSSL_CONF=\"/etc/ssl/openssl.cnf\"" >> ~/.bashrc # »s§@¶Ã¼ÆÀÉ[6] openssl rand -out /etc/ssl/private/.rand 1024 chmod og-rwx /etc/ssl/private/.rand
µM«á×§ï /etc/ssl/openssl.cnf ¡A§â³o¤@¦æ
dir = ./demoCA # Where everything is kept
§ï¦¨³o¼Ë
dir = /etc/ssl # Where everything is kept
Y©p¤§«e°µ¹L³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¤£n«°µ¡A¤£µMì¨Óñµoªº¾ÌÃÒ¡A³£·|¥¢®Ä ¡A³£n«Ã±¡C°£«D³Ì°ª¼h»{ÃÒ¤¤¤ß¦Û¤v¹L´Á¡BÀɮ׿ò¥¢¡B Private Key ¥~¬ª¡A §_«hµ´¹ï¤£n«°µ³Ì°ª¼h»{ÃÒ¤¤¤ß¡C
°²³]©pn°µªº³Ì°ª¼h»{ÃÒ¤¤¤ß¥s°µ myrootca ¡C
³oùاṴ́µ¤@¤ä·sªº Private Key ¡C Public Key ¥i¥Ñ Private Key ±À±o ¡A©Ò¥H¤£¥Î¯S§O¥h°µ¡C
½Ð¬°³Ì°ª¼h»{ÃÒ¤¤¤ßªº Private Key ³]©w¤@Ó¾A·íªº±K½X¡C
# »s§@ RSA[7] Private Key openssl genrsa -des3 -out /etc/ssl/private/myrootca.key 2048 chmod og-rwx /etc/ssl/private/myrootca.key
¾ÌÃҥӽЮѡA¬O§â©pªº¸ê®Æ¡A©M³oÓ Public Key §¨¦b¤@°_¡A¥H«K»{ÃÒ¤¤¤ß ¼f®Ö¡Añ¤Wñ¦W¥Îªº¡C©Ò¥H³oÓ¨BÆJ¡A·|°Ý©p³oÓ Key ªº¬ÛÃö¸ê®Æ¡A¥]¬A°ê®a ¡B«°¥«¡B³æ¦ì¦WºÙ¡B³¡ªù¦WºÙ¡B¾ÌÃÒ¦WºÙ¡BÁpµ¸¤Hªº«H½c¡A¥H¤Î¥Ó½Ðªº®Ä´Áµ¥ µ¥¡C½Ð¤@¤@¶ñ¼g¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O¾ÌÃÒ¡H¡v¡C
Y©pnª½±µ¥Î³Ì°ª¼h»{ÃÒ¤¤¤ß¨Óª½±µ·í¾ÌÃҥΡA¾ÌÃÒ¦WºÙ (Common Name) ½Ð¥Î¦øªA¾¹ªº¥þ¦W (www.abc.com) ¡C¸Ô±¡½Ð°Ñ¦Ò¡u¨ä¦o SSL/X.509 ¾ÌÃÒªº°µªk¡v¡C
Y¤£ª¾¦p¦ó¶ñ¼g¡A½Ð°Ñ¾\¡u¦p¦ó¶ñ¼g¾ÌÃҥӽЮѡv¡C
# ¶ñ¼g¾ÌÃÒ¥Ó½Ð®Ñ openssl req -new -key /etc/ssl/private/myrootca.key -out /tmp/myrootca.req
³Ì°ª¼h»{ÃÒ¤¤¤ß¦]¬°¨S¦³¤W¯Å¤F¡A¨S¦³¤H¯àµ¹¥¦Ã±¦W¡A¥u¯à¦Û¤vµ¹¦Û¤vñ¦W ¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O³Ì°ª¼h»{ÃÒ¤¤¤ß¡H¡v¡C
³Ì°ª¼h»{ÃÒ¤¤¤ß³Ì¦n¥Ã»·¤£n¹L´Á¡Cn¬O¹L´Á«Ã±¡A©Ò¦³ì¨Ó¥¦Ã±µoªº¾ÌÃÒ ¤]³£n«Ã±¡A©Ò¦³ SSL µ{¦¡¤]³£n«·s³]©w¡C©Ò¥H§Ú̮ĴÁñ 7305 ¤Ñ¡]¤j¬ù 20¦~¡^¡CY¤£³]®Ä´Áªº¸Ü¡A¹w³]¬O 30 ¤Ñ¡]¤@Ó¤ë¡^¡C
ñ§¹¾ÌÃÒ¡A¾ÌÃҥӽЮѴN¤£¥Î¤F¡A¥i¥H§R±¼¡C
# ¦Û¤vµ¹¦Û¤vñ¦W openssl x509 -req -days 7305 -sha1 \ -extfile /etc/ssl/openssl.cnf -extensions v3_ca \ -signkey /etc/ssl/private/myrootca.key \ -in /tmp/myrootca.req -out /etc/ssl/certs/myrootca.crt # §R°£¾ÌÃÒ¥Ó½Ð®Ñ rm -f /tmp/myrootca.req
³o¼Ë´N¦n¤F¡C Private Key ¦b /etc/ssl/private/myrootca.key ¡A¦Û¤vñ¦Wªº Public Key ¾ÌÃÒ¦b /etc/ssl/certs/myrootca.crt ¡C myrootca.key ¬O Private Key ¡An¤p¤ß¦s¦n«O Å@¡A¥u¦³ root ¤~¯àŪ¡AÅv«ØÄ³ 0444 ¡C myrootca.crt ¬O Public Key ¾ÌÃÒ¡An¾¨¶q´²¥X¥h ¡AÅý¤j®a¥Î¡C³Ì¦n©ñ¨ì¤º³¡ºô¸ô¤W¡A©Î©ñ¨ìºô¯¸¤W¡AÅý¤j®a¦Û¤v¤U¸ü¡A¦Û¤v¥[ ¶i¥h¡C
°²³]©pn°µ myhost ªº¾ÌÃÒ¡G
³oùاṴ́µ¤@¤ä·sªº Private Key ¡C Public Key ¥i¥Ñ Private Key ±À±o ¡A©Ò¥H¤£¥Î¯S§O¥h°µ¡C
½Ð¥ýµn¤J¨ìn¥Î¾ÌÃÒªº¨º»O¦øªA¾¹¤W¡C
ª`·N¡G¦øªA¾¹ªº Private Key ¤£n³]±K½X¡A¤£µM SSL ¦øªA¾¹µ{¦¡±Ò°Êªº®ÉÔ¡A¤@¥hŪ¾ÌÃÒ©M Private Key ¡A´N n°Ý¤@¦¸±K½X¡C¨C¦¸«¶}¾÷¡A¨Ì§Ç±Ò°Ê¨CÓ¦øªA¾¹µ{¦¡ªº®ÉÔ¡A¤@¸I¨ìnŪ Private Key ªº¦øªA¾¹µ{¦¡¡A³£·|°±¤U¨Óµ¥Áä½L¿é¤J±K½X¡Cn¬O©ñ°²¨S¤H¡A©Î ¦øªA¾¹©ñ¦b IDC ¾÷©Ð¡A±q»·ºÝ«¶}¾÷©Î Crash «á¦Û¦æ«¶}¾÷¡A «o·í¦b¨ºùص¥Áä½LºV±K½X¡A¶}¤£¤F¾÷¡A¨º´N¤£¦nª±¤F¡C
# »s§@ RSA Private Key openssl genrsa -out /etc/ssl/private/myhost.key 2048 chmod og-rwx /etc/ssl/private/myhost.key
¾ÌÃҥӽЮѡA¬O§â©pªº¸ê®Æ¡A©M³oÓ Public Key §¨¦b¤@°_¡A¥H«K»{ÃÒ¤¤¤ß ¼f®Ö¡Añ¤Wñ¦W¥Îªº¡C©Ò¥H³oÓ¨BÆJ¡A·|°Ý©p³oÓ Key ªº¬ÛÃö¸ê®Æ¡A¥]¬A°ê®a ¡B«°¥«¡B³æ¦ì¦WºÙ¡B³¡ªù¦WºÙ¡B¾ÌÃÒ¦WºÙ¡BÁpµ¸¤Hªº«H½c¡A¥H¤Î¥Ó½Ðªº®Ä´Áµ¥ µ¥¡C³oùؾÌÃÒ¦WºÙ (Common Name) n¥Î¦øªA¾¹ªº¥þ¦W (www.abc.com) ¡A¨ä¦o ½Ð¤@¤@¶ñ¼g¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O¾ÌÃÒ¡H¡v¡C
Y¤£ª¾¦p¦ó¶ñ¼g¡A½Ð°Ñ¾\¡u¦p¦ó¶ñ¼g¾ÌÃҥӽЮѡv¡C
# ¶ñ¼g¾ÌÃÒ¥Ó½Ð®Ñ openssl req -new -key /etc/ssl/private/myhost.key -out /tmp/myhost.req
¦øªA¾¹¾ÌÃÒªº®Ä´Á¨ä¹êµL©Ò¿×¡A¹L´Á«Ã±¤@±i´N¦n¤F¡C SSL µ{¦¡»{ªº¬O»{ÃÒ¤¤¤ß¡A¤£¬O¾ÌÃÒ¡A©Ò¥H¾ÌÃÒñ¤F´N·|¥Í®Ä¡A¤£¥Î¥h³]©w SSL µ{¦¡¡C¤£¹L¬°§K«Ã±ªº³Â·Ð¡A§Ú̮ĴÁÁÙ¬Oñ 3650 ¤Ñ¡]¤j ¬ù¤Q¦~¡^¡C
ñ§¹¾ÌÃÒ¡A¾ÌÃҥӽЮѴN¤£¥Î¤F¡A¥i¥H§R±¼¡C
# ñµo¾ÌÃÒ openssl x509 -req -days 3650 -sha1 \ -extfile /etc/ssl/openssl.cnf -extensions v3_req \ -CA /etc/ssl/certs/myrootca.crt -CAkey /etc/ssl/private/myrootca.key \ -CAserial /etc/ssl/myrootca.srl -CAcreateserial \ -in /tmp/myhost.req -out /etc/ssl/certs/myhost.crt # §R°£¾ÌÃÒ¥Ó½Ð®Ñ rm -f /tmp/myhost.req
³o¼Ë´N¦n¤F¡C[9] Private Key ¦b /etc/ssl/private/myhost.key ¡A n¤p¤ß¦s¦n«OÅ@¡A¥u¦³ root ¤~¯àŪ¡A«ØÄ³Åv¬° 0400 ¡F Public Key ¾ÌÃÒ¦b /etc/ssl/certs/myhost.crt ¡An¾¨¶q´²¥X¥h¡AÅý¤j®a¥Î¡C³o²Õ Public/Private Key ¾ÌÃÒ¥i¥H°µ¬° myhost ªº SSL ¾ÌÃÒ¡A¥Î¦b HTTPS ©Î POP3S/TLS/SSL ¤W¡C³Ì¦n¤£n §âÀÉ®×·h¨ì§Oªº¦a¤è¡C©p¥i¥H¦b³]©wÀÉùØ¡A§â¾ÌÃÒ¦ì¸m³]©w¨ì³oùØ¡C Private Key ¤£n¨ì³B©ñ¡A¥H§K¤£¤p¤ß§Ñ°O«OÅ@¡C
# ³]©w¬ÛÃöªº¥Ø¿ý mkdir -p ~/etc mkdir -p ~/etc/ssl mkdir -p ~/etc/ssl/private chmod og-rwx ~/etc/ssl/private mkdir -p ~/etc/ssl/certs mkdir -p ~/etc/ssl/crl mkdir -p ~/etc/ssl/newcerts mkdir -p ~/tmp # ³]©w OpenSSL ³]©wÀÉ[10] cp /usr/share/ssl/openssl.cnf ~/etc/ssl # ³]©w OpenSSL ³]©wÀɪº¦ì¸m[11] export OPENSSL_CONF="$HOME/etc/ssl/openssl.cnf" # §â OpenSSL ³]©wÀɪº¦ì¸m¥[¶i .bashrc ¤¤[12] echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.bashrc echo "export OPENSSL_CONF=\"$HOME/etc/ssl/openssl.cnf\"" >> ~/.bashrc # »s§@¶Ã¼ÆÀÉ[13] openssl rand -out ~/etc/ssl/private/.rand 1024 chmod og-rwx ~/etc/ssl/private/.rand
µM«á×§ï ~/etc/ssl/openssl.cnf ¡A§â³o¤@¦æ
dir = ./demoCA # Where everything is kept
§ï¦¨³o¼Ë
dir = ~/etc/ssl # Where everything is kept
Y©p¤§«e°µ¹L³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¤£n«°µ¡A¤£µMì¨Óñµoªº¾ÌÃÒ¡A³£·|¥¢®Ä ¡A³£n«Ã±¡C°£«D³Ì°ª¼h»{ÃÒ¤¤¤ß¦Û¤v¹L´Á¡BÀɮ׿ò¥¢¡B Private Key ¥~¬ª¡A §_«hµ´¹ï¤£n«°µ³Ì°ª¼h»{ÃÒ¤¤¤ß¡C
°²³]©pn°µªº³Ì°ª¼h»{ÃÒ¤¤¤ß¥s°µ myrootca ¡C
³oùاṴ́µ¤@¤ä·sªº Private Key ¡C Public Key ¥i¥Ñ Private Key ±À±o ¡A©Ò¥H¤£¥Î¯S§O¥h°µ¡C
½Ð¬°³Ì°ª¼h»{ÃÒ¤¤¤ßªº Private Key ³]©w¤@Ó¾A·íªº±K½X¡C
ª`·N¡G¦øªA¾¹ªº Private Key ¤£n³]±K½X¡A¤£µM SSL ¦øªA¾¹µ{¦¡±Ò°Êªº®ÉÔ¡A¤@¥hŪ¾ÌÃÒ©M Private Key ¡A´N n°Ý¤@¦¸±K½X¡C¨C¦¸«¶}¾÷¡A¨Ì§Ç±Ò°Ê¨CÓ¦øªA¾¹µ{¦¡ªº®ÉÔ¡A¤@¸I¨ìnŪ Private Key ªº¦øªA¾¹µ{¦¡¡A³£·|°±¤U¨Óµ¥Áä½L¿é¤J±K½X¡Cn¬O©ñ°²¨S¤H¡A©Î ¦øªA¾¹©ñ¦b IDC ¾÷©Ð¡A±q»·ºÝ«¶}¾÷©Î Crash «á¦Û¦æ«¶}¾÷¡A «o·í¦b¨ºùص¥Áä½LºV±K½X¡A¶}¤£¤F¾÷¡A¨º´N¤£¦nª±¤F¡C
# »s§@ RSA[14] Private Key openssl genrsa -des3 -out ~/etc/ssl/private/myrootca.key 2048 chmod og-rwx ~/etc/ssl/private/myrootca.key
¾ÌÃҥӽЮѡA¬O§â©pªº¸ê®Æ¡A©M³oÓ Public Key §¨¦b¤@°_¡A¥H«K»{ÃÒ¤¤¤ß ¼f®Ö¡Añ¤Wñ¦W¥Îªº¡C©Ò¥H³oÓ¨BÆJ¡A·|°Ý©p³oÓ Key ªº¬ÛÃö¸ê®Æ¡A¥]¬A°ê®a ¡B«°¥«¡B³æ¦ì¦WºÙ¡B³¡ªù¦WºÙ¡B¾ÌÃÒ¦WºÙ¡BÁpµ¸¤Hªº«H½c¡A¥H¤Î¥Ó½Ðªº®Ä´Áµ¥ µ¥¡C½Ð¤@¤@¶ñ¼g¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O¾ÌÃÒ¡H¡v¡C
Y¤£ª¾¦p¦ó¶ñ¼g¡A½Ð°Ñ¾\¡u¦p¦ó¶ñ¼g¾ÌÃҥӽЮѡv¡C
Y©pnª½±µ¥Î³Ì°ª¼h»{ÃÒ¤¤¤ß¨Óª½±µ·í¾ÌÃҥΡA¾ÌÃÒ¦WºÙ (Common Name) ½Ð¥Î¦øªA¾¹ªº¥þ¦W (www.abc.com) ¡C¸Ô±¡½Ð°Ñ¦Ò¡u¨ä¦o SSL/X.509 ¾ÌÃÒªº°µªk¡v¡C
# ¶ñ¼g¾ÌÃÒ¥Ó½Ð®Ñ openssl req -new -key ~/etc/ssl/private/myrootca.key -out ~/tmp/myrootca.req
³Ì°ª¼h»{ÃÒ¤¤¤ß¦]¬°¨S¦³¤W¯Å¤F¡A¨S¦³¤H¯àµ¹¥¦Ã±¦W¡A¥u¯à¦Û¤vµ¹¦Û¤vñ¦W ¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O³Ì°ª¼h»{ÃÒ¤¤¤ß¡H¡v¡C
³Ì°ª¼h»{ÃÒ¤¤¤ß³Ì¦n¥Ã»·¤£n¹L´Á¡Cn¬O¹L´Á«Ã±¡A©Ò¦³ì¨Ó¥¦Ã±µoªº¾ÌÃÒ ¤]³£n«Ã±¡A©Ò¦³ SSL µ{¦¡¤]³£n«·s³]©w¡C©Ò¥H§Ú̮ĴÁñ 7305 ¤Ñ¡]¤j¬ù 20¦~¡^¡CY¤£³]®Ä´Áªº¸Ü¡A¹w³]¬O 30 ¤Ñ¡]¤@Ó¤ë¡^¡C
ñ§¹¾ÌÃÒ¡A¾ÌÃҥӽЮѴN¤£¥Î¤F¡A¥i¥H§R±¼¡C
# ¦Û¤vµ¹¦Û¤vñ¦W openssl x509 -req -days 7305 -sha1 \ -extfile ~/etc/ssl/openssl.cnf -extensions v3_ca \ -signkey ~/etc/ssl/private/myrootca.key \ -in ~/tmp/myrootca.req -out ~/etc/ssl/certs/myrootca.crt # §R°£¾ÌÃÒ¥Ó½Ð®Ñ rm -f ~/tmp/myrootca.req
³o¼Ë´N¦n¤F¡C Private Key ¦b ~/etc/ssl/private/myrootca.key ¡A¦Û¤vñ¦Wªº Public Key ¾ÌÃÒ¦b ~/etc/ssl/certs/myrootca.crt ¡C myrootca.key ¬O Private Key ¡An¤p¤ß¦s¦n«O Å@¡A¥u¦³¦Û¤v¤~¯àŪ¡AÅv«ØÄ³ 0400 ¡C myrootca.crt ¬O Public Key ¾ÌÃÒ¡An¾¨¶q´²¥X¥h ¡AÅý¤j®a¥Î¡C³Ì¦n©ñ¨ìºô¯¸¤W¡AÅý¤j®a¦Û¤v¤U¸ü¡A¦Û¤v¥[¶i¥h¡C
°²³]©pn°µ myhost ªº¾ÌÃÒ¡G
³oùاṴ́µ¤@¤ä·sªº Private Key ¡C Public Key ¥i¥Ñ Private Key ±À±o ¡A©Ò¥H¤£¥Î¯S§O¥h°µ¡C
# »s§@ RSA Private Key openssl genrsa -out ~/etc/ssl/private/myhost.key 2048 chmod og-rwx ~/etc/ssl/private/myhost.key
¾ÌÃҥӽЮѡA¬O§â©pªº¸ê®Æ¡A©M³oÓ Public Key §¨¦b¤@°_¡A¥H«K»{ÃÒ¤¤¤ß ¼f®Ö¡Añ¤Wñ¦W¥Îªº¡C©Ò¥H³oÓ¨BÆJ¡A·|°Ý©p³oÓ Key ªº¬ÛÃö¸ê®Æ¡A¥]¬A°ê®a ¡B«°¥«¡B³æ¦ì¦WºÙ¡B³¡ªù¦WºÙ¡B¾ÌÃÒ¦WºÙ¡BÁpµ¸¤Hªº«H½c¡A¥H¤Î¥Ó½Ðªº®Ä´Áµ¥ µ¥¡C³oùؾÌÃÒ¦WºÙ (Common Name) n¥Î¦øªA¾¹ªº¥þ¦W (www.abc.com) ¡A¨ä¦o ½Ð¤@¤@¶ñ¼g¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O¾ÌÃÒ¡H¡v¡C
Y¤£ª¾¦p¦ó¶ñ¼g¡A½Ð°Ñ¾\¡u¦p¦ó¶ñ¼g¾ÌÃҥӽЮѡv¡C
# ¶ñ¼g¾ÌÃÒ¥Ó½Ð®Ñ openssl req -new -key ~/etc/ssl/private/myhost.key -out /tmp/myhost.req
¦øªA¾¹¾ÌÃÒªº®Ä´Á¨ä¹êµL©Ò¿×¡A¹L´Á«Ã±¤@±i´N¦n¤F¡C SSL µ{¦¡»{ªº¬O»{ÃÒ¤¤¤ß¡A¤£¬O¾ÌÃÒ¡A©Ò¥H¾ÌÃÒñ¤F´N·|¥Í®Ä¡A¤£¥Î¥h³]©w SSL µ{¦¡¡C¤£¹L¬°§K«Ã±ªº³Â·Ð¡A§Ú̮ĴÁÁÙ¬Oñ 3650 ¤Ñ¡]¤j ¬ù¤Q¦~¡^¡C
ñ§¹¾ÌÃÒ¡A¾ÌÃҥӽЮѴN¤£¥Î¤F¡A¥i¥H§R±¼¡C
# ñµo¾ÌÃÒ openssl x509 -req -days 3650 -sha1 \ -extfile ~/etc/ssl/openssl.cnf -extensions v3_req \ -CA ~/etc/ssl/certs/myrootca.crt -CAkey ~/etc/ssl/private/myrootca.key \ -CAserial ~/etc/ssl/myrootca.srl -CAcreateserial \ -in /tmp/myhost.req -out ~/etc/ssl/certs/myhost.crt # §R°£¾ÌÃÒ¥Ó½Ð®Ñ rm -f /tmp/myhost.req
³o¼Ë´N¦n¤F¡C[16] Private Key ¦b ~/etc/ssl/private/myhost.key ¡An¤p¤ß¦s¦n«OÅ@¡A¥u¦³¦Û¤v¤~¯àŪ¡A«ØÄ³Åv¬° 0400 ¡F Public Key ¾ÌÃÒ¦b ~/etc/ssl/certs/myhost.crt ¡An¾¨¶q´²¥X¥h ¡AÅý¤j®a¥Î¡C³o²Õ Public/Private Key ¾ÌÃÒ¥i¥H°µ¬° myhost ªº SSL ¾ÌÃÒ¡A¥Î¦b HTTPS ©Î POP3S/TLS/SSL ¤W¡C
±`¨£ªº SSL ³q°T¤è¦¡¦³¨âºØ¡G¤@ºØ¬O¶Ç²Îªº SSL ¡A¤@ºØ¬O·sªº TLS ¡C
¶Ç²Îªº SSL ¡A¤@³s¤W¦øªA¾¹¡A´N¶i¤J SSL ¡A ¥þµ{¥[±K¡C³o¼Ë°µ¦³¤@Ó¯ÊÂI¡G¬°¤F¤£Åý¨Ï¥ÎªÌµ{¦¡²V²c¡An§â SSL ¶}¦b¥t¥~¤@Ó TCP °ð¡AÁÙn³]©w¨Ï¥ÎªÌªºµ{ ¦¡¡A§ï³s¨ì SSL ªº¨ºÓ TCP °ð¥h¡C HTTP ©M HTTPS ªº¤è¦¡´N¬O³o¼Ë¡C
·sªº TLS ¡A«h¬O¦b¨Ï¥ÎªÌµ{¦¡³s¤W¦øªA¾¹«á¡A¤U STARTTLS «ü¥O¡A¦pªG¦øªA¾¹¦³ SSL ¡A´N·|¶i¤J SSL ¡AÂù¤è¶}©l¥[±K¡F¦pªG¦øªA¾¹¨S¦³ SSL ¡A·| ¦^³øµ¹¨Ï¥ÎªÌµ{¦¡¡AÂù¤è«öì¨Óªº¤è¦¡Ä~Äò³s½u¡C³o¼Ë°µªº¦n³B¬O¡A¨Ï¥ÎªÌµ{ ¦¡¤£¥Î§ï³]³s±µ°ð¡A¥i¥H¦Û°Ê¤Á´«¡A¬Û®e©Ê°ª¡A¤]¤£¥Î¬°¤F SSL ¡A¦h¶}¤@Ó TCP °ð¡C¦ý TLS ªº¯ÊÂI«h¬O¡A´Nºâ ¤£°µ SSL ¡AÁÙ¥i¥H°h¦^ì¨Óªº¤è¦¡Ä~Äò³s½u¡A¨º SSL µ{¦¡¬d®Ö¾ÌÃÒñ¦Wªº¤u§@¡A¦³°µµ¥©ó¨S°µ¡C¥u¦³³s½u¥[±Kªº ªºÀuÂI¦Ó¤w¡AµLªk¯u¥¿¬dÃÒ¦øªA¾¹ªº¨¥÷¡C SMTP ´N¬O¤@Ó¨Ò¤l¡C
¥H¤U¨Ì¤£¦Pªº³q°T¨ó©w¡A¤À§O°Q½×¡C
HTTP ¬O³Ì¦¥Î SSL ªº³q°T¨ó©w¡C Netscape ·íªì¬O¬°¤F¥[±K HTTP ¡A°µ¦w¥þºô¸ô¥æ©ö¡A¤~³]p¤F SSL ¡A¶}¤@Ó·sªº TCP °ð 443 µ¹¥¦±M¥Î¡A¨ú ¦W¬° HTTPS ¡A©µ¥Î¦Ü¤µ¡C¦]¦¹¡A HTTP ªº SSL ¥Îªº¬O¶Ç²Îªº¤è¦¡¡A¨S¦³ TLS ¡An¶} HTTPS(443) ¡C
Apache n°µ HTTPS ¡A¥i¥H·f°t Apache-SSL ¡A©Î·f°t mod_ssl ¡C½Ð°Ñ¦Ò¦U¦Ûªº³]©w»¡©ú¡C
nª`·Nªº¬O¡A¤@Ó Apache ¥u¯à°O¤@²Õ¾ÌÃÒ¡A¦Ó¾ÌÃÒ¤W¦³¦øªA¾¹ ªº¥þ¦W¡AÂsÄý¾¹·|¥Î¨Ó®Ö¹ïºô¯¸¯¸¦W¡A©Ò¥H¤@Ó Apache ¡A¤]¥u¯à¬[¤@Ó SSL ¯¸¡A¥Î¤@Ó¯¸¦W¡C°£«D©p¶]«Ü¦h¥÷ Apache ¡A¦U¦Û¶]¦b¤£ ¦Pªº IP ©Î¤£¦Pªº TCP °ð¤W¡A¤~¯à¦b¦P¤@»O¦øªA ¾¹¤W¡A¶]¦n´XÓ SSL ¯¸¡C
¥H mod_ssl ¨Ó»¡¡A¦w¸Ë¦n«á¡A httpd.conf ³]©wÁ|¨Ò¦p¤U¡G
...... ## mod_ssl.c: mod_ssl °ò¥»³]©w <IfModule mod_ssl.c> Listen 443 AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl SSLSessionCache dbm:/var/log/apache/ssl_scache SSLSessionCacheTimeout 300 SSLPassPhraseDialog builtin SSLMutex file:/var/log/apache/ssl_mutex SSLRandomSeed startup builtin SSLRandomSeed connect builtin SSLLog /var/log/apache/ssl_engine_log SSLLogLevel info SSLCipherSuite ALL:!ADH:!EXP56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL SSLCertificateFile /etc/ssl/certs/myhost.crt SSLCertificateKeyFile /etc/ssl/private/myhost.key <VirtualHost *:443> SSLEngine on </VirtualHost> </IfModule> ......
³]¦n«á¡AÀˬd¬Ý httpd.conf ¦³¨S¦³³]¿ù¡G
httpd -t
n¬O¨S¦³°ÝÃD¡A«¶} httpd ¡A SSL ºô¯¸´N¶} ¶]¤F¡C
POP3 ¥i¥H¶]¨âºØ¤è¦¡¡G¶Ç²Î¥Î POP3S(995) °ð±M¶] SSL ¡A©Î¬O¥Î TLS ¡A¦bì¨Óªº POP3(110) ¤W¡A¥[¤W STARTTLS ªº¥\¯à¡C
n¦w¸Ë Qpopper ¡A½Ð°Ñ ¦Ò Qpopper ªº»¡©ú¤å¥ó¡C
Qpopper ¥i¥H°µ POP3S(995) ¡A¤]¥i¥H¦b POP3(110) ¤W°µ TLS ¡CµM¦Ó¡A¤@Ó Qpopper ¥u ¯à¶}¤@Ó TCP °ð¡A¥Î¤@ºØ¤è¦¡¶]¡C¦pªGn¦P®É°µ POP3S(995) ©M POP3(110)/TLS ¡A n¶]¨â¥÷ Qpopper¡A¦U¦Û¥Î¤£¦Pªº³]©wÀÉ¡C
³]©w /etc/qpopper.conf ¦p¤U¡G
# qpopper.conf: Qpopper POP3(110)/TLS ªº³]©wÀÉ set clear-text-password = always set statistics = true set tls-support = stls set tls-private-key-file = /etc/ssl/private/myhost.key set tls-server-cert-file = /etc/ssl/certs/myhost.crt
³]©w /etc/qpopper-s.conf ¦p¤U¡G
# qpopper-s.conf: Qpopper POP3S(995) ªº³]©wÀÉ set clear-text-password = tls set statistics = true set tls-support = alternate-port set tls-private-key-file = /etc/ssl/private/myhost.key set tls-server-cert-file = /etc/ssl/certs/myhost.crt
µM«á¥Î root ªºÅv¡A¤À§O°õ¦æ¡G
popper -f /etc/qpopper.conf popper 995 -f /etc/qpopper-s.conf
³o¼Ë´N¥i¥H¤F¡C¬d¬Ý¡G
ps ax | grep popper
©p·|¬Ý¨ì¦³¨âÓ popper ¡A¥Î¤£¦Pªº°Ñ¼Æ¦b¶]¡C¬d¬Ý¡G
netstat -ap | grep popper
©p·|¬Ý¨ì¨âÓ popper ¡A¤À§O¦b POP3(110) ©M POP3S(995) ¨âÓ TCP °ð¤W¡C
SMTP ¬°¤FÅý¶l¥ó¦øªA¾¹¶¡¦¬µo«H®É¡A©¼¦¹¬Û®e¡A©Ò¥H¥Î TLS ¡A¤£¥t¶} TCP °ð¡C
¬°Åý¶l¥ó¾¨¶q¬y³q¡A¤£n±¼«H¡A Sendmail ¯à¥[±K´N¥[±K¡A¤£·|¬d®Ö¹ï¤èªº ¾ÌÃÒ¡C§ó¦óªp¡A¦b TLS ¤U¡A¬d®Ö¹ï¤èªº¾ÌÃÒ¡A¤]¨S¤°»ò·N¸q¡C
n³]©w Sendmail ¨Ï¥Î SSL ¡A½sĶ Sendmail ®É¡An¦b devtools/Site/site.config.m4 ÀÉ¡A¥[¤J¤U¦C³o´X¦æ¡G
# STARTTLS - ¥[¤J SSL/TLS ¥\¯à APPENDDEF(`conf_sendmail_ENVDEF', `-DSTARTTLS') APPENDDEF(`conf_sendmail_LIBS', `-lssl -lcrypto')
½sĶ¡B¦w¸Ë¡G
# ½sĶ Sendmail ./Build # ¦w¸Ë Sendmail make install
±µ¤U¨Ón³]©w Sendmail ªº³]©wÀÉ /etc/mail/sendmail.cf ¡C¦pªG©p¬O¥Î m4 ¨Ó°µ³]©wÀÉ¡A¦b m4 ÀÉ config.mc ¤¤¥[¤J¤U ¦C´X¦æ¡G
dnl Sendmail STARTTLS SSL/TLS ³]©w define(`confCACERT_PATH', `/etc/ssl/certs/') define(`confCACERT', `/etc/ssl/certs/myrootca.crt') define(`confSERVER_CERT', `/etc/ssl/certs/myhost.crt') define(`confSERVER_KEY', `/etc/ssl/private/myhost.key') define(`confCLIENT_CERT', `/etc/ssl/certs/myhost.crt') define(`confCLIENT_KEY', `/etc/ssl/private/myhost.key')
«°µ³]©wÀÉ¡G
m4 m4/cf.m4 config.mc > config.cf cp -f config.cf /etc/mail/sendmail.cf
µM«á«¶} Sendmail ¡C³o¼Ë Sendmail SMTP ´N¥i¥H¶}©l°µ SSL/TLS ¤F¡C
¤£¹L³]©wÁÙ¨Sµ²§ô¡C
Sendmail ¦Û 8.12.1 ª©¥H«á¡A¬°¥[±j¦w¥þ©Ê¡A±N¦øªA¾¹©M¨Ï¥ÎªÌµ{¦¡¤À¶} ¡C¦øªA¾¹µ{¦¡¦]¬°n¶]¦b§C©ó 1024 ªº SMTP(25) °ð¡AÁÙ¬On¥Ñ root ¨Ó±Ò°Ê¡A¥H root ªºÅv¨Ó°õ¦æ¡C¨Ï¥ÎªÌµ{ ¦¡«h¤£¦A setuid root ¡A§ï¦¨ setgid smmsp ¡A ¥Î smmsp ¸s²ÕªºÅv°õ¦æ¡A¦A¥Î SMTP ³s½u¨ì¦ø ªA¾¹µ{¦¡µo«H¡C
Sendmail ¦øªA¾¹µ{¦¡¦]¬°¦³ root ªºÅv¡AnŪ Private Key ¤£¬O°ÝÃD¡C¥i¬O¡A Sendmail ¨Ï¥ÎªÌµ{¦¡²{¦b¨S¦³¤F root ªºÅv¡Aµo«Hªº®ÉÔ¡A´NŪ¤£¨ì§Ú̦øªA¾¹ªº Private Key ¤F¡C«ç»ò¿ì¡H
§Ṳ́£nÅý Sendmail setuid-root ¡A¤]¤£n¶}©ñ¦øªA¾¹ Private Key ªºÅv¡C§ÚÌ¥i¥H¥t¥~°µ¤@²Õ¥u¦³ smmsp ¸s²ÕŪ ±o¨ìªº¾ÌÃÒ¡Aµ¹ Sendmail ªº¨Ï¥ÎªÌµ{¦¡±M¥Î¡G
# ³]©w¥Ø¿ý mkdir -p /etc/mail/private chgrp smmsp /etc/mail/private chmod o-rwx /etc/mail/private mkdir -p /etc/mail/certs # »s§@ RSA Private Key openssl genrsa -out /etc/mail/private/myhost-msp.key 2048 chgrp smmsp /etc/mail/private/myhost-msp.key chmod o-rwx /etc/mail/private/myhost-msp.key # ¶ñ¼g¾ÌÃÒ¥Ó½Ð®Ñ openssl req -new -key /etc/mail/private/myhost-msp.key \ -out /tmp/myhost-msp.req # ñµo¾ÌÃÒ openssl x509 -req -days 3650 -sha1 \ -extfile /etc/ssl/openssl.cnf -extensions v3_req \ -CA /etc/ssl/certs/myrootca.crt -CAkey /etc/ssl/private/myrootca.key \ -CAserial /etc/ssl/myrootca.srl -CAcreateserial \ -in /tmp/myhost-msp.req -out /etc/mail/certs/myhost-msp.crt # §R°£¾ÌÃÒ¥Ó½Ð®Ñ rm -f /tmp/myhost-msp.req
µM«á³]©w m4 ÀÉ submic.mc ¦p¤U¡G
...... dnl Sendmail STARTTLS SSL/TLS support define(`confCACERT_PATH', `/etc/ssl/certs') define(`confCACERT', `/etc/ssl/certs/myrootca.crt') define(`confCLIENT_CERT', `/etc/mail/certs/myhost-msp.crt') define(`confCLIENT_KEY', `/etc/mail/private/myhost-msp.key') define(`confDONT_BLAME_SENDMAIL', `GroupReadableKeyFile') ......
«°µ³]©wÀÉ¡G
m4 m4/cf.m4 submit.mc > submit.cf cp -f submit.cf /etc/mail/submit.cf
³o¼Ë´N¥i¥H¤F¡C³o¤£¬O³]©w Sendmail ¦øªA¾¹µ{¦¡¡A¤£¥Î«¶} Sendmail ¡C ^_*' ©p¥i¥H±H¤@«Ê«Hµ¹¦Û¤v¡AµM«á¬Ý¬Ý¨t²Î¶l¥ó°O¿ý maillog ¡A¦³¨S¦³¦¨¥\ ¨Ï¥Î SSL ¡C
...... Sep 14 04:19:24 rinse sendmail[12093]: STARTTLS=client, relay=localhost.localdom ain., version=TLSv1/SSLv3, verify=OK, cipher=EDH-RSA-DES-CBC3-SHA, bits=168/168 ......
¦³¨Ç§@·~¨t²Î¡A³]¦³¨t²Î¤½¥Îªº¾ÌÃÒ®w¡A§â»{±oªº¾ÌÃÒ¡B»{ÃÒ¤¤¤ß©ñ¦b¤@°_ ¡C§Ú̧â§Ú̦ۻsªº»{ÃÒ¤¤¤ß¡A¥[¶i¨t²Î¤½¥Îªº¾ÌÃÒ®w¡A¨Ï¥Î³oÓ¾ÌÃÒ®wªºµ{ ¦¡¡A´N¥i¥H¬d±o¨ì¤F¡C
MS-WINDOWS ³]¦³¦@¥Îªº¾ÌÃÒ®w¡C±q [±±¨î¥x] ¶i¥h¡Aùر¦³ [ºô»Úºô¸ô¿ï¶µ] ¡]©Î [Internet ¿ï¶µ] ¡^¡C¦b ¤W±ÂI¨â¤U¡A·|¥´¶}¤@Ó[ºô»Úºô¸ô ¤º®e] ¡]©Î [Internet ¤º®e] ¡^ªºµøµ¡¡C¦b [¤º®e] ¨º¤@¶ ùØ¡A¤¤¶¡¦³¤@°Ï [¾ÌÃÒ] ¡Aùر¦³¤@Ó [¾ÌÃÒ(C)...] ªº«ö¶s¡C«ö¤@¤U¨ºÓ«ö¶s¡A·|¥´¶}¤@Óµøµ¡¡A¼Ð ÃD¬O [¾ÌÃÒ] ¡C³oùØ´N¬O MS-WINDOWS ºÞ²z¾ÌÃÒªº¦a¤è¡C[17]
n¥[¶i§Ú̪º³Ì°ª¼h»{ÃÒ¤¤¤ß¡A±N§Ú̪º³Ì°ª¼h»{ÃÒ¤¤¤ß myrootca.crt ½Æ»s¨ì WINDOWS ¤W¡CÂI¨â¤U¥´¶} myrootca.crt ¡A·|¸õ¥X¤@Ó [¾ÌÃÒ] ªºµøµ¡¡Aùر·|¦C¥X¾ÌÃÒªº¤º®e¡C«ö¤U±ªº [¦w¸Ë¾ÌÃÒ]«ö¶s¡A ·|¶]¥X¤@Ó [¾ÌÃÒºÞ²zû¶×¤JºëÆF] ¡C¤@ª½«ö [¤U¤@¨B] ¡A´N·|¥[¶i¥h¤F¡C
§Ú©Òª¾¹D¡A·|¨Ï¥Î¨t²Î¾ÌÃÒ®wªº WINDOWS µ{¦¡¡A¦³ Internet Exporer ¡B Outlook Express ¡B Outlook ¡B Symantec pcAnywhere ¡C¥un§â§Ú̦ۻsªº »{ÃÒ¤¤¤ß¥[¶i¨Ó¡A³o¨Çµ{¦¡³£¥i¥H¥Î±o¨ì¡C
Mozilla »P Netscape 6 ¥H«áªºª©¥»¡A¦³¤@ÓÂsÄý¾¹©M¶l¥óµ{¦¡¦@¥Îªº¾ÌÃÒ ®w¡C±q¤u¨ã¦C¤Wªº [½s¿è(E)] ¡B [Ó¤H¥\¯à³]©w(E)] ¶i¥h«á¡A·|¸õ¥X [¥\¯à³]©w] ªºµøµ¡¡C®i¶}µøµ¡¥ªÃ䪺 [Ó¤H¤Î¦w¥þ³]©w] ¡AÂI¿ïùرªº [»{ÃÒ] ¡A¥kÃ䪺¼ÐÃD·|¤Á´«¦¨ [»{ÃÒ] ¡A¤¤¶¡·| ¦³¤@Ó [ºÞ²z»{ÃÒ...] ªº«ö¶s¡C«ö¤U«ö¶s¡A·|¦A¸õ¥X¤@Ó [»{ÃÒºÞ²zû] ªºµøµ¡¡C³oùØ´N¬O Mozilla »P Netscape ºÞ²z¾Ì ÃÒªº¦a¤è¡C[18][19]
n¥[¶i§Ú̪º³Ì°ª¼h»{ÃÒ¤¤¤ß¡A±N§Ú̪º³Ì°ª¼h»{ÃÒ¤¤¤ß myrootca.crt ©ñ¨ìºô¯¸¤W¡A¥Î Mozilla/Netscape ±q web ³s¨ì¸Óºô§}«á¡A·|¥X²{¤@Ó [¤U¸ü»{ÃÒ¤¤] ªºµøµ¡¡C¦b [«H»{¦¹»{ÃÒ¥HÃѧOºô¯¸] ¡B [«H»{¦¹»{ÃÒ¥HÃѧO¶l¥ó¥Î¤á] ¡B [«H»{¦¹»{ÃÒ¥HÃѧO³nÅé»s³y°Ó] ¤TÓ¿ï¶µ¤W³£¥´¤Ä¡AµM«á«ö [½T©w] ¡A´N·|¥[¶i¥h¤F¡C
¦pªG©p¥Îªº¬O MS-WINDOWS ¤Uªº Mozilla/Netscape ¡A©p¤]¥i¥H§â³Ì°ª¼h»{ ÃÒ¤¤¤ß½Æ»s¨ì WINDOWS ¤W¡Aºô§}¦Cª½±µ¥´¤WÀɮ׸ô®|¡A¤]¥i¥H§â¥¦¥[¶i¥h¡C
¦b Mozilla/Netscape ÂsÄý¾¹¥[¶i¨Óªº»{ÃÒ¤¤¤ß¡A¤]·|¥Î¦b Mozilla «H¥ó ©Î Netscape Mail & Newsgroups ùØ¡A¨Ó¬d®Ö¾ÌÃÒ¡C
Internet Explorer ¨Ï¥Î WINDOWS ¨t²Îªº¾ÌÃÒ®w¡A©p¥un§â»{ÃÒ¤¤¤ß¥[¶i ¨t²Îªº¾ÌÃÒ®w´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦Ò¡u³]©w MS-WINDOWS¡v¡C
Opera ºI¦Ü¥Ø«e¬°¤î (6.05) ¡A¥u¤ä´© RSA ¡A¤£¤ä´© DSA ¡C¦]¦¹¡A¥u¯à¶×¤J RSA »{ÃÒ¤¤¤ß¡A¤£¯à¶×¤J DSA »{ÃÒ¤¤¤ß¡C
¥´¶} Opera ¡A±q¤u¨ã¦C¤Wªº [ÀÉ®×(F)] ¡B [¥\¯à³]©w(R)...] ¶i¥h«á¡A·|¥´¶} [¥\¯à³]©w] ªºµøµ¡¡C¦bµøµ¡¥ªÃ䪺¿ï³æ¤¤¡A¿ï³Ì¤U±ªº [¦w¥þ©Ê] ®É¡A¥k¤W ¨¤·|¥X²{ [»{ÃÒ¾÷ºc(A)...] ªº«ö¶s¡C«ö¤U«ö¶s¡A·|¦A¥´¶} [»{ÃÒ¾÷ºc] ªºµøµ¡¡C«ö¤@¤U¥k¤W¨¤ªº [¶×¤J(I)...] «ö¶s¡A§ä¨ì§Ú̪º³Ì°ª¼h»{ÃÒ¤¤¤ß¡A«ö [¶}±Ò] ¡A´N·|¥[¶i¥h¤F¡C
Lynx ºI¦Ü¥Ø«e¬°¤î (2.8.4) ¡A¤£·|Àˬd¦øªA¾¹ªº SSL ¾ÌÃÒ¡C
n³]©w¨Ï¥Î SSL ¦¬«H¡A±Ò°Ê Mozilla «H¥ó»P News ©Î Netscape Mail & Newsgroups «á¡A¥Ñ¤u¨ã¦C¤Wªº [½s¿è(E)] ¡B [«H¥ó»P News ±b¸¹³]©w(M)...] «ö¤U¥h¡A·|¥´¶}¤@Ó [«H¥ó»P News ±b¸¹³]©w] ªºµøµ¡¡C¦b¥ªÃä ¿ï¾Ü©pn³]©wªº±b¸¹¤Uªº [¦øªA¾¹³]©w] ¡Cµøµ¡¥kÃ䪺 [¦øªA¾¹¦WºÙ¡G] ¤¤¡An¶ñ¤W POP3 ¶l¥ó¦øªA¾¹ªº §¹¾ã¦WºÙ¡C¦b¥k¤U¤è [¦øªA¾¹³]©w] ùتº [¨Ï¥Î SSL ¦w¥þ³s½u] ¿ï¶µ¤W¥´¤Ä¡AµM«á«ö [½T©w] ¡C³o¼Ë´N·|¥Î SSL ¦¬«H¤F¡C
n³]©w¨Ï¥Î SSL ±H«H¡A±Ò°Ê Mozilla «H¥ó»P News ©Î Netscape Mail & Newsgroups «á¡A¥Ñ¤u¨ã¦C¤Wªº [½s¿è(E)] ¡B [«H¥ó»P News ±b¸¹³]©w(M)...] «ö¤U¥h¡A·|¥´¶}¤@Ó [«H¥ó»P News ±b¸¹³]©w] ªºµøµ¡¡C¦b¥ªÃä ¿ï¾Ü [SMTP ¥~±H¶l¥ó¦øªA¾¹] ¡A¥kÃä¼ÐÃD·|Åܦ¨ [SMTP ¥~°e¶l¥ó¦øªA¾¹³]©w] ¡C¥kÃ䤤¶¡¦³¤@Ó [¨Ï¥Î SSL ¦w¥þ³s½u] ¡A¿ï [Y¥i¥H®É] ¡CµM«á «ö [½T©w] ¡C³o¼Ë´N·|¥Î SSL ±H«H¤F¡C
¾ÌÃÒ¬d®Öªº³¡¥÷¡AMozilla «H¥ó»P News ©Î Netscape Mail & Newsgroups ¨Ï¥Î Mozilla ©Î Netscape 6 ªº¾ÌÃÒ®w¡A©p¥un§â»{ÃÒ¤¤¤ß¥[¶i Mozilla ©Î Netscape 6 ´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦ÒMozilla »P Netscape 6 ªº³]©w¡C
Netscape 4 ¤Î§ó¦ªºª©¥»¤£¤ä´© SSL ¡C
n³]©w¨Ï¥Î SSL ¦¬«H¡A±Ò°Ê Outlook Express «á¡A¥Ñ¤u¨ã ¦C¤Wªº [¤u¨ã(T)] ¡B [±b¤á(A)...] «ö¤U¥h¡A·| ¥´¶}¤@Ó [ºô»Úºô¸ô±b¤á] ªºµøµ¡¡C¦bµøµ¡¥ªÃä¿ï¾Ün³]©wªº±b ¸¹¡AµM«á«ö¤U¥kÃ䪺 [¤º®e(P)] «ö¶s¡A·|¥´¶}¥t¤@Ó [¬Y¬Y¬Y ¤º®e] ªºµøµ¡¡C«ö¤@¤U¤W¤èªº [¦øªA¾¹] ¡A½¨ì [¦øªA¾¹] ¨º¤@¶¡C¦b [¤º°e¶l¥ó - POP3(I):] ¤¤¡An¶ñ¤W POP3 ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C ¦A«ö¤@¤U¤W¤èªº[¶i¶¥] ¡A½¨ì [¶i¶¥] ¨º¤@¶¡C ¦b [¤º°e¶l¥ó - POP3(I):] ¤U±ªº [³oÓ¦øªA¾¹»Ýn¦w ¥þ³s½u - SSL(C)] ªº¿ï¶µ¤W¥´¤Ä¡CµM«á«ö [½T©w] ¡B [Ãö³¬] ¡C³o¼Ë´N·|¥Î SSL ¦¬«H¤F¡C
n³]©w¨Ï¥Î SSL ±H«H¡A±Ò°Ê Outlook Express «á¡A¥Ñ¤u¨ã ¦C¤Wªº [¤u¨ã(T)] ¡B [±b¤á(A)...] «ö¤U¥h¡A·| ¥´¶}¤@Ó [ºô»Úºô¸ô±b¤á] ªºµøµ¡¡C¦bµøµ¡¥ªÃä¿ï¾Ün³]©wªº±b ¸¹¡AµM«á«ö¤U¥kÃ䪺 [¤º®e(P)] «ö¶s¡A·|¥´¶}¥t¤@Ó [¬Y¬Y¬Y ¤º®e] ªºµøµ¡¡C«ö¤@¤U¤W¤èªº [¦øªA¾¹] ¡A½¨ì [¦øªA¾¹] ¨º¤@¶¡C¦b [¥~±H¶l¥ó - SMTP(U):] ¤¤¡An¶ñ¤W SMTP ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C ¦A«ö¤@¤U¤W¤èªº[¶i¶¥] ¡A½¨ì [¶i¶¥] ¨º¤@¶¡C ¦b [¤º°e¶l¥ó - SMTP(O):] ¤U±ªº [³oÓ¦øªA¾¹»Ýn¦w ¥þ³s½u - SSL(Q)] ªº¿ï¶µ¤W¥´¤Ä¡CµM«á«ö [½T©w] ¡B [Ãö³¬] ¡C³o¼Ë´N·|¥Î SSL ±H«H¤F¡C
¾ÌÃÒ¬d®Öªº³¡¥÷¡A Outlook Express 6 ¨Ï¥Î WINDOWS ¨t²Îªº¾ÌÃÒ®w¡A©p¥u n§â»{ÃÒ¤¤¤ß¥[¶i¨t²Îªº¾ÌÃÒ®w´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦Ò¡u³]©w MS-WINDOWS¡v¡C
n³]©w¨Ï¥Î SSL ¦¬«H¡A±Ò°Ê Outlook Express «á¡A¥Ñ¤u¨ã ¦C¤Wªº [¤u¨ã(T)] ¡B [±b¸¹(A)...] «ö¤U¥h¡A·| ¥´¶}¤@Ó [Internet ±b¸¹] ªºµøµ¡¡C¦bµøµ¡¥ªÃä¿ï¾Ün³]©wªº ±b¸¹¡AµM«á«ö¤U¥kÃ䪺 [¤º®e(P)] «ö¶s¡A·|¥´¶}¥t¤@Ó [¬Y¬Y¬Y ¤º®e] ªºµøµ¡¡C«ö¤@¤U¤W¤èªº [¦øªA¾¹] ¡A½¨ì [¦øªA¾¹] ¨º¤@¶¡C¦b [¤º°e¶l¥ó - POP3(I):] ¤¤¡An¶ñ¤W POP3 ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C ¦A«ö¤@¤U¤W¤èªº[¶i¶¥] ¡A½¨ì [¶i¶¥] ¨º¤@¶¡C ¦b [¤º°e¶l¥ó - POP3(I):] ¤U±ªº [³oÓ¦øªA¾¹»Ýn¦w ¥þ³s½u - SSL(C)] ªº¿ï¶µ¤W¥´¤Ä¡CµM«á«ö [½T©w] ¡B [Ãö³¬] ¡C³o¼Ë´N·|¥Î SSL ¦¬«H¤F¡C
n³]©w¨Ï¥Î SSL ±H«H¡A±Ò°Ê Outlook Express «á¡A¥Ñ¤u¨ã ¦C¤Wªº [¤u¨ã(T)] ¡B [±b¸¹(A)...] «ö¤U¥h¡A·| ¥´¶}¤@Ó [Internet ±b¸¹] ªºµøµ¡¡C¦bµøµ¡¥ªÃä¿ï¾Ün³]©wªº ±b¸¹¡AµM«á«ö¤U¥kÃ䪺 [¤º®e(P)] «ö¶s¡A·|¥´¶}¥t¤@Ó [¬Y¬Y¬Y ¤º®e] ªºµøµ¡¡C«ö¤@¤U¤W¤èªº [¦øªA¾¹] ¡A½¨ì [¦øªA¾¹] ¨º¤@¶¡C¦b [¥~±H¶l¥ó - SMTP(U):] ¤¤¡An¶ñ¤W SMTP ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C ¦A«ö¤@¤U¤W¤èªº[¶i¶¥] ¡A½¨ì [¶i¶¥] ¨º¤@¶¡C ¦b [¥~±H¶l¥ó - SMTP(O):] ¤U±ªº [³oÓ¦øªA¾¹»Ýn¦w ¥þ³s½u - SSL(Q)] ªº¿ï¶µ¤W¥´¤Ä¡CµM«á«ö [½T©w] ¡B [Ãö³¬] ¡C³o¼Ë´N·|¥Î SSL ±H«H¤F¡C
¾ÌÃÒ¬d®Öªº³¡¥÷¡A Outlook Express 5.5 ¨Ï¥Î WINDOWS ¨t²Îªº¾ÌÃÒ®w¡A©p ¥un§â»{ÃÒ¤¤¤ß¥[¶i¨t²Îªº¾ÌÃÒ®w´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦Ò¡u³]©w MS-WINDOWS¡v¡C
n³]©w¨Ï¥Î SSL ¦¬«H¡A±Ò°Ê Outlook Express «á¡A¥Ñ¤u¨ã ¦C¤Wªº [¤u¨ã(T)] ¡B [±b¸¹(A)...] «ö¤U¥h¡A·| ¥´¶}¤@Ó [Internet ±b¸¹] ªºµøµ¡¡C¦bµøµ¡¥ªÃä¿ï¾Ün³]©wªº ±b¸¹¡AµM«á«ö¤U¥kÃ䪺 [¤º®e(P)] «ö¶s¡A·|¥´¶}¥t¤@Ó [¬Y¬Y¬Y ¤º®e] ªºµøµ¡¡C«ö¤@¤U¤W¤èªº [¦øªA¾¹] ¡A½¨ì [¦øªA¾¹] ¨º¤@¶¡C¦b [¤º°e¶l¥ó - POP3(I):] ¤¤¡An¶ñ¤W POP3 ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C ¦A«ö¤@¤U¤W¤èªº[¶i¶¥] ¡A½¨ì [¶i¶¥] ¨º¤@¶¡C ¦b [¤º°e¶l¥ó - POP3(I):] ¤U±ªº [³oÓ¦øªA¾¹»Ýn¦w ¥þ³s½u - SSL(C)] ªº¿ï¶µ¤W¥´¤Ä¡CµM«á«ö [½T©w] ¡B [µ²§ô] ¡C³o¼Ë´N·|¥Î SSL ¦¬«H¤F¡C
n³]©w¨Ï¥Î SSL ±H«H¡A±Ò°Ê Outlook Express «á¡A¥Ñ¤u¨ã ¦C¤Wªº [¤u¨ã(T)] ¡B [±b¸¹(A)...] «ö¤U¥h¡A·| ¥´¶}¤@Ó [Internet ±b¸¹] ªºµøµ¡¡C¦bµøµ¡¥ªÃä¿ï¾Ün³]©wªº ±b¸¹¡AµM«á«ö¤U¥kÃ䪺 [¤º®e(P)] «ö¶s¡A·|¥´¶}¥t¤@Ó [¬Y¬Y¬Y ¤º®e] ªºµøµ¡¡C«ö¤@¤U¤W¤èªº [¦øªA¾¹] ¡A½¨ì [¦øªA¾¹] ¨º¤@¶¡C¦b [¥~±H¶l¥ó - SMTP(U):] ¤¤¡An¶ñ¤W SMTP ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C ¦A«ö¤@¤U¤W¤èªº[¶i¶¥] ¡A½¨ì [¶i¶¥] ¨º¤@¶¡C ¦b [¥~±H¶l¥ó - SMTP(O):] ¤U±ªº [³oÓ¦øªA¾¹»Ýn¦w ¥þ³s½u - SSL(Q)] ªº¿ï¶µ¤W¥´¤Ä¡CµM«á«ö [½T©w] ¡B [µ²§ô] ¡C³o¼Ë´N·|¥Î SSL ±H«H¤F¡C
Outlook Express 4 »P 5 ¤£·|Àˬd¦øªA¾¹ªº SSL ¾ÌÃÒ¡C
Eudora ªº SSL ³]p¤£¬O«Ü¦n¡C
Eudora 5.1 ¥H«á¦³¤@Ó [Certificate Infomation Manager] ¾ÌÃÒºÞ²zû¡A¥i¥HºÞ²z Eudora ªº¾ÌÃÒ¡C¥i¬O«Ü©_©Ç¡A¨S¦³¿ìªkª½±µ¶i¤J [Certificate Infomation Manager][20] ¡An¥ý¥Î SSL ¦¬¤@¦¸«H¡A¤~ ¯à¶i¤J [Certificate Infomation Manager] ¡C[21]
¦¬«Hªº®ÉÔ¡A Eudora ·|¥Î STARTTLS ¸Õ±´¬Ý¯à¤£¯à¥Î SSL ¦¬«H¡A¦pªG¥i¥Hªº¸Ü´N¤Á´«¦¨ SSL ¡A¤£µM´N Ä~Äò¥Î´¶³qªº POP3 ¦¬«H¡A©Ò¥H¤£¥Î¯S§O³]©w¦¬«Hªº¤è¦¡¡C¤£¹L ³o¼Ë¤Ï¦Ó·|³y¦¨§xÂZ¡G¦pªG¤Á´«¦¨ SSL ¥H«á¡A Eudora «o¬d¤£ ¨ì¹ï¤èªº¾ÌÃÒ¡A¤Ï¦Ó·|ºtÅܦ¨¾ÌÃÒµL®Ä¡A°±¤î¦¬«H¡C³o®ÉÔ¡A쥻 POP3 ¥¿±`¦¬ªº«H¡A¦øªA¾¹¥[¤W SSL «á¡A Eudora ¬ðµM¤£¯à¦¬«H¡A·|³y¦¨¨Ï¥ÎªÌ«Ü¤jªº§xÂZ¡C³o¬O Eudora ¥t¤@Ó¤£¨}ªº³]p¡C
½Ðª`·N¡G OpenSSL ¹w³]¬O°µ PEM ®æ¦¡ªº¾ÌÃÒ¡A©Ò¥H¥ý«e§Ú ̰µªº³£¬O PEM ®æ¦¡ªº¾ÌÃÒ¡C¦ý Eudora ¥u¯à¶×¤J DER ¾ÌÃҮ榡¡C PEM ¥u¬O§â DER ¥Î Base64 ½s½X¡A¥H¤è«K¦bºô¸ô¤W¶Ç°e¡A©ñ¦bºô¶¤W©Î¥Î E-mail ±H¡C§ÚÌ¥i ¥H¥Î OpenSSL §â PEM Âà DER ¡G
# ±N³Ì°ª¼h»{ÃÒ¤¤¤ßÂন DER ÀÉ openssl x509 -in myrootca.crt -outform der -out myrootca-der.crt
n³]©w¨Ï¥Î SSL ¦¬«H¡A±Ò°Ê Eudora «á¡A¥Ñ¤u¨ã¦C¤Wªº [Tools] ¡B [Options...] «ö¤U¥h¡A·|¥´¶}¤@Ó [Options] ªºµøµ¡¡C¦b¥ªÃ䪺 [Category] ¤¤¿ï¾Ü [Checking Mail] ¡Cµøµ¡¥kÃ䪺 [Mail Server:] ¤¤¡An¶ñ¤W POP3 ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C¥k¤U¤è¦³¤@Ó [Secure Sockets when Receiving:] ªº¿ï³æ¡A¿ï [If available, STARTTLS] «á¡A«ö [OK] ¡C³o¼Ë´N·|¥Î SSL ¦¬«H¤F¡C
n³]©w¨Ï¥Î SSL ±H«H¡A±Ò°Ê Eudora «á¡A¥Ñ¤u¨ã¦C¤Wªº [Tools] ¡B [Options...] «ö¤U¥h¡A·|¥´¶}¤@Ó [Options] ªºµøµ¡¡C¦b¥ªÃ䪺 [Category] ¤¤¿ï¾Ü [Sending Mail] ¡Cµøµ¡¥kÃ䪺 [Mail Server:] ¤¤¡An¶ñ¤W SMTP ¶l¥ó¦øªA¾¹ªº§¹¾ã¦WºÙ¡C¥k¤U¤è¦³¤@Ó [Secure Sockets when Receiving:] ªº¿ï³æ¡A¿ï [If available, STARTTLS] «á¡A«ö [OK] ¡C³o¼Ë´N·|¥Î SSL ±H«H¤F¡C
n¥[¤J§Ú̪º»{ÃÒ¤¤¤ß¡An¥ý¦¬¤@¦¸«H¡Cµøµ¡¤U±·|Åã¥Ü [SSL Negotiation Failed: Certificate Error: Cert Chain not trusted. ...] ªº¿ù»~°T®§¡C¨Ì«ez¤è¦¡¦^¨ì [Tools] ¡B [Options...] ¡B [Category] ¡B [Checking Mail] ¡B [Secure Sockets when Receiving:] «á¡A«ö¤@¤U [Last SSL Info] ¡A¥H¶}±Ò [Eudora SSL Connection Infomation Manager] ªºµøµ¡¡AÅã¥Ü è覬¨ìªº¾ÌÃÒ¤º®e¡C«ö¤@¤U¤U±ªº [Certificate Infomation Manger] «ö¶s¡A·|¦A¸õ¥X¤@Ó [Certificate Infomation Manger] ªºµøµ¡¡C«ö¤@¤U¥k¤U¨¤ªº [Import Certificate] ¡A§ä¨ì§Ú̪º³Ì°ª¼h»{ÃÒ¤¤¤ßªº DER ÀÉ myrootca-der.crt ¡A«ö [¶}±Ò] ¡A ´N·|¥[¶i¥h¤F¡C[22]
Becky! ¥Ø«e¤£¤ä´© SSL ¡C
n³]©w¨Ï¥Î SSL ¦¬«H¡A¥´¶} Opera ¡A±q¤u¨ã¦C¤Wªº [ÀÉ®×(F)] ¡B [¥\¯à³]©w(R)...] ¶i¥h«á¡A·|¥´ ¶} [¥\¯à³]©w] ªºµøµ¡¡C¦bµøµ¡¥ªÃ䪺¿ï³æ¤¤¡A¿ï [¹q¤l ¶l¥ó] ®É¡A¥kÃä·|¥X²{ [¨Ï¥Î Opera ªº±b¸¹(O)] ªº¿ï ³æ¡C¿ï¾Ün³]©wªº±b¸¹¡AµM«á«ö®ÇÃ䪺 [§ó§ï(P)...] ¡A·|¸õ¥X ¤@Ó [¶l¥ó±b¸¹³]©w] ªºµøµ¡¡C¦b¤W±ªº [¦øªA¾¹] ¤W«ö¤@¤U¡A¤Á´«¨ì¦øªA¾¹¨º¤@¶¡A¦b [¤º¦¬¶l ¥ó] ùØ [±Ä¥Î TLS ¦w¥þ©Ê¨ó©w] ªº¦a¤è¥´¤Ä¡A«ö [½T©w] ¡B [½T©w] ¡C³o¼Ë´N·|¥Î SSL ¦¬«H¤F¡C
n³]©w¨Ï¥Î SSL ±H«H¡A¥´¶} Opera ¡A±q¤u¨ã¦C¤Wªº [ÀÉ®×(F)] ¡B [¥\¯à³]©w(R)...] ¶i¥h«á¡A·|¥´ ¶} [¥\¯à³]©w] ªºµøµ¡¡C¦bµøµ¡¥ªÃ䪺¿ï³æ¤¤¡A¿ï [¹q¤l ¶l¥ó] ®É¡A¥kÃä·|¥X²{ [¨Ï¥Î Opera ªº±b¸¹(O)] ªº¿ï ³æ¡C¿ï¾Ün³]©wªº±b¸¹¡AµM«á«ö®ÇÃ䪺 [§ó§ï(P)...] ¡A·|¸õ¥X ¤@Ó [¶l¥ó±b¸¹³]©w] ªºµøµ¡¡C¦b¤W±ªº [¦øªA¾¹] ¤W«ö¤@¤U¡A¤Á´«¨ì¦øªA¾¹¨º¤@¶¡A¦b [¥~±H¶l ¥ó] ùØ [±Ä¥Î TLS ¦w¥þ©Ê¨ó©w] ªº¦a¤è¥´¤Ä¡A«ö [½T©w] ¡B [½T©w] ¡C³o¼Ë´N·|¥Î SSL ±H«H¤F¡C
¾ÌÃÒ¬d®Öªº³¡¥÷¡A Opera ¶l¥ó¨Ï¥Î Opera ªº¾ÌÃÒ®w¡A©p¥un§â»{ÃÒ¤¤¤ß¥[ ¶i Opera ´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦Ò Opera ªº³]©w¡C
SSL ±Ä¥Îªº¬O X.509 ¡A¥Ñ¤W¦Ó¤Uª÷¦r¶ð¦¡ªº¾ÌÃÒ¨î«×¡C
¦b X.509 ¤¤¡A¨C¤@Ó¦X®æªº¾ÌÃÒ¤W¡A³£·|¦³¤@Óñ¦W¡C³Ì¤U¼hªº¾ÌÃÒ¤W¡A ·|¦³¤@Ó»{ÃÒ¤¤¤ß (CA) ªºÃ±¦W¡Aªí¥Ü³oÓ»{ÃÒ¤¤¤ß (CA) Àˬd¹L¡A½T»{©Ò¦³ªÌ¸ê®ÆµL»~¡C¤¤¶¡ªº»{ÃÒ¤¤¤ß (CA) ¤W¡A¤]·|¦³ºÞÁÒ¥¦ªº³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ªºÃ±¦W¡Aªí¥Ü³Ì°ª¼h»{ÃÒ¤¤¤ß±ÂÅvµ¹¥¦¡A¥i¥Hñµo§O¤Hªº ¾ÌÃÒ¡C¥u¦³³Ì°ª¼h»{ÃÒ¤¤¤ß¤W¡A¦]¬°¥¦¤w¸g¬O³Ì¤j¡A¨S¦³¦A¤W¼h¥i¥Hµ¹¥¦Ã±¦W ¤F¡A©Ò¥H¥u¦n¦Û¤vñ¦Û¤v¡A¾ÌÃÒ¤WªºÃ±¦W¬O¦Û¤vñªº¡C
µ{¦¡¦Û¤v·|»{±o´X®a¥i¾aªº»{ÃÒ¤¤¤ß (CA) ¡A¸I¨ì SSL ºô¯¸®É¡AÁöµM¤£»{±o¦øªA¾¹ªº ¾ÌÃÒ (Certificate) ¡A¦ý¥un¨ºÓ¾ÌÃÒ¤W¡A¦³¦Û¤v»{±oªº»{ÃÒ¤¤¤ß (CA) ñ¦W«OÃÒ¹L¡A¨ºÓ¾ÌÃÒ´N¨S¦³°ÝÃD¡C
¦ý¦pªG¨ºÓ¦øªA¾¹¾ÌÃÒ¤W¡A¨S¦³¦Û¤v»{±oªº»{ÃÒ¤¤¤ß (CA) ñ¦W«OÃÒ¹L¡A¦øªA¾¹¾ÌÃÒ´N¦³¥i¯à¦³°ÝÃD¡A·|¥X²{¾ÌÃÒµL®ÄªºÄµ§i¡C
¥»¤å²Ä¤@¨B°Q½×ªº¬O¦p¦ó¦Û»s³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¡C ¦]¬°³o¬O§Ú̦ۤvªº»{ÃÒ¤¤¤ß¡Aµ{¦¡¤£»{±o¡A©Ò¥H²Ä¤G¨Bñµoªº¾ÌÃÒ (Certificate) ¤WªºÃ±¦W¡Aµ{¦¡¦ÛµM¤]¤£»{±o¡A¤@©w·|¥X²{¾ÌÃÒµL®ÄªºÄµ§i¡C
Y¤£·Q¬Ý¨ì³oÓĵ§i¡A´Nn¥ýÅýµ{¦¡»{±o§Ú̦ۤvªº»{ÃÒ¤¤¤ß (CA) ¡C³o®É¡A²Ä¤G¨Bñµoªº¾ÌÃÒ (Certificate) ¡Aµ{¦¡»{±o¤W ±»{ÃÒ¤¤¤ß (CA) ªºÃ±¦W¡A´N¤£·|¦A¥X²{¾ÌÃÒµL®ÄªºÄµ§i¡C
¸Ô²Ó°µªk¡A½Ð°Ñ¦Ò¡u³]©w§@·~¨t²Î¡v¡B¡u³]©wÂsÄý¾¹¡v»P¡u³]©w¹q¤l¶l¥óµ{ ¦¡¡v¦U¸`¡C
½Ðª`·N¡G³oÓ¤èªk¡A¦]¬°n¦bµ{¦¡¤W¡A¤â°Ê¥[¤J¦Û¤vªº»{ÃÒ¤¤¤ß (CA) ¡A©Ò¥H¥u¦³¦Û¤v¤º³¡¥Îªººô¯¸¡A¨Ï¥ÎªÌ©Mµ{¦¡¼Æ¥Ø³£¦³ ¡A¥i¥H¦Û¤v¤@Ó¤@Ó¥h³]»{ÃÒ¤¤¤ß (CA) ªº±¡ªp¤U¡A¤è¤~¥i¦æ¡C Yn¥Î¦b¤½¶}ªººô¯¸¤W¡A¦]¬°¤WºôªÌ¨Ó¦Û¦UÓ¤£¦Pªº¦a¤è¡A©p¤]³£¤£»{ÃÑ¡A¨S ¦³¿ìªk¦b¦o̪º¹q¸£¤W¡A³£¥[¶i¦Û¤vªº»{ÃÒ¤¤¤ß¡A´N¨S¦³¿ìªk¤F¡C³o¤@ÂI¨ü ©ó X.509 ªº³W©w¡A·R²ö¯à§U¡CY¯uªº«Ü¦b·N SSL ¾ÌÃÒµL®Äĵ§i ªº°ÝÃD¡A¤S»Ýn¦b¤½¶}ªººô¯¸¨Ï¥Î SSL ¡A½Ð¦V¦U®añÃÒ¤½¥q¥Ó ½Ð¡A¦~¶O¤j·§´X¸U¤¸»O¹ô¡C
¡uµ¥µ¥¡Aèè¹Ï¤¤ªº³Ì«á¤@Ó¨BÆJ¡A¡y¨S°ÝÃD¡A³o¬Oµ¹©pªº¸ê®Æ¡z¡C¨Ï¥ÎªÌ ÁÙ¨S¦³¶ñ¤°»ò¸ê®Æ°Ú¡Iµ{¦¡«ç»ò¥i¥H¦Û¤v¶Ãµ¹¹ï¤è¸ê®Æ©O¡H¨ì©³µ¹¤F¤°»ò¸ê®Æ ¡Hµ{¦¡·|¤£·|¦Û¤vµ¹¹ï¤è E-mail ¡B«H¥Î¥d¸¹½X¡B¨¥÷ÃÒ¦r¸¹¡B±K½X¡H¡v
µ{¦¡¶Çµ¹¹ï¤èªº¡A¬O±µ¤U¨Ó³q«H®É¡A¹ïºÙ¦¡¥[¸Ñ±K¥Îªº Key ¡C
Public/Private Key ªº¤£¹ïºÙ¥[¸Ñ±Kªk (Asymmetric Encryption) ¡A¥i¥H §â Public Key §i¶D¥þ¥@¬É¡A Private Key ¦Û¤v¯µ±K«OºÞ¦n¡An¶Ç¸ê®Æµ¹©pªº ¸Ü¡A¥un¥Î©pªº Public Key ¥[±K¡A¥þ¥@¬É´N¥u¦³©pªº Private Key ¤~¸Ñ±o¶} ¡C³oºØ¤£¹ïºÙ¥[¸Ñ±KªkÁöµM«Ü¦w¥þ¡A¦ý¬O¥[¸Ñ±Kªº³t«×«ÜºC¡C¤Ï¹L¨Ó»¡¡A¶Ç²Î ªº¹ïºÙ¦¡¥[¸Ñ±Kªk (Symmetric Encryption) ¡AÁöµM¥[¸Ñ±K³t«×§Ö¦h¤F¡A¦ý¬O Âù¤è³£n´¤¦³¦P¤@Ó Key ¡A§â Key ¶Çµ¹¹ï¤è³~¤¤¡A·|¦³³QÄdºIºÊÅ¥ªº¦MÀI¡C
SSL ±Ä¥Î¨â¶¥¬q¦¡ªº§@ªk¡G²Ä¤@¶¥¬q¡A¥ý¥Î Public/Private Key ¤£¹ïºÙ¥[ ¸Ñ±Kªk¡A¶Çµ¹¹ï¤è¡u±µ¤U¨Ó¶Ç¯u¥¿¸ê®Æ®É¡A¹ïºÙ¦¡¥[¸Ñ±Kªkn¥Îªº Key ¡v¡C²Ä ¤G¶¥¬q¡A¦A¥Î³oÓ¹ïºÙ¦¡¥[¸Ñ±Kªº Key ¡A¨Ó¶Ç쥻n¶Çªº¸ê®Æ¡C¯u¥¿¶Ç¸ê®Æ®É ¥Îªº¡A¨ä¹ê¬O¹ïºÙ¦¡¥[¸Ñ±Kªk¡C³oÓ¶Ç¸ê®Æ¥Îªº¹ïºÙ Key ¬O¥Î¶Ã¼Æ¨úªº¡A¦A¥Î Public/Private Key ªk¶Çµ¹¹ï¤è¡A¨C¤@¦¸³s½u®É³£¤£¤@¼Ë¡C¥Î³oºØ¨â¶¥¬q¦¡ªº §@ªk¡A Key ¬O¥Î¤£¹ïºÙ¥[¸Ñ±Kªk¶Çµ¹¹ï¤èªº¡A¤£¥Î¾á¤ß¤¤³~³QÄæºI¡A¤]¯à°÷¨É ¨ü¦X²zªº¥[¸Ñ±K³t«×¡C
¡u©Ò¥H¡A¥un¹ï¤è SSL ºô¯¸ªº¾ÌÃÒ¦X®æ¡A¤W±¦³¥i¾aªº»{ÃÒ ¤¤¤ß (CA) ñ¦W¡A§â§Úªº«H¥Î¥d¸ê®Æ¶Ç¹L¥h´N¦w¥þÅo¡H¡v
¤£¹ï¡C
¥J²Ó¬Ý¬Ý«e¬q¡u SSL/X.509 ²¤¶ ¡v¡A´N·|ª`·N¨ì¡A SSL/X.509 ³W©w¤¤¡A»{ÃÒ¤¤¤ß (CA) ªºÃ±¦W©Ò«OÃÒªº¡A¥u¦³¡u³oÓ Public Key ¾ÌÃÒªº½T¬OÄÝ ©ó³o®a¤½¥qªº³oÓ¦øªA¾¹¡v¦Ó¤w¡C¤]´N¬O»¡¡A¥¦¥u«OÃÒ¡u©p°eªº«H¥Î¥d¸¹½X·| ½T½T¹ê¹ê¥æ¨ì³o®a¤½¥qªº³oÓ¦øªA¾¹¤â¤¤¡A¤£©È³Q¥ô¦ó¤H¤¤³~ÄdºIºÊÅ¥¡v¡C¦ý ³o¨Ã¤£¥Nªí¡u³o®a¤½¥q¬OÀu¨}¥ø·~¡A¦¬¨ì©pªº«H¥Î¥d¸ê®Æ«á¡A¤£·|ÀÝ ¥Î¡A¤£·|°¼¿ý¤U¨Ó¡A¤£·|¦h¨ê¨âµ§¡A¤£·|Âà¤â§â¸ê®Æ½æµ¹§O®a¤½¥q¡v ¡A¤]¤£¥Nªí¡u³o®a¤½¥qªº¦øªA¾¹¦w¥þ¨¾Å@°µ±o«Ü¦n¡A¤£·|³Q¤H¤J«I¡A ¤£·|³Q¤H°½°½¦w¸Ë°¼¿ý¤Wºô¸ê®Æªºµ{¦¡¡v¡C
¨S¿ù¡A SSL ¥u¯à«OÃÒ¦¬¨ìªº Public Key ¾ÌÃÒ¤£¬O°°³yªº¡A ¦ý¤£¯à«OÃÒ³o®a¤½¥q¥»¨¨S¦³°ÝÃD¡C´Nºâ³o®a¤½¥q¥»¨¨S¦³°ÝÃD¡A¤]¤£¯à«OÃÒ ³o®a¤½¥q¤º³¡·|¤£·|¦¨¬°§O¤H¤J«I¡BÅѨú¸ê®Æªº¥Ø¼Ð¡C
¡u¨º«ç»ò¿ì¡H«ç»ò¼Ë¤~¯àºâ¦w¥þ¡H¤~¯à©ñ¤ß§â¸ê®Æ¶Ç¹L¥h¡H¡v
´N¹³¦b¹êÅé¥@¬É¡A¸ò¤£»{ÃѪº°Ó©±¶RªF¦è®É¡A¤@©w·|«O«ù§Ù¤ß¤@¼Ë¡A¦bºô¸ô ¤W©M¥ô¦óºô¯¸¥æ©ö¡A¤]¤@©wn«O«ù§Ù¤ß¡A°£¤Fn¦Ò¼{©p¥±`«H¤£«H¥ô³oÓºô¯¸ ¥~¡A¤]n¦Ò¼{©p¶Ç¹L¥hªº¸ê®Æ«¤£«n¡CÁ|¨Ò¨Ó»¡¡A¯d¨¥ªO¡B°Q½×°Ï¡Bºô¸ô§ë ²¼µ¥µ¥¡A¤£¬O«Ü¨p¤Hªº¸ê®Æ¡A¥i¥H©ñ¤ß¶Ç¹L¥h¨S°ÝÃD¡F¦ý¦pªG¬O¯u¹ê©m¦W¡B¤â ¾÷¸¹½X¡B®aùعq¸Ü¡B«H¥Î¥d¸¹½X¡A E-mail µ¥µ¥¡A´N¥u¯à¶Çµ¹¦Û¤v«H¥ôªººô¯¸ ¤F¡C
¼Æ¦ìñ¦W¬O¥Î Private Key ¡A°w¹ï¬Y¤@¬q¸ê®Æ¡A¥Î Digest Hash ºtºâªk¡] ¦p SHA1 ¡^°µ¥X¨Óªº¤@¬q Digest ºKn½X¡C¥unì¨Óªº¸ê®Æ¦³©Ò¤£¦P¡Aºtºâ¥X ¨Óªº Digest ºKn½X´N·|¸òµÛÅܰʡC¥Î Private Key °µ¥X¨Óªº Digest ºKn½X ¡A¥i¥H¥Î¥¦ªº Public Key ¨ÓÀˬd¡C¥un¥Î¥¦ªº Public Key ¡AÀˬd Digest ºKn½X©M¨º¤@¬q¸ê®Æ²Å¤£²Å¦X¡A´N¥i¥Hª¾¹D¸ê®Æ¦³¨S¦³¤¤³~³Q«§ï¹L¡A¬O¤£¬O ³oÓ Private Key ·íªìñªº¨º¤@¬q¸ê®Æ¡C
³oөʽè«Ü¹³¦X¬ù¤¤¡A¦b¾ã¥÷¦X¬ù¤W¤j¤jñ¤@Ó¦W¤@¼Ë¡A¤H®a»{±o©pñ¦Wªº µ§¸ñ¡A¤é«á¥un¦X¬ù¦³¥ô¦ó¶î§ï¡A¤@»{«Kª¾¡C©Ò¥H§Ú̧⥦¥s°µ¼Æ¦ìñ¦W¡C
¦]¬°¼Æ¦ìñ¦W¥i¥H¥Î¨ÓÀˬd¸ê®Æ¦³¨S¦³³Q«§ï¡A©Ò¥H§Ú̧⥦¥Î¦b¾ÌÃÒ¤W¡A »{ÃÒ¤¤¤ßÀˬd¹L Public Key ªº©Ò¦³¤H¡A©M Key ¤W°O¸üªº©Ò¦³¤H¸ê®Æ¬Û²Å«á¡A ¥Î»{ÃÒ¤¤¤ß¦Û¤vªº Private Key ¡A¦b³o¨Ç¸ê®Æ¤W±°µÓ¼Æ¦ìñ¦W¡Aªí¥ÜÃÒ©ú¡C ¤é«á¦¬¨ì³oÓ Public Key ªº¤H¡A¥unÀˬd¤W±»{ÃÒ¤¤¤ßªºÃ±¦W¡A´N¥i¥Hª¾¹D ³oÓ Key ¡A©M¥¦¤W±©Ò¸üªº©Ò¦³¤H¸ê®Æ¬Û¤£¬Û²Å¡A¬O¤£¬O¯uªº¬O³o®a¤½¥qªº Key ¡C¤]´Nª¾¹D¡A³s¤Wªº³oÓ¦øªA¾¹¡A¬O¤£¬O¯uªº¬O³o®a¤½¥qªº¦øªA¾¹¤F¡C
¾ÌÃÒªºì¤å¬O Certificate ¡A¬Oªþ¤W©Ò¦³¤H (owner) ªº¸ê®Æ¡]¤½¥q¦WºÙ¡B ¦øªA¾¹¦WºÙ¡BÓ¤H¯u¹ê©m¦W¡B³sµ¸ E-mail ¡B³q°T¦a§}µ¥¸ê®Æ¡^¡A«á±¥[¤W¼Æ ¦ìñ¦Wªº Public Key ¡C¾ÌÃÒ¤W·|ªþ¦³´XӼƦìñ¦W¡A¥Nªí³o¨Çñ¦Wªº¤H¡A½T »{¹L³oÓ Public Key ªº©Ò¦³¤H¡A©M¾ÌÃÒ¤W©Ò¸üªº¸ê®Æ¬Û²Å¡A¨S¦³°²³y¡C
¦b X.509 ¤¤¡A³Ì¤U¼h¨C¤@Ó¦X®æªº¾ÌÃÒ (Certificate) ¤W¡A·|¦³¤@Ó»{ÃÒ ¤¤¤ß (CA) ªºÃ±¦W¡Aªí¥Ü³oÓ»{ÃÒ¤¤¤ß (CA) ÀË ¬d¹L¡A½T»{¾ÌÃÒ¤Wªº©Ò¦³ªÌ¸ê®ÆµL»~¡C·íµ{¦¡¸I¨ì¨S¨£¹Lªº¾ÌÃҮɡA¥unÀˬd ¾ÌÃÒ¤W»{ÃÒ¤¤¤ß (CA) ªºÃ±¦WµL»~¡A§Y¥Nªí³oÓ»{ÃÒ¤¤¤ß (CA) ¬d®Ö¹L³oÓ¾ÌÃÒ (Certificate) ¡A¾ÌÃÒ¤Wªº¸ê®ÆµL»~¡C
»{ÃÒ¤¤¤ßªºì¤å¬O CA ¡A¬O Certificate Authority ªºÁY¼g ¡A¦b·L³nÁcÅ餤¤å WINDOWS ¤Wͦ¨¡u¾ÌÃÒ±ÂÅv¡v¡A¡u¾ÌÃÒ±ÂÅv¡v§¹¥þ¬O³v¦r½ Ķ¡A·N«ä¤£³q¡A¤£¥Î¡C»{ÃÒ¤¤¤ß¬O X.509 ªº¤@Àô¡C»{ÃÒ¤¤¤ß¤]¬O¤@ºØ¾ÌÃÒ¡A¤W ±ªþ¦³»{ÃÒ¤¤¤ß¥»¨ªº¸ê®Æ¡A¦ý¤£¬O¥Î¨Ó¥[¸Ñ±K¡A¦Ó¬O¥Î¨Óñµo¾ÌÃÒ¡AÃÒ©ú¾Ì ÃÒ©Ò¦³¤H©M¾ÌÃÒ¤W©Ò¸üªº¸ê®ÆµL»~¡C½Ð°Ñ¨£¡uSSL/X.509 ²¤¶¡vªºªþ¹Ï¡C
¨C¤@Ó¦X®æªº»{ÃÒ¤¤¤ß (CA) ¡]·L³nÁcÅ餤¤å WINDOWS ¤WĶ ¦¨¡u¤¤Ä~¾ÌÃÒ±ÂÅv¡v¡A·N«ä¤£³q¡^¤W¡A·|¦³¤@ÓºÞÁÒ¥¦ªº³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ªºÃ±¦W¡Aªí¥Ü³Ì°ª¼h»{ÃÒ¤¤¤ß±ÂÅvµ¹¥¦¡A¥i¥Hñµo§O ¤Hªº¾ÌÃÒ¡C·íµ{¦¡¸I¨ì¨S¨£¹Lªº¾ÌÃÒ¡A¾ÌÃÒ¤Wñ¦Wªº»{ÃÒ¤¤¤ß (CA) ¤]¨S¨£¹L®É¡A¥unÀˬd»{ÃÒ¤¤¤ß¤Wªþªº³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ªºÃ±¦WµL»~¡A§Y¥Nªí³oӳ̰ª¼h»{ÃÒ¤¤¤ß (Root CA) ¡A»{¬°³oÓ»{ÃÒ¤¤¤ß (CA) ªº¾ÌÃÒñµo¹Lµ{ «Ü¥J²Ó¡AÀˬd¸ê®Æ«Ü¸Ô¹ê¡A©Ò¥H±ÂÅvµ¹¥¦¡Aã³\¥¦¥i¥Hñµo¾ÌÃÒ (Certificate) ¡C©Ò¥H³oÓ»{ÃÒ¤¤¤ß (CA) ñµoªº¾ÌÃÒ (Certificate) ¡A¾ÌÃÒ¤Wªº¸ê®Æ¤]¨S¦³°ÝÃD¡C
³Ì°ª¼h»{ÃÒ¤¤¤ßªºì¤å¬O Root CA ¡A¦b·L³nÁcÅ餤¤å WINDOWS ¤Wͦ¨¡u®Ú¥Ø¿ý¾ÌÃÒ±ÂÅv¡v¡C¡u®Ú¥Ø¿ý¡v¥u¬O·Ó Root ³oÓ¦r³v¦r½ Ķ¡A·N«ä¤£³q¡A¤£¥Î¡C³Ì°ª¼h»{ÃÒ¤¤¤ß¬O X.509 ªº¤@Àô¡Cv¤]¬O »{ÃÒ¤¤¤ß (CA) ¡A©M¤@¯ë»{ÃÒ¤¤¤ßªº®t§O¦b©ó¡A¥¦¤£·|ª½±µ¥Î¨Ó ñµo¾ÌÃÒ¡A¦Ó¬O±ÂÅvµ¹¤@¨Ç¤¤¶¡ªº»{ÃÒ¤¤¤ß¡AÅý³o¨Ç¤¤¶¡ªº»{ÃÒ¤¤¤ß¨Óñµo¾Ì ÃÒ¡C½Ð°Ñ¨£¡uSSL/X.509 ²¤¶¡vªºªþ ¹Ï¡C
³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¦]¬°¤w¸g¬O³Ì¤j¡A¨S¦³¦A¤W¼h¥i¥Hµ¹¥¦Ã±¦W¤F¡A©Ò¥H¾ÌÃÒ ¤Wªº¬O¦Û¤vªºÃ±¦W¡A¤£¬O§O¤HªºÃ±¦W¡C¦]¬°³Ì°ª¼h»{ÃÒ¤¤¤ß¨S¦³¦A¤W±ªºÃ±¦W ¤F¡A¨S¦³¤H¥i¥H«OÃҳ̰ª¼h»{ÃÒ¤¤¤ß¥»¨¦³¨S¦³°ÝÃD¡A¨S¦³¿ìªk¦A©¹¤WÀˬd¡A ©Ò¥Hµ{¦¡¥u¯à¨Æ¥ý´N»{±o¤@¨Ç¥i¾aªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¨Æ¥ý´Nª¾¹D¤@¨Ç¥i¾aªº ³Ì°ª¼h»{ÃÒ¤¤¤ßªº Public Key ¡C
³Ì°ª¼h»{ÃÒ¤¤¤ß¥u¯à¥Ñ¤@¨ÇµÛ¦W¡B¥i¾aªº¤½¥q¨Ó¾á¥ô¡A¦]¬°¨S¦³¿ìªk¦A©¹¤W ¬dÅç¡C¦pªGµ{¦¡³Q¥[¶i¤@¨Ç¤£¥i¾aªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A±µ¤U¨Ó¸I¨ì¥¦Ã±¤U¨Óªº ¾ÌÃÒ¡A³£·|¦³°ÝÃD¡A¾ãÓµ{¦¡ªº¦w¥þ³£·|³Q¯}Ãa¡C©Ò¥H¦b X.509 ¤U¡A SSL µ{¦¡¤@©wn¦n¦n«OÅ@³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¤@©wn¦A¤T½T»{¡A¤£ ¥i¥HÀH«KÅý¤H¤â°Ê¥[¶i³Ì°ª¼h»{ÃÒ¤¤¤ß¡C
¦pªG©p¤£ª¾¹D¸Ó¦p¦ó¶ñ¼g¾ÌÃҥӽЮѡA½Ð°Ñ¦Ò¥H¤U½d¨Ò¡G
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:TW State or Province Name (full name) [Some-State]:Taiwan Locality Name (eg, city) []:Taipei City Organization Name (eg, company) [Internet Widgits Pty Ltd]:Tavern IMACAT's Organizational Unit Name (eg, section) []:Owner Common Name (eg, YOUR name) []:Tavern IMACAT's Email Address []:imacat@mail.imacat.idv.tw Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:
X.509 ¾ÌÃÒ¨î«×¡A¬O¾a¨Æ¥ý»{±o¤@¨Ç¥i¾aªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¦A¤@¼h¤@¼hñ µo¤U¨Óªºª÷¦r¶ð«¬µ²ºc¡C³o¼Ëªº¨î«×¡A«Ü¹³«H¥Î¥d¨î«×©Î¨¥÷ÃÒ¨î«×¡G
³o¼Ëªºª÷¦r¶ðµ²ºc¡A¦³¤@¨Ç¦n³B¡A¤]¦³¤@¨Ç¯ÊÂI¡C
¦n³B¬O¦b©ó¡A¦bµL¼e¼sªººô»Úºô¸ô¤W¡A§Ú̮ڥ»¤£ª¾¹D·|¸I¨ì¤°»ò¼Ëªººô ¯¸¡A©Ò¥H®Ú¥»¤]µL±q¬d»{¨C¤@Ó¦¬¨ìªº Public Key ¦³¨S¦³°ÝÃD¡A¬O¤£¬O¯uªº ¬O³o®a¤½¥qªººô¯¸¡A§Ú¬O¤£¬O¯uªº¬O¸ò³o®a¤½¥q¥´¥æ¹D¡C¦b X.509 ¤U¡A¥un§Ú ̹w¥ý»{±o´X®a¥i¾aªº³Ì°ª¼h»{ÃÒ¤¤¤ß´N¦n¤F¡C¸I¨ì¤£»{ÃѪº Public Key ®É ¡A¥un¤@¼h¤@¼h©¹¤W°l·¹¡A¦pªG³Ì«á°l·¹±o¨ì¤@Ó§ÚÌ»{±oªº¥i¾aªº³Ì°ª¼h»{ ÃÒ¤¤¤ß¡A¨º³oÓ Public Key ´N¨S¦³°ÝÃD¤F¡C³o¼Ëªº°µªk¡A²¤Æ¤FµL¼e¼sªº ºô»Úºô¸ô¤W¡A½T»{©¼¦¹¨¥÷ªº§xÃø©Ê¡C
¯ÊÂI«h¦b©ó¡A¦]¬° X.509 ¬Oª÷¦r¶ðµ²ºc¡A³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¤â¤¤´¤¦³¾ãÓºô»Úºô¸ô«H¥ôÃö«YªºÃöÁä¡AÅv¤O¤Ó¤j¤F¡CÃe¤j ªºÅv¤O¡A¦ñÀHµÛªº¬OÃe¤jªº§Q¯q¡C´¿¸g¸ò»{ÃÒ¤¤¤ß¥´¹L¥æ¹D¡]¦p VeriSign ¡B HiTrust ºô»Ú«Â«H¡BTaica »OÆWºô¸ô»{ÃÒµ¥¡^ªº¤H³£ª¾¹D¡A¥Ó½Ðñµo SSL ¾ÌÃÒ«D±`¶Q¡A¤@¦~¦~¶On¦n´X¸U¡A´¶³q¤H©Î¤¤¤p¥ø·~¡A»Ýn SSL ºô¯¸¥[±Kªº®ÉÔ¡A®Ú¥»´Nt¾á¤£°_¡C¦Ó¦]¬°ª÷¦r¶ð³»¼hªº³Ì °ª¼h»{ÃÒ¤¤¤ß¡A¬OÃbÂ_¨Æ·~¡A¼Æ¥Ø«Ü¤Ö¡A¤£·|¦³¤°»òÄvª§¡A©Ò¥H¤j«¬ªº³Ì°ª¼h »{ÃÒ¤¤¤ß«ººA³£«Ü°ª¡A¦~¶O¤@ª½°¤£¤U¨Ó¡C¦ýY¤£¾a³o¨Ç³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¦Û ¤v¨ÓµoÃÒ¡Aµ{¦¡¨S¦³¤º«Ø§Ú̦ۻsªº»{ÃÒ¤¤¤ß¡A³s¨ì SSL ¯¸¤W ¡A¤@©w·|¥X²{ĵ§i¡C¤p²Õ´ùؤº³¡¦Û¥Îªº SSL ¦øªA¾¹ÁÙ¨S¦³°Ý ÃD¡A§ÚÌ¥i¥H¦Û¤v¥[¤J¦Û»sªº»{ÃÒ¤¤¤ß¡A¦ý¤j«¬¤½¶}ªº¦øªA¾¹¡]¹³¤½¥qºô¯¸¡^ ¤W¡A¤£¥i¯àn¤£»{ÃѪº¤WºôªÌ«H¥ô§Ú̪º»{ÃÒ¤¤¤ß¡A§â§Ú̪º»{ÃÒ¤¤¤ß¥[¶i¥h ¡A³o®ÉÔ¸ê®Æªº¦w¥þ¡A´N·|«G°_¬õ¿O¤F¡C¨ìÀY¨Ó¡A§ÚÌÁÙ¬O±o¦^¹LÀY¥h¡A¨D³o ¨Ç¤j«¬ªº»{ÃÒ¤¤¤ß¡A¨Ä¨Äú¤@¦~¦n´X¸Uªº¦~¶O¡C
³o¯uªº¨S¦³¿ìªk¶Ü¡H
µª®×¬O§_©wªº¡C§Y¨Ï¬O X.509 ªºª÷¦r¶ðµ²ºc¡A¦Ü¤Ö´N¦³¨â±ø¸ô¡G²Ä¤@±ø¸ô ¬O¹³«H¥Î¥d¨î«×¤@¼Ë¡C«H¥Î¥d¨î«×¤]¬Oª÷¦r¶ðµ²ºc¡A³»¼hªº«H¥Î¥d¶°¹Î¤]¬OÃb Â_¨Æ·~¡A¼Æ¥Ø«Ü¤Ö¡A¥i¬O«H¥Î¥dªº¦~¶O¥u¦³´X¤d¶ô¿ú¡C¦³Ävª§´N·|°»ù¡A¦ý¨S ¦³Ävª§¡A¨Ã¤£¥Nªí»ù®æ¤@©w°¤£¤U¨Ó¡C»ù®æ¨ä¹êÁÙ¬O¥d¦b»{ÃÒ¤¤¤ß¦p¦ó©w»ù¡A «H¥Î¥d¨î«×´N¬O¤@¨Ò¡C²Ä¤G¬O¹³¨¥÷ÃÒ¤@¼Ë¡A¥Ñ¬F©²¥X±¸gÀç¡A¥H¬F©²ªº«H¥Î ¾á«O¡B¼f®Ö¡A§â¥¦Åܦ¨§K¶Oªº¤½¥Î¨Æ·~¡AÅý¤j®a¦³¿ú¨S¿ú¡A³£¥i¥H¨Ó¥Î¦w¥þªº ºô¯¸¥æ©ö¡C
¤£¹L¡A¥J²Ó·Q·Q¡A§Ú̬O¤£¬O¤@©wn¥Î X.509 ³oºØª÷¦r¶ð¨î«×¡A¥ô³o¨Ç ³»¼hªº»{ÃÒ¤¤¤ß®_³Î¡A¤©¨ú¤©¨D©O¡H
¨ä¹ê¾ÌÃÒ¦³¦n´XºØ¡C¦³¤@ºØ¥s°µ PGP ¡A¬O±Ä¥Î¡u«H¥ôºô (Web of Trust) ¡vªº¼Ò¦¡¡A«Ø¥ß«H¥ôÃö«Y¡C PGP ªº«H¥ôºô´N¹³¤H»ÚÃö«Yºô¤@¼Ë¡G§Ú»{±o©p¡A©p »{±o¦o¡A©Ò¥H§Ú¥un½Ð©p¨Ó»{¦o´N¦n¤F¡C
¦b PGP «H¥ôºô¼Ò¦¡¤U¡A§Ṳ́£»Ýn¤@ӳ̰ª¼h»{ÃÒ¤¤¤ß¡Aµ¹¨CÓ¤H®Öµo¾Ì ÃÒ¡A¤~¯à¨ú±o Public Key ªº¦w¥þ©Ê¡C§ÚÌ¥un«H¥ô§Ú̦ۤvªº Public Key ¾ÌÃÒ¡A¥Î¦Û¤vªº¾ÌÃÒ¥hñ»{ÃѪº Public Key ªº¾ÌÃÒ¡A§O¤H¤]¥Î¥L̦ۤvªº¾Ì ÃÒ¡A¥hñ¥LÌ»{ÃѪº¤Hªº¾ÌÃÒ¡A©¹¥~¤@¼h¤@¼hÂX´²¥X¥h¡A¤¬¬Û«H¥ô¡C¸I¨ì¤£»{ ±oªº¾ÌÃҮɡA¥un¯à°÷±q¥L¾ÌÃÒ¤WªºÃ±¦W¤¤¡A¦^·¹¨ì¥i«H¥ôªº¤Hªº¾ÌÃÒ¨¤W¡A ´N¥i¥H¤F¡C¨ä¹ê¨Æ±¡¥»¨Ó´N¬O³o¼Ë¡C§Ú̬°¤°»òn¦V§O¤Hú¤@¦~¦n´X¸Uªº¦~¶O ¡AÁÙn§O¤Hñ¦W¡A¤~¯à«H¥ô¦Û¤vªº¾ÌÃÒ©O¡H
¤£¹L¡A¤£¦X²zªº¬O¡A SSL ³W©w¡An¥Î X.509 ¡C
¦b¥»¤å¤¤¡A§Ṵ́µ¤F¨âÓ¾ÌÃÒ¡G¤@Ó¬O Root CA ³Ì¤W¼h»{ÃÒ ¤¤¤ß¡A¤@Ó¬O¥Î³oӳ̰ª¼h»{ÃÒ¤¤¤ßñµoªº¾ÌÃÒ¡C
¨ä¹ê§¹¾ãªº¸Ü¡AÀ³¸Ón°µ¤T¼h¡]°Ñ¦Ò¡G¡uSSL/X.509 ²¤¶¡v¤¤ªºªþ¹Ï¡^¡G³Ì°ª¼h»{ ÃÒ¤¤¤ß (Root CA) ¡A¤¤¶¡ªº»{ÃÒ¤¤¤ß (CA) ¡A³Ì «á¤~ñµo¤U±ªº¾ÌÃÒ¡C¥i¬O§Ú¤£·|°µ¤¤¶¡ªº»{ÃÒ¤¤¤ß¡A ^^; §¹¾ãªº¤T¼h®¼½ÆÂø ªº¡C¦Ó¥B¡A³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¥u¬O¡u¤£·|¡v ¥Î¨Óª½±µÃ±¾ÌÃÒ¡A¦Ó¤£¬O¡u¤£¯à¡v¥Î¨Óª½±µÃ±¾ÌÃÒ¡A³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ñªº¾ÌÃÒ¡A¤@¼Ë¦³®Ä¡C§ó¦óªp¡A§Ú̳q±`³£¥u¦³´X¥x ¦øªA¾¹¡A¥u»Ýn´XÓ¾ÌÃÒ´N¦n¡A¤£»Ýn±ÂÅv¦n´XÓ¤¤¶¡ªº»{ÃÒ¤¤¤ß¡A¨ÓÅý¥¦Ì ñ¾ÌÃÒ¡C©Ò¥H§ÚÌ´N¬Ù²¤¤F¤¤¶¡ªº»{ÃÒ¤¤¤ß¡Aª½±µ¥Î³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¨Óñµo¾ÌÃÒ (Certificate) ¡C
¨ä¹êÁÙ¦³¨âÓ¤£¨º»ò³Â·Ðªº°µªk¡C Apache mod_ssl ¦³ÀHªþ¤@Ó¡u¦L«×³Dªo ¤½¥q (Snake Oil) ¡vªº³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¡A¤º¦³¦L«× ³Dªo (Snake Oil CA) ªº Private Key ¡A¥i¥Hª½±µ¥Î¦L«×³Dªo »{ÃÒ¤¤¤ß (Snake Oil CA) ªº¦W¸q¨Óñµo¾ÌÃÒ¡C¥un¦b½sĶ apache ®É¡A make ¥H«á¥´ make certificate ¡A´N·|¦Û°Ê¥Î¦L«×³Dªo»{ÃÒ¤¤¤ß ¡Añµo Apache ºô¯¸©Ò»Ýªº¦øªA¾¹¾ÌÃÒ¤F¡C¥i¬O¡A°ò©ó¦w¥þ¤Wªº²z¥Ñ¡A©p¥u¯à °÷¥Î³o±iñ¥X¨Óªººô¯¸¾ÌÃÒ¡Aµ´¹ï¤£¥i¥H§â¦L«×³Dªo»{ÃÒ¤¤¤ß (Snake Oil CA) ¡A¥[¨ìµ{¦¡»{±oªº»{ÃÒ¤¤¤ß¤¤¡C¦]¬°¦L«×³D ªoªº Private Key ¬OÀHµÛ Apache mod_ssl ¤½¶}´²§Gªº¡A¥ô¦ó¤H¥un¤U¸ü Apache mod_ssl ¡Aùر´N·|¦³¦L«×³Dªoªº Private Key ¡A´N¥i¥H¥Î¦L«×³Dªo ªº¦W¸q¨Óñ¾ÌÃÒ¡A¦ÛºÙ¬°¬Y¬Y¤½¥q¡C¦L«×³Dªoªº¥i¾a«×¬O¹s¡Aµ´¹ï¤£n¥[¶iµ{ ¦¡¤¤¡C¡]©Ò¥H¤~¥s°µ¦L«×³Dªo Snake Oil ¡AÄF¤Hªº¡C¡^
¥t¤@Ó¤èªk¡A¬O¥u°µ¤@ӳ̰ª¼h»{ÃÒ¤¤¤ß (Root CA) ¡Aª½±µ ¥Î³oӳ̰ª¼h»{ÃÒ¤¤¤ß¡A¨Ó·í¦øªA¾¹ªº¾ÌÃÒ¡C¦]¬°³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¥»¨¡A¤]¬O¤@Ó¾ÌÃÒ¡A©Ò¥H·íµM¤]¥i¥H¥Î¡A¤@¼Ë¦³®Ä¡C³o®É Ô¡A³Ì°ª¼h»{ÃÒ¤¤¤ßªº©Ò¦³¤H¦WºÙ¡A´Nn¥Î¦øªA¾¹ªº¦WºÙ (www.abc.com) ¡A¦Ó ¤£¬O³æ¦ìªº¦WºÙ (ABC Corporation.) ¡C³oÓ¤èªk¡A¾A¦X¥u¦³¤@Ó¦øªA¾¹¡A¥u »Ýn¤@Ó¾ÌÃÒ¡A¦Ó¥B¤£¦b¥G¾ÌÃÒ¦WºÙªº¤H¡C¥Î Windows NT/2000 ªº Certificate Server ¾ÌÃÒ¦øªA¾¹¡A¥i¥H°µ¥X³oºØ¾ÌÃÒ¡C¦ý¦pªG¦³¦n´X»O¦øªA¾¹ ¡A¨CÓ¾ÌÃÒ³£n¤À§O¥h¥[¨ì¨C»O¹q¸£¤W¡A³oÓ¤èªk´N¤£¤j¤è«K¤F¡C
exit(¦^¥¿¤å)mv /usr/lib/ssl/openssl.cnf /etc/ssl ln -s /etc/ssl/openssl.cnf /usr/lib/ssl/openssl.cnf
(¦^¥¿¤å)setenv OPENSSL_CONF "/etc/ssl/openssl.cnf"
Y¥Î zsh µn¤J¡A½Ð§ï¥Î¡Gecho "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.cshrc echo "setenv OPENSSL_CONF \"/etc/ssl/openssl.cnf\"" >> ~/.cshrc
(¦^¥¿¤å)echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.zshenv echo "export OPENSSL_CONF=\"/etc/ssl/openssl.cnf\"" >> ~/.zshenv
¦b¨ä¦o§@·~¨t²Î (*BSD/UNIX) ¤W¡A¨BÆJ¦p¤U¡G./config shared --prefix=/usr --openssldir=/usr/share/ssl make make install
¦pªG¤£·Q¦Û¤v½sĶ¡B¦w¸Ë OpenSSL ¡A¥t¤@ӸѨM¤èªk¡A¥Ñºô¤¤¤H´£¨Ñ¡A«h¬OÁ× ¶} -out °Ñ¼Æ¡A§ï¥Î¿é¥X«¾É¦V¡G./config --prefix=/usr --openssldir=/usr/share/ssl make make install
Mandrake ©M Debian ªº openssl ®M¥ó¨S¦³³oÓ°ÝÃD¡C (¦^¥¿¤å)openssl rand 1024 > /etc/ssl/private/.rand
¦]¬° DSA ¨ú¶Ã¼Æ°Ñ¼Æn¨ú«Ü¤[¡A©Ò¥H OpenSSL ¤£ª½±µ°µ DSA Key ¡A¦Ó§â¨ú¥X¨Óªº DSA °Ñ¼Æ¦sÀÉ¡A¦A¥Î°Ñ ¼ÆÀɨӰµ DSA Key ¡A°µ¤U¤@²Õ Key ®É´N¥i¥H¥Î¦P¤@ӰѼÆÀÉ¡A ¥H¸`¬Ù®É¶¡¡C¤£¹L³oùاÚÌ¥u°µ¤@²Õ Key ¡A©Ò¥H°Ñ¼ÆÀɥιL´N¥i¥H§R¤F¡C (¦^¥¿¤å)# »s§@ DSA °Ñ¼ÆÀÉ openssl dsaparam -out /tmp/dsaparam 2048 # »s§@ DSA Private Key openssl gendsa -out /etc/ssl/private/myrootca.key /tmp/dsaparam chmod og-rwx /etc/ssl/private/myrootca.key # §R°£ DSA °Ñ¼ÆÀÉ rm -f /tmp/dsaparam
(¦^¥¿¤å)rm -f /tmp/myhost.req
(¦^¥¿¤å)cp /usr/lib/ssl/openssl.cnf ~/etc/ssl
(¦^¥¿¤å)setenv OPENSSL_CONF "$HOME/etc/ssl/openssl.cnf"
Y¥Î zsh µn¤J¡A½Ð§ï¥Î¡Gecho "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.cshrc echo "setenv OPENSSL_CONF \"$HOME/etc/ssl/openssl.cnf\"" >> ~/.cshrc
(¦^¥¿¤å)echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.zshenv echo "export OPENSSL_CONF=\"$HOME/etc/ssl/openssl.cnf\"" >> ~/.zshenv
¦b¨ä¦o§@·~¨t²Î (*BSD/UNIX) ¤W¡A¨BÆJ¦p¤U¡G./config shared --prefix=/usr --openssldir=/usr/share/ssl make make install
¦pªG¤£·Q¦Û¤v½sĶ¡B¦w¸Ë OpenSSL ¡A¥t¤@ӸѨM¤èªk¡A¥Ñºô¤¤¤H´£¨Ñ¡A«h¬OÁ× ¶} -out °Ñ¼Æ¡A§ï¥Î¿é¥X«¾É¦V¡G./config --prefix=/usr --openssldir=/usr/share/ssl make make install
Mandrake ©M Debian ªº openssl ®M¥ó¨S¦³³oÓ°ÝÃD¡C (¦^¥¿¤å)openssl rand 1024 > ~/etc/ssl/private/.rand
¦]¬° DSA ¨ú¶Ã¼Æ°Ñ¼Æn¨ú«Ü¤[¡A©Ò¥H OpenSSL ¤£ª½±µ°µ DSA Key ¡A¦Ó§â¨ú¥X¨Óªº DSA °Ñ¼Æ¦sÀÉ¡A¦A¥Î°Ñ ¼ÆÀɨӰµ DSA Key ¡A°µ¤U¤@²Õ Key ®É´N¥i¥H¥Î¦P¤@ӰѼÆÀÉ¡A ¥H¸`¬Ù®É¶¡¡C¤£¹L³oùاÚÌ¥u°µ¤@²Õ Key ¡A©Ò¥H°Ñ¼ÆÀɥιL´N¥i¥H§R¤F¡C (¦^¥¿¤å)# »s§@ DSA °Ñ¼ÆÀÉ openssl dsaparam -out ~/tmp/dsaparam 2048 # »s§@ DSA Private Key openssl gendsa -out ~/etc/ssl/private/myrootca.key ~/tmp/dsaparam chmod og-rwx ~/etc/ssl/private/myrootca.key # §R°£ DSA °Ñ¼ÆÀÉ rm -f ~/tmp/dsaparam
(¦^¥¿¤å)rm -f /tmp/myhost.req
³o¼Ë´N§â§Ú̪º»{ÃÒ¤¤¤ß¥[¶i usercerts.p7b ¤F¡C¤£nª½±µ¥h §ï¤½¥Îªº»{ÃÒ¤¤¤ß rootcerts.p7b ¡A³oÓÀɮׯdµ¹ Eudora ¦Û ¤v¥hºûÅ@¡C(¦^¥¿¤å)# ³Æ¥÷ìÀÉ®× mv usercerts.p7b usercerts-orig.p7b # §â DER ªº PKCS#7 ÀÉ¡A©î¦¨¤@±i¤@±iªº PEM ¾ÌÃÒ²M³æ openssl pkcs7 -print_certs -inform der \ -in usercerts-orig.p7b -out certslist.pem # §â§Ú̪º»{ÃÒ¤¤¤ß¥[¶i¨Ó cat /etc/ssl/certs/myrootca.crt >> certslist.pem # ±N¤@±i¤@±iªº PEM ¾ÌÃÒ²M³æ¡A²Õ¦X¦¨ PEM ªº PKCS#7 ÀÉ openssl crl2pkcs7 -nocrl -certfile certslist.pem > usercerts.pem # ±N PEM Âର DER openssl pkcs7 -in usercerts.pem -outform der -out usercerts.p7b # §R±¼¦h¾lªºÀÉ®× rm -f certslist.pem usercerts.pem
¥»¤å°Ñ¦Òªº¸ê®Æ¦³¡C SSL ©M X.509 §ÚÁÙ¨S¦³§¹¾ã¬Ý¹L¡C¦Ó¥Ø«eºô¸ô¤W¡A §Y¨Ï¬O^¤å¸ê®Æ¤]«Ü¤Ö¡C¤@¶}©l¡A§Ú¥u¯à±q¤@°ï¹s¹s´²´²ªººô¸ô°Q½×¡A©M OpenSSL ªº¤å¥ó¤¤¡A¦Û¤v«÷´ê¥X SSL ¾ÌÃÒªº°µªk¡C¦]¬°ºô¸ô¤W §ä¤£¨ì¤ñ¸û§¹¾ãªº SSL ¾ÌÃÒ»s§@±Ð¾Ç¡A©Ò¥H§Ú·Q§â¥¦¼g¥X¨Ó¡A ¶}Ó¥ý¾W¡C§Ú¨S¦³¬Ý§¹ SSL/X.509 ¡A¥u¬O¾¨¶qÅý§Ú°µ¥X¨Óªº¾Ì ÃÒ¡A¦b§Ú©Òª¾¹Dªº SSL µ{¦¡¤W¡A³£¶]±o°Ê¡C°µ¥X¨Ó¾ÌÃÒ¤£¤@©w §¹¥þ²Å¦X SSL/X.509 ¡A¤]¤£¤@©w¦b©Ò¦³ªº SSL µ{¦¡¤W³£¯à¥Î¡C
µM¦Ó¡A¤]¤£¬O¨C¤@ӲŦX SSL/X.509 ªº¾ÌÃÒ¡A´N¯à¦b©Ò¦³ªº SSL µ{¦¡¤W¥Î¡C¤£¨£±o¨CÓ SSL µ{¦¡³£§¹¾ã¤ä´© SSL/X.509 ¡A´N¹³ Opera ¥Ø«eÁÙ¤£¤ä´© DSA ¤@¼Ë¡C
¥»¤å²Ä¤@ª©¬O 2002-01-09 ~ 2002-01-13 ¶¡©Ò¼g¡C²Ä¤@ª©¼g§@ªº¥Øªº¡A¬O ·í®É¬°¤F·Q¦Û¤v°µ Root CA ¡]³o¼Ë¾ÌÃҬݰ_¨Ó¤ñ¸û¦n¬Ý¡^¡A·Q ¿ìªk¦bºô¸ô¤W¹s¸Hªº°Q½×¤¤¡A«÷´ê¥X Root CA ªº°µªk¡C¾ãÓ°µ ªk¦³ÂI½ÆÂø¡A©È¦Û¤v¤U¦¸nµo¾ÌÃҮɧѰO¡A©Ò¥H¼g¤U¨Ó¡A¶¶«K¼g¦¨ HOWTO ±Ð¾Ç ªº§Î¦¡¡A¥H§â³oÓª¾ÃѤÀ¨Éµ¹¤j®a¡C¦]¬°¥u¬O¬°¤F§ÖÂI°O¤UÁc½Æªº°µªk¡A¼g±o «ÜÜ«P¡A¥æ¥N¤]¤£²M¤£·¡¡C
³o¬O²Ä¤Gª©¡A¬O 2002-09-04 ~ 2002-09-14 ¶¡§ï¼gªº¡A·íªì§ï¼gªº¥Øªº¡A ¬O³o¨â¤TÓ¤ë¨Ó¡A¦¬¨ì¦n´X«Ê«H¸ß°Ý³o½g¤å³¹¡Aı±o¦Û¤v³o½g¤å³¹¡A¥æ¥N±o¤£ ²M¤£·¡¡A©Ò¥H«·s§ï¼g¡C¦]¦¹ì¥ý§ï¼gªº®ÉÔ¡AµÛ«¦b WHAT ©M WHY ªº»¡©ú¡A §â SSL/X.509 ¬[ºc¡A¥æ¥N±o¤ñ¸ûÄYÂÔ¡A¤]§â¸£¤lùØ·Qªº´X±i¬y µ{¹Ï¡A³£µ¹µe¥X¨Ó¡C¤£¹L¨ì«á¨Ó¡A HOW ªº³¡¥÷¡A¤]¤j´T«×¦a§ï¼g¡A«·s½s±Æ¬y µ{¡A¹êÅç¦UºØ±¡ªp¡A§ó¥¿´XÓ¿ù»~¡A§ïµ½ì¨Óªº³]©w¡A²Î¾ãÃã·JªºÂ½Ä¶¡A¥[¤W ¬yµ{ªº»¡©ú¡Cì¤å 2,931 ¦r¡A§ï¼g«á 18,430 ¦r¡A ^^; §ï¼gªº´T«×«Ü¤j¡C
·PÁ study-area ªººô¤¤¤H (netman) ¨ó§U®Õ¥¿¦n´X Ó¿ù»~¡B²¨º|¤§³B¡C
§Æ±æ§ï¼g«á¡A¯àÅý³o½g¤å³¹§ó¦n¡A§óÄYÂÔ¡A¤]§ó®e©ö¤J¤â¡C