2010年12月の年末更新時期には特に大きな変更(ハードウエア更新、OS更新)は行わないことにしたが、サーバー証明書が失効したので久しぶりに自己認証式(なんちゃって式?)のサーバー証明書、懸案であった Dovecot のパスワード更新などマイナーなメンテナンスを実施したので、その内容を記録しておく。

#contents();
* サーバー証明書 [#v32de84c]
** 課題 [#m0f7a6df]
- 有償公式証明書が失効したので、代替の仕掛けを構築する必要があった。
- まず [[Ubuntu Sever Edition を使ったサーバ構築のメモ:http://www.kazutoyo.com/ubuntu/]] を参考に なんちゃって証明書を作成してみた。 しかし、やはりブラウザーの赤い警告画面がいちいち出るのがウザい。
- 従来利用していたサービスは、個人用だが 1サーバー(URL)で年間 7、800円、3年一括でも 年間 6、500円程度のコストがかかる。 あくまで個人的に利用するサーバーのために、この費用を払うのはどうなのと思い なんちゃって証明書を考えたのだが、やはりいちいち赤い警告画面が出るのはウザいので、改めて有償サービスを検討することにしたもの。

** 新サービス決定 [#e22952d5]

ー 今回検討したのは [[Namechep:http://www.namecheap.com/learn/other-services/ssl-certificates.asp?from=index&link=learnmore]] ---- 1 サーバー固定で 19$/2年
-- アカウントを作成した
--- user = wikihmuna
--- pass = frex7xx5

ー オーダー完了 (20101227)

 Date :	Saturday, December 25, 2010
 Transaction ID :	3169510769850943:XXGM:
 Order ID :	122.249.122.231-WIKIHMUNA-NC-511918-04836A2304-76622.21
 Charged Amount:	$19.9
 Final Amount :	$19.9

- (クリスマスの日だったが)すぐにメールで購入確認と、[[設定手順:https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&actp=CROSSLINK&id=so6411]] の説明が送られてきた。
-- Ubuntu の SSL は APache2 + openssl (mod_ssl ではない) で設定した。

ー 更新オーダー完了 (2012-11-27)
- 4 years ( 2012-12 --> 2016-11 )
- $37.96/4 years ( $9.49/year )
-&ref(namecheap-order7502641.pdf);

*** 申請データの作成 (2012年12月更新時) [#s7e4372f]

- Step 1: Generate Private Key
-- /etc/ssl/official2 の下に作成した )
-- パスフレーズ = nanamochahiko

 root@mythen:/etc/ssl/official2# openssl genrsa -des3 -out wiki.hmuna.com.privatekey 2048
 Generating RSA private key, 2048 bit long modulus
 ..........+++
 .............................................+++
 e is 65537 (0x10001)
 Enter pass phrase for wiki.hmuna.com.privatekey: 
 Verifying - Enter pass phrase for wiki.hmuna.com.privatekey:


 root@mythen:/etc/ssl/official2# ls -l
 合計 4
 -rw-r--r-- 1 root root 1751 12月 11 23:58 wiki.hmuna.com.privatekey

 root@mythen:/etc/ssl/official2# cat wiki.hmuna.com.privatekey 
 -----BEGIN RSA PRIVATE KEY-----
 Proc-Type: 4,ENCRYPTED
 DEK-Info: DES-EDE3-CBC,FE967CF70E2BECD5
 
 1PbN5HRpFwGuGzQ8Uh5Wim9M2dO5SHAy3YEIgGC1PJnM2khdDuo6YsV3GMtSAOLq
 WmpN+tWgrljx3zoKJUOIxkjo4YmnwsX6S1BKhw7RAisxBDMbRDVzjphiJx8O+8ik
 alxudyYbcBhd0CAsDJYSxxWIbq8XSH1BZqM+1u0otDzM0o2MWJOgSrvzhgi0tAG2
 44E+dvFT0SjY3LIxMAN+T5VkaKaHQfKybRGKy19Q1gV1DQkY8d7+AngCS6L6xZZO
 a/uS0WjRhv35jNrOmDsXH2/8bjsD/XxR4Eb222zaYS2JHE3kHzX4oK09XVfLKuvC
 yl/XsHKKEnaAY6XKv6+d+5ARcuMQX4fJHGKwjkTIvLoMpnijVYS+HC+tk75GzCzu
 8D55Ws0cvqRvQlzPzoP98kfWwUv4/Qj4+aBSvExNaSNMDQAnFtoYBrTLnys2VA45
 GhzejPMr2dIJRepNHVuKhNOg+jRu8ov6ZLIJkZRlXcsxHAeiZO0CenP78HW1QRQr
 TPJIwxVO6xzLTttKLbqC9C8s75vo07k/FM6rwTVTsmJXCn0utMO4MOEgaDAIXk2m
 85wjdv7JyOXsCUusuSxREWl8mgjLukQVea3vylbvtTFUV/ZvI8IJrVA+NYF1GqHp
 YT7Qv5w0ALCb2Rcm4AJQCX+JArqFN1gxE1H9OaxaF8YxdTsf2acftJrGhObyY35D
 2D5sH0uQ21VkS1tkZ9Ad68Os6NWymnmSgTYLfRPB7778qBXNOAkMURVDGNeEnaR8
 E6BohuUhHUs4OQRcBlhfzHqyyK/9+JdFQ5ziGyCaVt4uuecEI+nmLZ7JTyAzhq0r
 bo97suQi3jRYXsT0qMubCGS9Ic28y05BvT16SVhbqYongTXJVHLVw2qyYwtn5rcx
 ntMwfnGJ8Lce4+ohkRksk70EBOvO4loBPypzirsM3Ht17pwEH1rHEFuoEqqgAJhb
 kZug3FcZCusoOV1FmzzbjEVKNm2EB7xfIByN/RAQxNlDWD0js8ClSWIiD0wC60Qr
 Nk+0Y+0EUOyxNB9lhnkm/4Y57Hyjn2DAjHblnyz/zr9zr+ZQrbciNU/VL2BCgJK3
 w6/OKF/8f/xyh2yVgvySjYtNFVyevAKZbbdDkV2/cXKRRmbLuSY2ity4TtqptvMQ
 lbRLlcTvZqIEv068UfCDCwDyiTANuHKBLMVN83Xi4n0e9WeG5yjocrZQnnJD9HXE
 MAWLwRrZ5uvYn4up4vRgo2Fnd0vnZK6OgOJq1/Tx5LN/yZI6VMkDjTJUNqIgG7Hk
 5EYUyRLIC3R0VSwbY6FTQuvpJHGAJhwhId9y6nBlCrF7z5imMdwmduZlsGcwa1RA
 xzsn2QNwnRDkk/K+L8VwscwKtZnRnU4xbOxfSY7wgnjFdek0imkEYB3IJezlH8th
 5dbevzw9jceS4zpBzgU/h4ivhsX40Uof1n8PT3ie5NcigpLGbDYk3d9YIMLiI5jJ
 9I2e4l+rYK3j7m74TbWU/GDgI9jiHQVlIUsEX2e2Qsya0bt6cu3svTNfVOy7Ef0F
 dYPENkIo4Q9SQQUHYlRRhT5dOhvhj/PhbQvprN7d6QCqGsMR3WwbURxVVPUCf49c
 -----END RSA PRIVATE KEY-----

-- &ref(wiki.hmuna.com.privatekey);

- Step 2: Generate the CSR

 root@mythen:/etc/ssl/official2# openssl req -new -key wiki.hmuna.com.privatekey -out wikihmunaCSR.csr
 
 Enter pass phrase for wiki.hmuna.com.privatekey:  <---- nanamochahiko
 
 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]:JP
 State or Province Name (full name) [Some-State]:Kanagawa
 Locality Name (eg, city) []:Yokohama
 Organization Name (eg, company) [Internet Widgits Pty Ltd]:IT Admin
 Organizational Unit Name (eg, section) []:IT
 Common Name (e.g. server FQDN or YOUR name) []:wiki.hmuna.com
 Email Address []:
 
 Please enter the following 'extra' attributes
 to be sent with your certificate request
 A challenge password []:
 An optional company name []:

-- &ref(wikihmunaCSR.csr);

- Step 3: Approved SSL certificate + Intermediate certificate

-- &ref(wikihmunaSSLCertificateFile2.pem);
-- &ref(GeoTrust_intermediate_Certificate.pem);

*** 申請データの作成 [#fcddbd5d]

- Private Key を作成 ( /etc/ssl/official の下に作成した )

 root@spirit:/etc/ssl/official# openssl genrsa -out wikihmunaPrivateKey.key 2048
 Generating RSA private key, 2048 bit long modulus
 ................................................................+++
 .....+++
 e is 65537 (0x10001)
 root@spirit:/etc/ssl/official# ls -l
 合計 4
 -rw-r--r-- 1 root root 1675 2010-12-26 11:42 wikihmunaPrivateKey.key
 root@spirit:/etc/ssl/official# date

-- &ref(wikihmunaPrivateKey.key);

- CSR (Certificate Signing Request) の作成
ーー common name はサーバーのフルパスでないといけないので、wiki.hmuna.com とした 
-- email address は入れるなというガイドなので、none とした。
-- その他は 設定済みのデフォルトの値が参照された。

 root@spirit:/etc/ssl/official# openssl req -new -key wikihmunaPrivateKey.key -out wikihmunaPrivateKey.csr
 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) [JP]:
 State or Province Name (full name) [Kanagawa]:
 Locality Name (eg, city) [Yokohama]:
 Organization Name (eg, company) [IT admin]:
 Organizational Unit Name (eg, section) [IT]:
 Common Name (eg, YOUR name) [hmuna.com]:wiki.hmuna.com
 Email Address [server-admin@hmuna.com]:none
 
 Please enter the following 'extra' attributes
 to be sent with your certificate request
 A challenge password []:
 An optional company name []:
 
 root@spirit:/etc/ssl/official# ls -l
 合計 8
 -rw-r--r-- 1 root root 1041 2010-12-26 11:48 wikihmunaPrivateKey.csr
 -rw-r--r-- 1 root root 1675 2010-12-26 11:42 wikihmunaPrivateKey.key

-- &ref(wikihmunaPrivateKey.csr);

*** 承認プロセス [#ld7b16f6]
- 生成した csr を申請用の Web に張り付けて、サーバー管理者の e-mail アドレス( postmaster@hmuna.com )を指定。

- &ref(screen0.jpg);

- postmaster@hmuna.com メールがエリアス指定リレーで server-admin@hmuna.com あてにすぐ届いた。

- &ref(screen1.jpg);

- 届いたメールに記載された URL をたどって証明書の発行を認証する。 実際には Rapid SSL も Geotrust が承認していることがわかった。 これなら、これまでの証明書と何ら変更はなく、単純にコストを大幅に抑えることができたということ。 目出度し目出度しだな。

- &ref(screen2.jpg);

*** 発行 [#n545ddc5]

 ORDER COMPLETE
 
 Dear hisao munakata,
 
 Congratulations! GeoTrust has approved your request for a RapidSSL certificate. Your certificate is included at the end   of this email.
 
 INSTALLATION INSTRUCTIONS 
 
 1. INSTALL CERTIFICATE:
 Install the X.509 version of your certificate included at the end of this e-mail.
 For installation instructions for your SSL Certificate, go to:
 https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO16226
 
 2. INTERMEDIATE CERTIFICATE ADVISORY:
 You MUST install the GeoTrust intermediate Certificate included at end of this e-mail on your server together with your  Certificate or it may not operate correctly
 
 You can also get your GeoTrust intermediate Certificates at:
 https://knowledge.geotrust.com/support/knowledge-base/index?page=content&id=AR1422
 
 3. CHECK INSTALLATION:
 Ensure you have installed your certificate correctly at:
 https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO9556&actp=LIST&viewlocale=en_US
 
 Visit the GeoTrust Support Web site, where you will find a range of support tools to help you:
 
 http://www.rapidssl.com/support
 
 
 Sincerely,
 
 RapidSSL Customer Support
 http://www.rapidssl.com/support
 Hours of Operation: Mon - Fri 09:00 - 17:00 (EST)
 Email:     support@rapidssl.com
 Phone:     1-720-359-1590
 Live Chat: https://knowledge.rapidssl.com/support/ssl-certificate-support/index.html
 
 (snip)
 ________________________________________________________________________
 
 Web Server CERTIFICATE
 -----------------
 
 -----BEGIN CERTIFICATE-----
 MIIEyjCCA7KgAwIBAgICJtUwDQYJKoZIhvcNAQEFBQAwPDELMAkGA1UEBhMCVVMx
 FzAVBgNVBAoTDkdlb1RydXN0LCBJbmMuMRQwEgYDVQQDEwtSYXBpZFNTTCBDQTAe
 Fw0xMDEyMjQwODEwNDNaFw0xMjEyMjYwNzU5MzdaMIHjMSkwJwYDVQQFEyBHTGM1
 cnp4Z015bE9RTE1iYXBBUXhHNGF5aUtZY1k3SDELMAkGA1UEBhMCSlAxFzAVBgNV
 BAoTDndpa2kuaG11bmEuY29tMRMwEQYDVQQLEwpHVDc4MDc1MzA2MTEwLwYDVQQL
 EyhTZWUgd3d3LnJhcGlkc3NsLmNvbS9yZXNvdXJjZXMvY3BzIChjKTEwMS8wLQYD
 VQQLEyZEb21haW4gQ29udHJvbCBWYWxpZGF0ZWQgLSBSYXBpZFNTTChSKTEXMBUG
 A1UEAxMOd2lraS5obXVuYS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
 AoIBAQCvojexdkMNelwHFnIz610dlpEstRmfqK0kCve4txIE/wcf4prYrayvVNxh
 ZfIlCaqKNCCJQHtqg9FK/htreGoDMO+hKOM8oZb++HodR+QILZsuej/ETxH0NHQP
 nxTXY6X2IE3te263H7RHtWB1drOI3KuFfG1eFT5Pw0bDIKXmzXvuPc6h7BTaJcVi
 OoPs7qteNL3mPP3eofMzF/CY1rUoJs2GNZUNhp1bEUvPcvF5gWXAAg9owvgGARay
 vY484nGkCnO6/wHpJ9X0rP0Bs1FqOS+eVFXIYKCb49iLTotmY/927e0eZ6iTxmo9
 92HH3CMHoKwR0j+C+csPxnV4JINtAgMBAAGjggEsMIIBKDAfBgNVHSMEGDAWgBRr
 aT1qGEJK3Y8CZTn9NSSGeJEWMDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYI
 KwYBBQUHAwEGCCsGAQUFBwMCMBkGA1UdEQQSMBCCDndpa2kuaG11bmEuY29tMEMG
 A1UdHwQ8MDowOKA2oDSGMmh0dHA6Ly9yYXBpZHNzbC1jcmwuZ2VvdHJ1c3QuY29t
 L2NybHMvcmFwaWRzc2wuY3JsMB0GA1UdDgQWBBTwME01TrU41ve+HG6GyI/yGBHO
 jDAMBgNVHRMBAf8EAjAAMEkGCCsGAQUFBwEBBD0wOzA5BggrBgEFBQcwAoYtaHR0
 cDovL3JhcGlkc3NsLWFpYS5nZW90cnVzdC5jb20vcmFwaWRzc2wuY3J0MA0GCSqG
 SIb3DQEBBQUAA4IBAQBCsWXCW+Y3Y0r6ULG5DH9W2uXIiz7LeuK3zDpCf09pNhyX
 bDiOL+r9slt9KQDXof/dlRXUg6GQtG2c1cLiBghmMakwPylB+mTn7nEO9/dOrjri
 XxhAP6TNJD7Js28tgi22M8f+idotxfGlNqtdglDzI/fHk+EZScPDo92+Gv7jBtSM
 t0lbT3L9gjraDS1CK3Kr7+1Ralfp7yTXKiOxgsw8E3WFfpd7ya4F+KPQiqFfGYy7
 3nSsC5CJOhQzENucdyvHTtPP4RPPVADBuWkHVYJ2zuW2s/rPIEOWx4YOkfGA1iOQ
 O2QmKLyoskqm5J5emWTYXdHVnu3lIqUKwhXjEK3e
 -----END CERTIFICATE-----
 
 INTERMEDIATE CA:  
 ---------------------------------------
 
 -----BEGIN CERTIFICATE-----
 MIID1TCCAr2gAwIBAgIDAjbRMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT
 MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
 YWwgQ0EwHhcNMTAwMjE5MjI0NTA1WhcNMjAwMjE4MjI0NTA1WjA8MQswCQYDVQQG
 EwJVUzEXMBUGA1UEChMOR2VvVHJ1c3QsIEluYy4xFDASBgNVBAMTC1JhcGlkU1NM
 IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx3H4Vsce2cy1rfa0
 l6P7oeYLUF9QqjraD/w9KSRDxhApwfxVQHLuverfn7ZB9EhLyG7+T1cSi1v6kt1e
 6K3z8Buxe037z/3R5fjj3Of1c3/fAUnPjFbBvTfjW761T4uL8NpPx+PdVUdp3/Jb
 ewdPPeWsIcHIHXro5/YPoar1b96oZU8QiZwD84l6pV4BcjPtqelaHnnzh8jfyMX8
 N8iamte4dsywPuf95lTq319SQXhZV63xEtZ/vNWfcNMFbPqjfWdY3SZiHTGSDHl5
 HI7PynvBZq+odEj7joLCniyZXHstXZu8W1eefDp6E63yoxhbK1kPzVw662gzxigd
 gtFQiwIDAQABo4HZMIHWMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUa2k9ahhC
 St2PAmU5/TUkhniRFjAwHwYDVR0jBBgwFoAUwHqYaI2J+6sFZAwRfap9ZbjKzE4w
 EgYDVR0TAQH/BAgwBgEB/wIBADA6BgNVHR8EMzAxMC+gLaArhilodHRwOi8vY3Js
 Lmdlb3RydXN0LmNvbS9jcmxzL2d0Z2xvYmFsLmNybDA0BggrBgEFBQcBAQQoMCYw
 JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmdlb3RydXN0LmNvbTANBgkqhkiG9w0B
 AQUFAAOCAQEAq7y8Cl0YlOPBscOoTFXWvrSY8e48HM3P8yQkXJYDJ1j8Nq6iL4/x
 /torAsMzvcjdSCIrYA+lAxD9d/jQ7ZZnT/3qRyBwVNypDFV+4ZYlitm12ldKvo2O
 SUNjpWxOJ4cl61tt/qJ/OCjgNqutOaWlYsS3XFgsql0BYKZiZ6PAx2Ij9OdsRu61
 04BqIhPSLT90T+qvjF+0OJzbrs6vhB6m9jRRWXnT43XcvNfzc9+S7NIgWW+c+5X4
 knYYCnwPLKbK3opie9jzzl9ovY8+wXS7FXI6FoOpC+ZNmZzYV+yoAVHHb1c0XqtK
 LEL2TxyJeN4mTvVvk0wVaydWTQBUbHq3tw==
 -----END CERTIFICATE-----

- wiki.hmuna.com サーバー証明書 ----> &ref(wikihmunaSSLCertificateFile.pem);
- Rapid SSL の中間証明書 -----------> &ref(RapidSSL_CA_bundle.pem);

*** サーバーにキーをインストール [#m61c9623]
- /etc/apache2/site-available/wiki.hmuna.com [&ref(wiki.hmuna.com);] に設定を追加

 # 20101225 に公式の証明書(でも安い!)を導入しなおした。
 # 導入経緯の説明は wiki に(https://wiki.hmuna.com:443/index.php?HomeServer6
 #   Server Certificate: 
 SSLCertificateFile      /etc/ssl/official/wikihmunaSSLCertificateFile.pem
 #   Server Private Key: 
 SSLCertificateKeyFile   /etc/ssl/official/wikihmunaPrivateKey.key
 #   Server Certificate Chain:
 SSLCertificateChainFile /etc/ssl/official/RapidSSL_CA_bundle.pem

*** このままだと、サーバー再起動時にパスフレーズの入力を要求される。 [#md471ba1]
- これだと &color(red){自動リブートさせた時などに Apache が立ち上がらなくて問題 !};
- サーバーキーから パスフレーズを抜く

 server-admin@mythen:/etc/ssl/official2$ sudo openssl rsa -in wiki.hmuna.com.privatekey -out wiki.hmuna.com.privatekey_passphraseless
 Enter pass phrase for wiki.hmuna.com.privatekey:   <--- "nanamochahiko"
 writing RSA key
 
 server-admin@mythen:/etc/ssl/official2$ ls -l
 合計 32
 -rw-r--r-- 1 root root 1391 12月 12 00:50 GeoTrust_intermediate_Certificate.pem
 -rw-r--r-- 1 root root 1743 12月 12 09:18 mail.hmuna.com.privatekey
 -rw-r--r-- 1 root root 1009 12月 12 09:20 mailhmunaCSR.csr
 -rw-r--r-- 1 root root 1842 12月 12 09:46 mailhmunaSSLCertificateFile2.pem
 -rw-r--r-- 1 root root 1751 12月 11 23:58 wiki.hmuna.com.privatekey
 -rw-r--r-- 1 root root 1679 12月 31 16:52 wiki.hmuna.com.privatekey_passphraseless  <--- できた!
 -rw-r--r-- 1 root root 1009 12月 12 00:11 wikihmunaCSR.csr
 -rw-r--r-- 1 root root 1842 12月 12 00:49 wikihmunaSSLCertificateFile2.pem

- このパスフレーズなしのサーバーキーを Apache に設定する

* Dovecot 調整 [#t5fd87b4]
*** 課題 [#oecf57c4]
- ユーザーアカウントのパスワードを変更したい
- メールサーバーでは Ubuntu のオリジナル証明書(Snake Oil) が有効になっているが、これも更新したい。
*** パスワードの変更 [#f1cd6dbe]
- dovecot アカウントのデフォルトパスワードは、Linux システムの PAM 認証を利用している。
- 認証時の伝送方法として PALNE(平文)のほか暗号化データを利用することができ、これらを利用することが推奨されている。まぁ当然だが。
- 今回やりたかったのは、dovcot アカウントのパスワードを PAM のパスワードとは別にして、逐次更新できるようにすること。

- まず、dovcot のパスワード認証で PAM ではなく、dovcot のポスワードデータベースを参照するように設定を変更する。

-- 設定ファイルは /etc/dovecot/dovecot.conf [&ref(dovecot.conf);] 
-- パスワードデーターベースは /etc/dovecot/passwd [&ref(passwd);]

- まず、PLANE(平文)パスワードでのログインを無効に設定する (dovecot.conf の設定、デフォルトでは有効)

 disable_plaintext_auth = yes

- 次に passwd ファイルの参照を有効にする(dovecot.conf の設定、デフォルトでは無効、コメントを外すだけ)

 # passwd-like file with specified location
 # <doc/wiki/AuthDatabase.PasswdFile.txt>
 passdb passwd-file {
   # [scheme=<default password scheme>] [username_format=<format>]
   # <Path for passwd-file>
   # 20101224 enabled
   args = /etc/dovecot/passwd
 }

- パスワード(CRAMーMD5) の生成は、Dovecot のコマンドを使う

 root@spirit:/etc/dovecot# dovecotpw 
 Enter new password: 
 Retype new password: 
 {HMAC-MD5}a76c629eb7d5c10aa1860c2dd783b01700d606bdf0b080604f62fc8c34661871

- あとは生成された CRAM-MD5 の値を アカウントに紐付けて passwd ファイルに記入するだけ。

 root@spirit:/etc/dovecot# cat passwd 
 # postfix の認証に sasl_auth を利用する。relay が禁止されているが、smtp_auth の
 # 認証が通ったものはリレー可能になるのでこの設定は必須。 実際の 認証は dovecot が
 # 代行できるので この dovecot のパスワードファイルを利用する。
 # 参照 web = http://nabe.blog.abk.nu/0304 

 # pass for smtp_auth connection (imap)
 server-admin@mtp:{HMAC-MD5}8e014b38eb82adeaa560bb8862d57004407240bf29acd6e37d6d7bbde603fc96
 munakata@smtp:{HMAC-MD5}0e8d79672596240aca201410861cfe1bca7f639d4a9af9a63b0c4c11c0299a06
 public_mail@smtp:{HMAC-MD5}47e27fa0a8ded62a095f4d265d25048f54e72487d2004a8dcfda3b2f786e2f7c
 stored_mail@smtp:{HMAC-MD5}317d5f3e05294aee9d9993c723266d3d66082a94a9e70bf70dfb14da1660684a
 yuko@smtp:{HMAC-MD5}a491880edfbd0793d0c00010b3e62380ed1d0e64450182667ffa4cd4ba8c47b6
 purple@smtp:{HMAC-MD5}ca0a8f9b097ea5552b23375257443ab5abbb7c1401840c02567181d6fb545093
 dtv-rec@smtp:{HMAC-MD5}acbd6cd9611b52ebbaf7fdb4771bbe2d32fac682dfce36134fee2bdda0128658

- 最後に新たらしいパスワードの有効化のために、dovecot を再起動する。

*** 参考 URL [#o08c15c1]
-- http://d.hatena.ne.jp/wizard_blue/20090214/1234539843

*** dovecot と postfix の証明書 [#ea721061]
- dovecot と postfix は内部の認証(アカウント認証、リレー認証 など)のために SSL 証明書を利用し、メールクライアントに対してこのサーバーはこの証明書を利用していると告知する。 Ubuntu ではデフォルトで Ubuntu という名前のサーバーを登録しているが、当然これは実際のメールサーバー名とは異なるので、クライアントで怪しいというメッセージが出る。 今回、メールサーバー用にも自作の なんちゃって証明書を利用するようにしたが、その Common Name が hmuna.com であったために、証明書の出元が怪しい(それはなんちゃってだから当然だが)と サーバー名が違う (メールサーバーの名前は mail.hmuna.com だから)という二重のエラーが出るようになってしまった。 さて....

*** 公式証明書の取得 [#zba71b17]
- 下記の 参考URL にほぼ必要なことが全て書かれているが、要するにちゃんとした認証局から証明してもらった証明書を使う必要があり、今回見つけた年間 10$ 程度の費用であれば、やった方がよいという判断にした。
- 強いていえば、最近の証明は 証明書が 中間証明 とペアでないと認証されない仕掛けなので、dovecot/postfix に中間証明書を渡す方法が肝になるが、要するに cat でつなげてしまえばよいだけの話だった。

*** 証明書 [#t69292ef]
- 証明書の発行手順は、上記の Apache2 サーバー向けと同じ。 CSR 発行時の Common Name が mail.hmuna.com である事だけが違い。
- 一つの証明書で複数のサーバー (www, wiki, ftp, mail 等)に使える ワイルドカード証明書というものもあるが、費用は1台限定のものの10倍くらいするので、今回の2台ならシングルを2個発行した方が全然割安という判断。

- mail.hmuna.com サーバー証明書 ----> &ref(mailhmunaSSLCertificateFile.pem);
- Rapid SSL の中間証明書 -----------> &ref(RapidSSL_CA_bundle.pem);
- 統合証明書(サーバー証明書+中間証明書) -------> &ref(mailhmunaSSLCertificateCombinedFile.pem); <---- 自分で作る。下記に説明あり。

*** 証明書の更新 (2012-11 4年間) [#ja54e2c4]
- 基本的には Apache の証明書更新 (上記)と全く同じ手順
- パスフレーズは nanamochahiko (同じ)

-- Private Key = &ref(mail.hmuna.com.privatekey);
-- CSR = &ref(mailhmunaCSR.csr);
-- Certification = &ref(mailhmunaSSLCertificateFile2.pem);
-- Intermediate file = &ref(GeoTrust_intermediate_Certificate.pem);  

*** 証明書のインストール [#ee07865f]
- 証明書は dovecot と postfix の両方に、別々の目的で登録する必要がある。 簡単だが、罠が2つある。
- 罠1
-- dovecot の設定ファイルには /etc/dovecot/dovecot.conf と /etc/dovecot/dovecot-postfix.conf の2つがあること。元々は Ubuntu 標準の Snake Oil 証明書を使う設定が後者に記載されているので、dovecot.conf の設定を変えても、あとから後者の設定ファイルがオーバライドされてしまうようで、証明書が有効にならなかった。 本来は後者にだけ設定を書けば良いのだろうが、現在は両方に書いている。
- 罠2
-- 今回導入した Rapid SSL は中間証明書を必要とするものだが、dovecot、postfix には Apache のような中間証明書を別に指定する設定がない。 (postfix のバージョンによってはあるようだが) その代わり、証明書の中に中間証明書をまとめておくことが必要になる。 この時にまとめる順番によってメールクライアントが正しく証明書を処理できないケースがあるようである。
- 実際の設定ファイル
-- &ref(dovecot.conf);
-- &ref(dovecot-postfix.conf);
-- &ref(main.cf);

*** 参考 URL [#kd6f1c9d]
- http://hogech.jp/blog/?p=292

* awstats (メール統計)の復旧 [#kf00e139]

- http://www.shitomi.jp/ubuntu804/awstats.html を参考に apt-get でインストール
- Ubuntu では /usr/share/awstats にファイルが配置される
- WWW の置き場は /raid_vol/www の下とする
- http://www.server-world.info/query?os=Ubuntu_10.04&p=mail&f=9 を参考にメール用に設定
- DNS 逆引きはメール側で対応済みなので awstats では引かない様に設定ファイル (/etc/awstats/awstats.postfix.conf)を修正した
- cron で毎時自動実行

 root@spirit:~# cat /etc/cron.hourly/awstats 
 #!/bin/bash
 
 /usr/lib/cgi-bin/awstats.pl -config=postfix -update > /dev/null
 /usr/lib/cgi-bin/awstats.pl -config=postfix -output -staticlink > /raid_vol/www/awstats/index.html
 
 exit 0


* 設定記録 (asof 2011-05-04) [#cdef78aa]
*** fstab [#rd8447fc]

 server-admin@spirit:~$ cat /etc/fstab
 # /etc/fstab: static file system information.
 #
 # <file system> <mount point>   <type>  <options>       <dump>  <pass>
 #---------------------------------------------------------------------------------------------------
 proc            /proc           proc    defaults        0       0
 #---------------------------------------------------------------------------------------------------
 # /dev/sda1
 UUID=d91f0e8b-d558-4448-83d3-e3e4397fa1d4 /               ext3    relatime,errors=remount-ro 0       1
 #---------------------------------------------------------------------------------------------------
 # /dev/sda3
 UUID=82470a1b-ed6c-4e25-915e-cd5445863cdc /boot           ext3    relatime        0       2
 #---------------------------------------------------------------------------------------------------
 # /dev/sdd1
 #UUID=7ec7c6ac-a426-4ae6-ae6b-497c2d84c164 /recipe	  ext3    relatime        0	  2
 #---------------------------------------------------------------------------------------------------
 # /dev/sdf2
 #/dev/sdf2                                /dtv_rec        ext3    relatime        0       2
 #UUID=66c408d1-d786-4f96-97d0-9c19b9f110c5 /dtv_rec        ext3    relatime        0       2
 #---------------------------------------------------------------------------------------------------
 # /dev/sdg1
 #/dev/sdg1                                /dtv_rec2       ext4    relatime        0       2
 UUID=75a20c86-b461-4808-adfc-6fb5a26db0f3 /dtv_rec2       ext4    relatime        0       2
 #---------------------------------------------------------------------------------------------------
 # /dev/sdh1
 #/dev/sdh1                                /dtv_recA       ext4    relatime        0       2
 UUID=b424addb-e108-4281-90c0-c09a18fe1c21 /dtv_recA       ext4    relatime        0       2
 #---------------------------------------------------------------------------------------------------
 # /dev/sdi1
 #/dev/sdi1                                /dtv_recB       ext4    relatime        0       2
 UUID=7e0844b8-c278-4f07-b3e9-7a62a5450eb0 /dtv_recB       ext4    relatime        0       2
 #---------------------------------------------------------------------------------------------------
 # /dev/md0 (/dev/sdb1 + /dev/sdc1 : RAID1 )
 /dev/md0	/raid_vol	ext4    relatime        0       2
 #---------------------------------------------------------------------------------------------------
 # /dev/sde2
 UUID=fef7b57a-beb7-4e04-98b0-9b1ca438c762 /ref            ext4    relatime        0       2
 #---------------------------------------------------------------------------------------------------
 # /dev/sdb5
 UUID=b97f92e6-b7c5-406b-b62b-9c643275077a none            swap    sw              0       0
 #---------------------------------------------------------------------------------------------------
 /dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0       0

*** mount [#hbe31d75]

 server-admin@spirit:~$ mount
 /dev/sda1 on / type ext3 (rw,relatime,errors=remount-ro)
 proc on /proc type proc (rw)
 none on /sys type sysfs (rw,noexec,nosuid,nodev)
 none on /sys/fs/fuse/connections type fusectl (rw)
 none on /sys/kernel/debug type debugfs (rw)
 none on /sys/kernel/security type securityfs (rw)
 udev on /dev type tmpfs (rw,mode=0755)
 none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
 none on /dev/shm type tmpfs (rw,nosuid,nodev)
 none on /var/run type tmpfs (rw,nosuid,mode=0755)
 none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
 none on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
 /dev/sdf1 on /dtv_recA type ext4 (rw,relatime)
 /dev/sdg1 on /dtv_recB type ext4 (rw,relatime)
 /dev/sde1 on /dtv_rec2 type ext4 (rw,relatime)
 /dev/sdd2 on /ref type ext4 (rw,relatime)
 /dev/md0 on /raid_vol type ext4 (rw,relatime)
 /dev/sda3 on /boot type ext3 (rw,relatime)
 gvfs-fuse-daemon on /home/server-admin/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=server-admin)
 binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)

* [[Ubuntuインストール直後にすべき10のこと:http://gihyo.jp/admin/serial/01/ubuntu-recipe/0065]] [#t9ba7ff3]

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS