¦p¦ó»s§@ SSL X.509 ¾ÌÃÒ¡H

¥Ø¿ý

  1. «e¨¥
  2. ­Y©p¬O root
    1. ³]©w OpenSSL ªºÀô¹Ò
    2. »s§@³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA)
      1. »s§@ Public/Private Key
      2. ¶ñ¼g¾ÌÃҥӽЮÑ
      3. ñµo¾ÌÃÒ
    3. »s§@¦øªA¾¹¥Îªº¾ÌÃÒ
      1. »s§@ Public/Private Key
      2. ¶ñ¼g¾ÌÃҥӽЮÑ
      3. ñµo¾ÌÃÒ
  3. ­Y©p¬O¤@¯ë¨Ï¥ÎªÌ
    1. ³]©w OpenSSL ªºÀô¹Ò
    2. »s§@³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA)
      1. »s§@ Public/Private Key
      2. ¶ñ¼g¾ÌÃҥӽЮÑ
      3. ñµo¾ÌÃÒ
    3. »s§@¦øªA¾¹¥Îªº¾ÌÃÒ
      1. »s§@ Public/Private Key
      2. ¶ñ¼g¾ÌÃҥӽЮÑ
      3. ñµo¾ÌÃÒ
  4. ³]©w¦øªA¾¹
    1. HTTP
      1. Apache
    2. POP3
      1. Qpopper
    3. SMTP
      1. Sendmail
  5. ³]©w§@·~¨t²Î
    1. MS-WINDOWS
  6. ³]©wÂsÄý¾¹
    1. Mozilla »P Netscape 6 ¥H«áªºª©¥»
    2. Internet Explorer
    3. Opera
    4. Lynx
  7. ³]©w¹q¤l¶l¥óµ{¦¡
    1. Mozilla »P Netscape 6 ¥H«áªºª©¥»
    2. Netscape 4 ¤Î§ó¦­ªºª©¥»
    3. Outlook Express 6
    4. Outlook Express 5.5
    5. Outlook Express 4/5
    6. Eudora 5.1 ¥H«áªºª©¥»
    7. Becky!
    8. Opera ¶l¥ó
  8. Æ[©À°Q½×
    1. SSL/X.509 ²¤¶
    2. ¾ÌÃÒµL®ÄªºÄµ§i
    3. ¸ê®Æ¡H¤°»ò¸ê®Æ¡H
    4. ©Ò¥H SSL ´N¦w¥þ¤FÅo¡H
    5. ¤°»ò¬O¼Æ¦ìñ¦W¡H
    6. ¤°»ò¬O¾ÌÃÒ¡H
    7. ¤°»ò¬O»{ÃÒ¤¤¤ß¡H
    8. ¤°»ò¬O³Ì°ª¼h»{ÃÒ¤¤¤ß¡H
    9. ¦p¦ó¶ñ¼g¾ÌÃҥӽЮÑ
    10. X.509 ¾ÌÃÒ¨î«×ªºÀË°Q
    11. ¨ä¦o SSL/X.509 ¾ÌÃÒªº°µªk
  9. µùÄÀ
  10. °Ñ¦Ò¸ê®Æ
  11. «á°O

«e¨¥

ª©Å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ñ¦W­I®Ñªº ³Ì°ª¼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¤å¥½¡C­Y©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¤£¤@©w­n¬O root ¡C¦ý¦pªG°µ¥X¨Óªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¬O¾ã­Ó²Õ´ñµo¾ÌÃÒ ­n¥Îªº¡A«Øij¥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«Øij¥H root ªºÅv­­¨Ó°µ¡C

­Y©p¬O root ¡A­n¦w¸Ëµ¹¾ã­Ó²Õ´¨Ó¥Î¡G

³]©w OpenSSL ªºÀô¹Ò

­Y©p¬O¥Î¤W­z¤èªk¦w¸Ë¡G

./config --prefix=/usr --openssldir=/usr/share/ssl

©Î¸Ë Red Hat ªº RPM ¡A OpenSSL ªº³]©wÀɥؿý·|¦b /usr/share/ssl ¡C­Y©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¡C­Y©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

»s§@³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA)

­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

°²³]©p­n°µªº³Ì°ª¼h»{ÃÒ¤¤¤ß¥s°µ myrootca ¡C

1. »s§@ Private Key ¡]¤Î Public Key ¡^

³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

2. ¶ñ¼g¾ÌÃҥӽЮÑ

¾ÌÃҥӽЮѡ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­nª½±µ¥Î³Ì°ª¼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

3. ñµo¾ÌÃÒ

³Ì°ª¼h»{ÃÒ¤¤¤ß¦]¬°¨S¦³¤W¯Å¤F¡A¨S¦³¤H¯àµ¹¥¦Ã±¦W¡A¥u¯à¦Û¤vµ¹¦Û¤vñ¦W ¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O³Ì°ª¼h»{ÃÒ¤¤¤ß¡H¡v¡C

³Ì°ª¼h»{ÃÒ¤¤¤ß³Ì¦n¥Ã»·¤£­n¹L´Á¡C­n¬O¹L´Á­«Ã±¡A©Ò¦³­ì¨Ó¥¦Ã±µoªº¾ÌÃÒ ¤]³£­n­«Ã±¡A©Ò¦³ SSL µ{¦¡¤]³£­n­«·s³]©w¡C©Ò¥H§Ú­Ì®Ä´Áñ 7305 ¤Ñ¡]¤j¬ù 20¦~¡^¡C­Y¤£³]®Ä´Áªº¸Ü¡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 ¡A­n¤p¤ß¦s¦n«O Å@¡A¥u¦³ root ¤~¯àŪ¡AÅv­­«Øij 0444 ¡C myrootca.crt ¬O Public Key ¾ÌÃÒ¡A­n¾¨¶q´²¥X¥h ¡AÅý¤j®a¥Î¡C³Ì¦n©ñ¨ì¤º³¡ºô¸ô¤W¡A©Î©ñ¨ìºô¯¸¤W¡AÅý¤j®a¦Û¤v¤U¸ü¡A¦Û¤v¥[ ¶i¥h¡C

»s§@¦øªA¾¹¥Îªº¾ÌÃÒ

°²³]©p­n°µ myhost ªº¾ÌÃÒ¡G

1. »s§@ Private Key ¡]¤Î Public Key ¡^

³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¡C­n¬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

2. ¶ñ¼g¾ÌÃҥӽЮÑ

¾ÌÃҥӽЮѡ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

3. ¥Î³Ì°ª¼h»{ÃÒ¤¤¤ßñµo¾ÌÃÒ[8]

¦øª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«ØijÅv­­¬° 0400 ¡F Public Key ¾ÌÃÒ¦b /etc/ssl/certs/myhost.crt ¡A­n¾¨¶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

­Y©p¬O¤@¯ë¨Ï¥ÎªÌ¡G

³]©w OpenSSL ªºÀô¹Ò

# ³]©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

»s§@³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA)

­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

°²³]©p­n°µªº³Ì°ª¼h»{ÃÒ¤¤¤ß¥s°µ myrootca ¡C

1. »s§@ Private Key ¡]¤Î Public Key ¡^

³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¡C­n¬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

2. ¶ñ¼g¾ÌÃҥӽЮÑ

¾ÌÃҥӽЮѡ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©p­nª½±µ¥Î³Ì°ª¼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

3. ñµo¾ÌÃÒ

³Ì°ª¼h»{ÃÒ¤¤¤ß¦]¬°¨S¦³¤W¯Å¤F¡A¨S¦³¤H¯àµ¹¥¦Ã±¦W¡A¥u¯à¦Û¤vµ¹¦Û¤vñ¦W ¡C¸Ô±¡½Ð°Ñ¦Ò¡u¤°»ò¬O³Ì°ª¼h»{ÃÒ¤¤¤ß¡H¡v¡C

³Ì°ª¼h»{ÃÒ¤¤¤ß³Ì¦n¥Ã»·¤£­n¹L´Á¡C­n¬O¹L´Á­«Ã±¡A©Ò¦³­ì¨Ó¥¦Ã±µoªº¾ÌÃÒ ¤]³£­n­«Ã±¡A©Ò¦³ SSL µ{¦¡¤]³£­n­«·s³]©w¡C©Ò¥H§Ú­Ì®Ä´Áñ 7305 ¤Ñ¡]¤j¬ù 20¦~¡^¡C­Y¤£³]®Ä´Áªº¸Ü¡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 ¡A­n¤p¤ß¦s¦n«O Å@¡A¥u¦³¦Û¤v¤~¯àŪ¡AÅv­­«Øij 0400 ¡C myrootca.crt ¬O Public Key ¾ÌÃÒ¡A­n¾¨¶q´²¥X¥h ¡AÅý¤j®a¥Î¡C³Ì¦n©ñ¨ìºô¯¸¤W¡AÅý¤j®a¦Û¤v¤U¸ü¡A¦Û¤v¥[¶i¥h¡C

»s§@¦øªA¾¹¥Îªº¾ÌÃÒ

°²³]©p­n°µ myhost ªº¾ÌÃÒ¡G

1. »s§@ Private Key ¡]¤Î Public Key ¡^

³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

2. ¶ñ¼g¾ÌÃҥӽЮÑ

¾ÌÃҥӽЮѡ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

