HomeServer6
の編集
index.php?HomeServer6
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
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]
タイムスタンプを変更しない
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]
テキスト整形のルールを表示する
添付ファイル:
mailhmunaSSLCertificateFile2.pem
26件
[
詳細
]
screen1.jpg
23件
[
詳細
]
wiki.hmuna.com.privatekey
29件
[
詳細
]
mailhmunaSSLCertificateCombinedFile.pem
27件
[
詳細
]
wikihmunaPrivateKey.csr
27件
[
詳細
]
dovecot.conf
27件
[
詳細
]
mailhmunaCSR.csr
28件
[
詳細
]
dovecot-postfix.conf
24件
[
詳細
]
RapidSSL_CA_bundle.pem
24件
[
詳細
]
mail.hmuna.com.privatekey
30件
[
詳細
]
namecheap-order7502641.pdf
27件
[
詳細
]
GeoTrust_intermediate_Certificate.pem
25件
[
詳細
]
screen2.jpg
19件
[
詳細
]
main.cf
30件
[
詳細
]
mailhmunaSSLCertificateFile.pem
26件
[
詳細
]
wiki.hmuna.com
27件
[
詳細
]
passwd
28件
[
詳細
]
wikihmunaCSR.csr
24件
[
詳細
]
wikihmunaSSLCertificateFile.pem
27件
[
詳細
]
screen0.jpg
23件
[
詳細
]
wikihmunaPrivateKey.key
26件
[
詳細
]
wikihmunaSSLCertificateFile2.pem
26件
[
詳細
]