3. ¥Î³Ì°ª¼h»{ÃÒ¤¤¤ßñµo¾ÌÃÒ[8][15]

¦øª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 ¡A­n¤p¤ß¦s¦n«OÅ@¡A¥u¦³¦Û¤v¤~¯àŪ¡A«ØijÅv­­¬° 0400 ¡F Public Key ¾ÌÃÒ¦b ~/etc/ssl/certs/myhost.crt ¡A­n¾¨¶q´²¥X¥h ¡AÅý¤j®a¥Î¡C³o²Õ Public/Private Key ¾ÌÃÒ¥i¥H°µ¬° myhost ªº SSL ¾ÌÃÒ¡A¥Î¦b HTTPS ©Î POP3S/TLS/SSL ¤W¡C

³]©w¦øªA¾¹

±`¨£ªº 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¡A­n§â 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

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 ¡A­n¶} HTTPS(443) ¡C

Apache

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

POP3 ¥i¥H¶]¨âºØ¤è¦¡¡G¶Ç²Î¥Î POP3S(995) °ð±M¶] SSL ¡A©Î¬O¥Î TLS ¡A¦b­ì¨Óªº POP3(110) ¤W¡A¥[¤W STARTTLS ªº¥\¯à¡C

Qpopper

­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ªG­n¦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

SMTP ¬°¤FÅý¶l¥ó¦øªA¾¹¶¡¦¬µo«H®É¡A©¼¦¹¬Û®e¡A©Ò¥H¥Î TLS ¡A¤£¥t¶} TCP °ð¡C

Sendmail

¬°Åý¶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 ®É¡A­n¦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ÁÙ¬O­n¥Ñ 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­­¡A­nŪ 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
......

³]©w§@·~¨t²Î

¦³¨Ç§@·~¨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

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¥u­n§â§Ú­Ì¦Û»sªº »{ÃÒ¤¤¤ß¥[¶i¨Ó¡A³o¨Çµ{¦¡³£¥i¥H¥Î±o¨ì¡C

³]©wÂsÄý¾¹

Mozilla »P Netscape 6 ¥H«áªºª©¥»

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

Internet Explorer ¨Ï¥Î WINDOWS ¨t²Îªº¾ÌÃÒ®w¡A©p¥u­n§â»{ÃÒ¤¤¤ß¥[¶i ¨t²Îªº¾ÌÃÒ®w´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦Ò¡u³]©w MS-WINDOWS¡v¡C

Opera

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

Lynx ºI¦Ü¥Ø«e¬°¤î (2.8.4) ¡A¤£·|Àˬd¦øªA¾¹ªº SSL ¾ÌÃÒ¡C

³]©w¹q¤l¶l¥óµ{¦¡

Mozilla »P Netscape 6 ¥H«áªºª©¥»

­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¥ªÃä ¿ï¾Ü©p­n³]©wªº±b¸¹¤Uªº [¦øªA¾¹³]©w] ¡Cµøµ¡¥kÃ䪺 [¦øªA¾¹¦WºÙ¡G] ¤¤¡A­n¶ñ¤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¥u­n§â»{ÃÒ¤¤¤ß¥[¶i Mozilla ©Î Netscape 6 ´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦ÒMozilla »P Netscape 6 ªº³]©w¡C

Netscape 4 ¤Î§ó¦­ªºª©¥»

Netscape 4 ¤Î§ó¦­ªºª©¥»¤£¤ä´© SSL ¡C

Outlook Express 6

­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):] ¤¤¡A­n¶ñ¤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):] ¤¤¡A­n¶ñ¤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

Outlook Express 5.5

­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):] ¤¤¡A­n¶ñ¤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):] ¤¤¡A­n¶ñ¤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 ¥u­n§â»{ÃÒ¤¤¤ß¥[¶i¨t²Îªº¾ÌÃÒ®w´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦Ò¡u³]©w MS-WINDOWS¡v¡C

Outlook Express 4 ©Î 5

­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):] ¤¤¡A­n¶ñ¤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):] ¤¤¡A­n¶ñ¤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 5.1 ¥H«áªºª©¥»

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] ¡A­n¥ý¥Î 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:] ¤¤¡A­n¶ñ¤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:] ¤¤¡A­n¶ñ¤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§Ú­Ìªº»{ÃÒ¤¤¤ß¡A­n¥ý¦¬¤@¦¸«H¡Cµøµ¡¤U­±·|Åã¥Ü [SSL Negotiation Failed: Certificate Error: Cert Chain not trusted. ...] ªº¿ù»~°T®§¡C¨Ì«e­z¤è¦¡¦^¨ì [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!

Becky! ¥Ø«e¤£¤ä´© SSL ¡C

Opera ¶l¥ó

­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¥u­n§â»{ÃÒ¤¤¤ß¥[ ¶i Opera ´N¥i¥H¤F¡C¸Ô±¡½Ð°Ñ¦Ò Opera ªº³]©w¡C

Æ[©À°Q½×

SSL/X.509 ²¤¶

X.509 ªºª÷¦r¶ð¨î«×
X.509 ªºª÷¦r¶ð¨î«×

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¦ý¥u­n¨º­Ó¾ÌÃÒ¤W¡A¦³¦Û¤v»{±oªº»{ÃÒ¤¤¤ß (CA) ñ¦W«OÃÒ¹L¡A¨º­Ó¾ÌÃÒ´N¨S¦³°ÝÃD¡C

·íµ{¦¡¸I¨ì¦X®æªº SSL ¾ÌÃÒ
·íµ{¦¡¸I¨ì¦X®æªº SSL ¾ÌÃÒ

¦ý¦pªG¨º­Ó¦øªA¾¹¾ÌÃÒ¤W¡A¨S¦³¦Û¤v»{±oªº»{ÃÒ¤¤¤ß (CA) ñ¦W«OÃÒ¹L¡A¦øªA¾¹¾ÌÃÒ´N¦³¥i¯à¦³°ÝÃD¡A·|¥X²{¾ÌÃÒµL®ÄªºÄµ§i¡C

·íµ{¦¡¸I¨ì¦³°ÝÃDªº SSL ¾ÌÃÒ
·íµ{¦¡¸I¨ì¦³°ÝÃDªº SSL ¾ÌÃÒ

¾ÌÃÒµL®ÄªºÄµ§i

¥»¤å²Ä¤@¨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

·íµ{¦¡¸I¨ì§Ú­Ì¦Û»sªº»{ÃÒ¤¤¤ß
·íµ{¦¡¸I¨ì§Ú­Ì¦Û»sªº»{ÃÒ¤¤¤ß

­Y¤£·Q¬Ý¨ì³o­Óĵ§i¡A´N­n¥ýÅýµ{¦¡»{±o§Ú­Ì¦Û¤vªº»{ÃÒ¤¤¤ß (CA) ¡C³o®É¡A²Ä¤G¨Bñµoªº¾ÌÃÒ (Certificate) ¡Aµ{¦¡»{±o¤W ­±»{ÃÒ¤¤¤ß (CA) ªºÃ±¦W¡A´N¤£·|¦A¥X²{¾ÌÃÒµL®ÄªºÄµ§i¡C

§â§Ú­Ì¦Û¤vªº»{ÃÒ¤¤¤ß¥[¤W¥h
§â§Ú­Ì¦Û¤vªº»{ÃÒ¤¤¤ß¥[¤W¥h

¸Ô²Ó°µª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 ­Y­n¥Î¦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¡C­Y¯uªº«Ü¦b·N SSL ¾ÌÃÒµL®Äĵ§i ªº°ÝÃD¡A¤S»Ý­n¦b¤½¶}ªººô¯¸¨Ï¥Î SSL ¡A½Ð¦V¦U®añÃÒ¤½¥q¥Ó ½Ð¡A¦~¶O¤j·§´X¸U¤¸»O¹ô¡C

¸ê®Æ¡H¤°»ò¸ê®Æ¡H

¡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¡A­n¶Ç¸ê®Æµ¹©pªº ¸Ü¡A¥u­n¥Î©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ªk­n¥Îªº 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

©Ò¥H SSL ´N¦w¥þ¤FÅo¡H

¡u©Ò¥H¡A¥u­n¹ï¤è 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¤]¤@©w­n«O«ù§Ù¤ß¡A°£¤F­n¦Ò¼{©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

¤°»ò¬O¼Æ¦ìñ¦W¡H

¼Æ¦ìñ¦W¬O¥Î Private Key ¡A°w¹ï¬Y¤@¬q¸ê®Æ¡A¥Î Digest Hash ºtºâªk¡] ¦p SHA1 ¡^°µ¥X¨Óªº¤@¬q Digest ºK­n½X¡C¥u­n­ì¨Óªº¸ê®Æ¦³©Ò¤£¦P¡Aºtºâ¥X ¨Óªº Digest ºK­n½X´N·|¸òµÛÅÜ°Ê¡C¥Î Private Key °µ¥X¨Óªº Digest ºK­n½X ¡A¥i¥H¥Î¥¦ªº Public Key ¨ÓÀˬd¡C¥u­n¥Î¥¦ªº Public Key ¡AÀˬd Digest ºK­n½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¤é«á¥u­n¦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¥u­nÀˬ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¾ÌÃÒ¡H

¾ÌÃÒªº­ì¤å¬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¥u­nÀˬd ¾ÌÃÒ¤W»{ÃÒ¤¤¤ß (CA) ªºÃ±¦WµL»~¡A§Y¥Nªí³o­Ó»{ÃÒ¤¤¤ß (CA) ¬d®Ö¹L³o­Ó¾ÌÃÒ (Certificate) ¡A¾ÌÃÒ¤Wªº¸ê®ÆµL»~¡C

¤°»ò¬O»{ÃÒ¤¤¤ß¡H

»{ÃÒ¤¤¤ßªº­ì¤å¬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¥u­nÀˬ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

¤°»ò¬O³Ì°ª¼h»{ÃÒ¤¤¤ß¡H

³Ì°ª¼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 µ{¦¡¤@©w­n¦n¦n«OÅ@³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¤@©w­n¦A¤T½T»{¡A¤£ ¥i¥HÀH«KÅý¤H¤â°Ê¥[¶i³Ì°ª¼h»{ÃÒ¤¤¤ß¡C

¦p¦ó¶ñ¼g¾ÌÃҥӽЮÑ

¦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 []:
  1. ©Ò¦³¸ê®Æ³£­n¶ñ­^¤å (ASCII ¦r¶°) ¡C X.509 ¾ÌÃÒ¥u±µ¨ü ­^¤å ASCII ¦r¶°ªº¦r¡C
  2. Country Name ¤@©w­n¬O¤j¼gªºÂù¦r¥À°ê½X¡A»OÆW¬O TW ¡A»OÆW¥H¥~ªº¦a¤è¡A½Ð°Ñ¦Ò ISO-3166 ªº¼Ð·ÇÂù¦r¥À°ê½X¡C
  3. State Name ¬O°ê¦W©Î¬Ù¦W¡A¤£¥i¥H¶ñ°ê½X¡C»OÆW¶ñ Taiwan §Y¥i¡C
  4. Locality Name ¬O¦a¦W¡A¶ñ©Ò¦b¦a¿¤¥«¦W§Y¥i¡C
  5. Organization Name ¬O²Õ´³æ¦ì¦WºÙ¡A¶ñ¤½¥q¦æ¸¹¡A©Î¾Ç®Õ §½³Bªº¦WºÙ¡C
  6. Organizational Unit Name ¬O³¡ªù¦WºÙ¡A¶ñ¤½¥q³¡ªù¦WºÙ ¡A©Î¾Ç®Õ§½³Bªº³æ¦ì¦WºÙ¡C
  7. Common Name ¬O¾ÌÃÒªº¦WºÙ¡C­Y¬O³Ì¤W¼h¾ÌÃÒ¾÷ºc¡A½Ð¶ñ¤W «e­±¶ñªº²Õ´³æ¦ì¦WºÙ¡A«á­±¥i¥H¥[¤W RSA/2048 ¡A¥H«K¤é«á¿ë »{¾ÌÃÒªº©Ê½è¡C­Y¬O¦øªA¾¹¾ÌÃÒ¡A½Ð¶ñ¤W¦øªA¾¹ªº¥þ¦W (www.abc.com) ¡C­Y¬O E-mail ¾ÌÃÒ¡A½Ð¶ñ¤W©pªº E-mail ¡C
  8. E-mail Address ¬O¥Ó½Ð³æ¦ìªº³sµ¸«H½c¡A½Ð¶ñ¤W©pªºÁpµ¸ ¥Î E-mail ¡C
  9. A challenge password ¬O¥Ó½Ð®Ñªº±K½X¡C¤£¹L¥Ó½Ð®Ñ¤£¥Î ³]±K½X¡A©Ò¥H¤£¶ñ¡C
  10. An optional company name ¬O¾ÌÃÒ¥N¿ì¤½¥qªº¦WºÙ¡A¤]¤£ ¥Î¶ñ¡C

X.509 ¾ÌÃÒ¨î«×ªºÀË°Q

X.509 ¾ÌÃÒ¨î«×¡A¬O¾a¨Æ¥ý»{±o¤@¨Ç¥i¾aªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¦A¤@¼h¤@¼hñ µo¤U¨Óªºª÷¦r¶ð«¬µ²ºc¡C³o¼Ëªº¨î«×¡A«Ü¹³«H¥Î¥d¨î«×©Î¨­¥÷ÃÒ¨î«×¡G

X.509 ¨î«×
X.509 ¨î«×
«H¥Î¥d¨î«×
«H¥Î¥d¨î«×
¨­¥÷ÃÒ¨î«×
¨­¥÷ÃÒ¨î«×

³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¥u­n§Ú ­Ì¹w¥ý»{±o´X®a¥i¾aªº³Ì°ª¼h»{ÃÒ¤¤¤ß´N¦n¤F¡C¸I¨ì¤£»{ÃѪº Public Key ®É ¡A¥u­n¤@¼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¤@¦~¦~¶O­n¦n´X¸U¡A´¶³q¤H©Î¤¤¤p¥ø·~¡A»Ý­n SSL ºô¯¸¥[±Kªº®É­Ô¡A®Ú¥»´N­t¾á¤£°_¡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¤@©w­n¥Î 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§Ú¥u­n½Ð©p¨Ó»{¦o´N¦n¤F¡C

PGP ªº«H¥ôºô
PGP ªº«H¥ôºô

¦b PGP «H¥ôºô¼Ò¦¡¤U¡A§Ú­Ì¤£»Ý­n¤@­Ó³Ì°ª¼h»{ÃÒ¤¤¤ß¡Aµ¹¨C­Ó¤H®Öµo¾Ì ÃÒ¡A¤~¯à¨ú±o Public Key ªº¦w¥þ©Ê¡C§Ú­Ì¥u­n«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¥u­n¯à°÷±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¡A­n¥Î X.509 ¡C

¨ä¦o SSL/X.509 ¾ÌÃÒªº°µªk

¦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¥u­n¦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¥u­n¤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´N­n¥Î¦øª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

µùÄÀ

  1. FHS ¬O«ü Filesystem Hierarchy Standard Àɮרt²Î¶¥¼h¼Ð·Ç¡A¬O¤@­Ó Unix ¤U¡A¥Ø¿ý¤ÎÀɮצs©ñ¦ì¸m ªº¼Ð·Ç³W©w¡A¥H¤è«K¨t²ÎºÞ²z­ûºÞ²z¡A¤è«K¤£¦Pµ{¦¡¶¡¤¬¬Û·f°t¾ã¦X¡C¥Ø«e¤j ¦h¼Æ Linux ª©¥»¡]¦p Debian ¡B Red Hat ¡B Mandrake µ¥¡^³£¤w¤ä´© FHS ¡C§ó¶i¤@¨Bªº¸ê®Æ½Ð°Ñ¦Ò FHS ªººô¯¸ http://www.pathname.com/fhs/ ¡C (¦^¥¿¤å)
  2. Opera ºI¦Ü¥Ø«e¬°¤î (6.05) ¡A¥u¤ä´© RSA ¡A¤£¤ä´© DSA ¡C (¦^¥¿¤å)
  3. ¦b Mandrake ¤U¸Ë RPM ®É¡A½Ð§ï¥Î¡G
    mv /usr/lib/ssl/openssl.cnf /etc/ssl
    ln -s /etc/ssl/openssl.cnf /usr/lib/ssl/openssl.cnf
    
    (¦^¥¿¤å)
  4. ³o¬O bash ©Î zsh ªº«ü¥O¡C csh ©Î tcsh ¤U¡A½Ð§ï¥Î¡G
    setenv OPENSSL_CONF "/etc/ssl/openssl.cnf"
    
    (¦^¥¿¤å)
  5. ³o¼Ë¥H«áµn¤Jªº®É­Ô¡A³£¯à°÷¦Û°Ê³]©w OPENSSL_CONF ¡C ³o¬O¥Î bash µn¤Jªº±¡§Î¡A­Y¥Î csh ©Î tcsh µn¤J¡A½Ð§ï¥Î¡G
    echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.cshrc
    echo "setenv OPENSSL_CONF \"/etc/ssl/openssl.cnf\"" >> ~/.cshrc
    
    ­Y¥Î zsh µn¤J¡A½Ð§ï¥Î¡G
    echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.zshenv
    echo "export OPENSSL_CONF=\"/etc/ssl/openssl.cnf\"" >> ~/.zshenv
    
    (¦^¥¿¤å)
  6. ¡]·PÁºô¤¤¤H (netman) ´£¨Ñ¡^­Y©p¦w¸Ëªº¬O Red Hat ªº openssl RPM ¡A¦b³oùØ·|¥X¤@ÂI°ÝÃD¡C Red Hat ªº openssl °µ rand «ü¥O¡A °t¦X -out °Ñ¼Æ®É¡A°Ñ¼Æ¸ÑªR·|¥X¿ù¡AµLªk°õ¦æ¡C¥Ø«e§ÚÁÙ¨S¦³ ¬Ý¨ìºô¸ô¤W¦³¤H´£¹L³o¥ó¨Æ¡C¸Ñ¨M¤èªk¤§¤@¡A¬O¦Û¤v½sĶ¡B¦w¸Ë OpenSSL ¡C³o ¨ä¹ê«Ü²³æ¡C¦b Linux ¤W¡A¨BÆJ¦p¤U¡G
    ./config shared --prefix=/usr --openssldir=/usr/share/ssl
    make
    make install
    
    ¦b¨ä¦o§@·~¨t²Î (*BSD/UNIX) ¤W¡A¨BÆJ¦p¤U¡G
    ./config --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
    openssl rand 1024 > /etc/ssl/private/.rand 
    
    Mandrake ©M Debian ªº openssl ®M¥ó¨S¦³³o­Ó°ÝÃD¡C (¦^¥¿¤å)
  7. ­Y­n°µ¦¨ DSA Key¡A½Ð§ï¥Î¡G
    # »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
    
    ¦]¬° 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 (¦^¥¿¤å)
  8. ­Y©pªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A©ñ¦b¥t¤@»O¦øªA¾¹¤W¡A½Ð±N /tmp/myhost.req ½Æ»s¨ì¨º»O¦øªA¾¹¤Wªº /tmp/myhost.req ¡Aµn¤J¨º»O¦øªA¾¹¤W¡A¦AÄ~Äò¶i ¦æ¡C (¦^¥¿¤å:root/¨Ï¥ÎªÌ)
  9. ¦pªG©p­ì¨Ó¬O¦b¥t¤@»O¦øªA¾¹°µ³o²Õ Public/Private Key ªº¡A§â /etc/ssl/certs/myhost.crt ½Æ»s¨ì­ì¨Óªº ¦øªA¾¹¤Wªº /etc/ssl/certs/myhost.crt ¡A´N¥i¥H ¥Î¤F¡C°O±o­n¦^¨ì­ì¨Óªº¦øªA¾¹¤W¡A§â­ì¨Ó¦øªA¾¹¤Wªº¾ÌÃÒ¥Ó½Ð®Ñ /tmp/myhost.req ¤]§R±¼¡C
    rm -f /tmp/myhost.req
    
    (¦^¥¿¤å)
  10. ¦b Mandrake ¤U¸Ë RPM ®É¡A½Ð§ï¥Î¡G
    cp /usr/lib/ssl/openssl.cnf ~/etc/ssl
    
    (¦^¥¿¤å)
  11. ³o¬O bash ©M zsh ªº«ü¥O¡C csh ©Î tcsh ¤U¡A½Ð§ï¥Î¡G
    setenv OPENSSL_CONF "$HOME/etc/ssl/openssl.cnf"
    
    (¦^¥¿¤å)
  12. ³o¼Ë¥H«áµn¤Jªº®É­Ô¡A³£¯à°÷¦Û°Ê³]©w OPENSSL_CONF ¡C ³o¬O¥Î bash µn¤Jªº±¡§Î¡A­Y¥Î csh ©Î tcsh µn¤J¡A½Ð§ï¥Î¡G
    echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.cshrc
    echo "setenv OPENSSL_CONF \"$HOME/etc/ssl/openssl.cnf\"" >> ~/.cshrc
    
    ­Y¥Î zsh µn¤J¡A½Ð§ï¥Î¡G
    echo "# OpenSSL ³]©wÀɪº¦ì¸m" >> ~/.zshenv
    echo "export OPENSSL_CONF=\"$HOME/etc/ssl/openssl.cnf\"" >> ~/.zshenv
    
    (¦^¥¿¤å)
  13. ¡]·PÁºô¤¤¤H (netman) ´£¨Ñ¡^­Y©p¦w¸Ëªº¬O Red Hat ªº openssl RPM ¡A¦b³oùØ·|¥X¤@ÂI°ÝÃD¡C Red Hat ªº openssl °µ rand «ü¥O¡A °t¦X -out °Ñ¼Æ®É¡A°Ñ¼Æ¸ÑªR·|¥X¿ù¡AµLªk°õ¦æ¡C¥Ø«e§ÚÁÙ¨S¦³ ¬Ý¨ìºô¸ô¤W¦³¤H´£¹L³o¥ó¨Æ¡C¸Ñ¨M¤èªk¤§¤@¡A¬O¦Û¤v½sĶ¡B¦w¸Ë OpenSSL ¡C³o ¨ä¹ê«Ü²³æ¡C¦b Linux ¤W¡A¨BÆJ¦p¤U¡G
    ./config shared --prefix=/usr --openssldir=/usr/share/ssl
    make
    make install
    
    ¦b¨ä¦o§@·~¨t²Î (*BSD/UNIX) ¤W¡A¨BÆJ¦p¤U¡G
    ./config --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
    openssl rand 1024 > ~/etc/ssl/private/.rand 
    
    Mandrake ©M Debian ªº openssl ®M¥ó¨S¦³³o­Ó°ÝÃD¡C (¦^¥¿¤å)
  14. ­Y­n°µ¦¨ DSA Key¡A½Ð§ï¥Î¡G
    # »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
    
    ¦]¬° 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 (¦^¥¿¤å)
  15. ­Y©pªº³Ì°ª¼h»{ÃÒ¤¤¤ß¡A¬O¥Ñ root ºÞ²z¡A ½Ð±µ¨ì root ªº²Ä¤T¨BÆJ¡C (¦^¥¿¤å)
  16. ¦pªG©p­ì¨Ó¬O¦b¥t¤@»O¦øªA¾¹°µ³o²Õ Public/Private Key ªº¡A§â ~/etc/ssl/certs/myhost.crt ½Æ»s¨ì­ì¨Ó ªº¦øªA¾¹¤Wªº ~/etc/ssl/certs/myhost.crt¡A´N¥i ¥H¥Î¤F¡C°O±o­n¦^¨ì­ì¨Óªº¦øªA¾¹¤W¡A§â­ì¨Ó¦øªA¾¹¤Wªº¾ÌÃÒ¥Ó½Ð®Ñ /tmp/myhost.req ¤]§R±¼¡C
    rm -f /tmp/myhost.req
    
    (¦^¥¿¤å)
  17. ³oùØ MS-WINDOWS §â¡u³Ì°ª¼h»{ÃÒ¤¤¤ß (Root CA) ¡vĶ¦¨¡u®Ú¥Ø¿ý¾ÌÃÒ±ÂÅv¡v¡A§â¡u»{ÃÒ¤¤¤ß (CA) ¡vĶ¦¨¡u¾ÌÃÒ±ÂÅv¡v©Î¡u¤¤Ä~¾ÌÃÒ±ÂÅv¡v¡A³£¬O³v¦r½Ķ ªºµ²ªG¡A§¹¥þ¤£ª¾©Ò¤ª¡A½Ķ¤§¤j§Ò¡A§Ù¤§¡C(¦^¥¿¤å)
  18. ¨ì Mozilla 1.1 ª©¬°¤î¡A Mozilla §â¡u¾ÌÃÒ (Certificate) ¡vĶ¦¨¡u»{ÃÒ¡v¡A§â¡u»{ÃÒ¤¤¤ß (CA) ¡vĶ¦¨¡u ¬dÃÒ¡v¡A¤]¬O¦³°ÝÃDªºÄ¶ªk¡A¥B¤£²Å¥Ø«eªº³qĶ¡C§Ú¤w¸ò Mozilla ¤¤¤å¤Æªº§@ ªÌªL¥°¼w¤Ï¬M¹L³o­Ó°ÝÃD¡A¥L©Ó¿Õ©ó 1.0.1 ª©«á­×¥¿¡C(¦^¥¿¤å)
  19. ¹ê»ÚÀx¦sªº¦a¤è¡A¦b Mozilla ¨Ï¥ÎªÌ³]©wÀɥؿý¤Uªº cert7.db ¡A®æ¦¡¬O Berkeley DB ¡C(¦^¥¿¤å)
  20. §ÚÁÙ¨S§ä¨ìª½±µ¶}±Ò [Certificate Infomation Manager] ªº¤èªk¡C¦pªG¦³¤Hª¾¹D¡A·Ð½Ð§i¶D§Ú¡C (¦^¥¿¤å)
  21. ¹ê»ÚÀx¦sªº¦a¤è¡A¤½¥Îªº»{ÃÒ¤¤¤ß¦b Eudora µ{¦¡¥Ø¿ý¤U ªº rootcerts.p7b ¡A­Ó¤Hªº»{ÃÒ¤¤¤ß¦b Eudora «H½c¥Ø¿ý¤Uªº usercerts.p7b ¡A®æ¦¡¬O¼Ð·Ç¾ÌÃҮ榡 DER ªº PKCS#7 ÀÉ¡C(¦^¥¿¤å)
  22. ­n¥ý¥¢±Ñ¤@¦¸¡A¤~¯à¥h³]©w¡A¨ä¹ê®¼Äøªº¡C¥t¤@­Ó¡u¤ñ¸û ¤£¨º»ò·MÄøªº¤èªk¡v¡A´N¬Oª½±µ¥h§ï usercerts.p7b ¡C usercerts.p7b ¬O¼Ð·Ç¾ÌÃҮ榡 PKCS#7 ÀÉ¡A¥i¥H¥Î OpenSSL ³B²z¡G
    # ³Æ¥÷­ìÀÉ®×
    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
    
    ³o¼Ë´N§â§Ú­Ìªº»{ÃÒ¤¤¤ß¥[¶i usercerts.p7b ¤F¡C¤£­nª½±µ¥h §ï¤½¥Îªº»{ÃÒ¤¤¤ß rootcerts.p7b ¡A³o­ÓÀɮׯdµ¹ Eudora ¦Û ¤v¥hºûÅ@¡C(¦^¥¿¤å)

°Ñ¦Ò¸ê®Æ

  1. SSL: Netscape Security Documentation, Introduction to SSL, How SSL Works, SSL Protocol v3.0
  2. X.509: RFC 3280, RFC 2459 ¡]ª©¡^
  3. OpenSSL: OpenSSL, openssl(1), x509(1), req(1), ca(1)
  4. PGP: GnuPG, PGPi, PGP, Introduction to Cryptography ¡] PDF ÀÉ, PGP ªº­ì§@ªÌ Phil Zimmermann §@¡^, Phil Zimmermann
  5. FHS: http://www.pathname.com/fhs/
  6. TLS 1.0: RFC 2246
  7. Apache: http://www.apache.org/, Apache-SSL, mod_ssl
  8. Qpopper: http://www.eudora.com/qpopper/

«á°O

2002-09-14

¥»¤å°Ñ¦Òªº¸ê®Æ¦³­­¡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

¨Ìº¿¿ß <imacat@mail.imacat.idv.tw> ªì½Z 2002-01-09 ¡A¤W¦¸§ó·s¤é´Á 2002-09-14