1,000円を切る低価格で登場、「さくらのVPS」をチェック――サーバー構築編 12ページ
メールの送受信および認証をSSLで暗号化する
先に述べたとおり、SMTP AUTHの「PLAIN」や「LOGIN」方式での認証や、IMAP4/POP3のplaintext認証は盗聴が容易であるため、SMTPSやIMAP4S、POP3SといったSSLによる暗号化通信経由での利用をお勧めする。sendmailやdovecotの設定が一通り完了しているなら、設定は容易だ。
まず、暗号化に用いる暗号鍵を次のようにして作成する。それぞれに入力する値は適宜環境に応じて変更してほしい。
$ cd /etc/pki/tls/certs ←デフォルトの暗号鍵ディレクトリに移動 $ sudo make sendmail.pem ←「sendmail.pem」というファイル名で暗号鍵を作成 : : Country Name (2 letter code) [GB]:JP ←使用者の国名を入力。日本なら「JP」 State or Province Name (full name) [Berkshire]:Tokyo ←使用者所在地の県名を入力 Locality Name (eg, city) [Newbury]:Shinjuku ←使用者所在地の都市名を入力 Organization Name (eg, company) [My Company Ltd]:example.net ←使用者の組織名を入力 Organizational Unit Name (eg, section) []: ←「組織の部署名を入力(空でかまわない)」 Common Name (eg, your name or your server's hostname) []:example.net ←メールサーバーのホスト名を入力 Email Address []:postmaster@hylom.net ←担当者連絡先を入力
次に、「/etc/mail/sendmail.mc」を編集して使用する暗号鍵を指定する。
$ sudo vi /etc/mail/sendmail.mc ←sendmail.mcを編集する : : dnl # dnl # Rudimentary information on creating certificates for sendmail TLS: dnl # cd /etc/pki/tls/certs; make sendmail.pem dnl # Complete usage: dnl # make -C /etc/pki/tls/certs usage dnl # dnl define(`confCACERT_PATH', `/etc/pki/tls/certs')dnl dnl define(`confCACERT', `/etc/pki/tls/certs/ca-bundle.crt')dnl dnl define(`confSERVER_CERT', `/etc/pki/tls/certs/sendmail.pem')dnl dnl define(`confSERVER_KEY', `/etc/pki/tls/certs/sendmail.pem')dnl (上記のコメントアウトを外して以下のようにする) define(`confCACERT_PATH', `/etc/pki/tls/certs')dnl define(`confCACERT', `/etc/pki/tls/certs/ca-bundle.crt')dnl define(`confSERVER_CERT', `/etc/pki/tls/certs/sendmail.pem')dnl define(`confSERVER_KEY', `/etc/pki/tls/certs/sendmail.pem')dnl : : dnl # For this to work your OpenSSL certificates must be configured. dnl # dnl DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl (上記のコメントアウトを外して以下のようにする) DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl dnl # : :
編集後、makeコマンドの実行とsendmailの再起動を行って設定を反映させる。
$ sudo make $ sudo /sbin/service sendmail restart
続いて、dovecotの設定を行う。「/etc/dovecot.conf」ファイルを編集し、使用する暗号鍵を指定する。
$ sudo vi /etc/dovecot.conf : : # Protocols we want to be serving: imap imaps pop3 pop3s # If you only want to use dovecot-auth, you can set this to "none". #protocols = imap imaps pop3 pop3s protocols = imap pop3 imaps pop3s ←imapsおよびpop3sも有効にする : : # Disable SSL/TLS support. #ssl_disable = no ssl_disable = no ←「ssl_diable」行のコメントアウトを外す : : # PEM encoded X.509 SSL/TLS certificate and private key. They're opened before # dropping root privileges, so keep the key file unreadable by anyone but # root. Included doc/mkcert.sh can be used to easily generate self-signed # certificate, just make sure to update the domains in dovecot-openssl.cnf #ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem #ssl_key_file = /etc/pki/dovecot/private/dovecot.pem (上記2行のコメントアウトを外し、先ほど作成した暗号鍵を指定する) ssl_cert_file = /etc/pki/tls/certs/sendmail.pem ssl_key_file = /etc/pki/tls/certs/sendmail.pem : :
最後にdovecotサービスを再起動して設定を反映させる。
$ sudo /sbin/service dovecot restart
なお、SMTPSやPOP3S、IMAP4SはSMTPやPOP3、IMAPとは異なるポートを利用する。system-config-securitylevel-tuiでファイアウォールの設定を変更し、これらのポートに外部からアクセスできるよう忘れずに設定しておこう(図12)。
より詳細な設定は導入ガイドを参照すべし、セキュリティにも注意
以上、さくらのVPSの基本的な設定と各種サーバーのインストールについて解説してきたが、ここで説明してきた設定はあくまで「サーバーを利用できるようにする」ための最低限の設定である。そのため、環境に応じて柔軟に設定を追加、変更してほしい。
ここで紹介した以外のソフトウェアの設定については、CentOSと互換性があるRed Hat Enterprise Linuxのドキュメント「Red Hat Enterprise Linux導入ガイド」で詳細に解説されているので、こちらを確認してほしい。
なお、VPSでは共有型のレンタルサーバーとは違い、ユーザーが環境構築の全責任を負うこととなる。特にセキュリティ面などで不備があると、踏み台などにされてほかのサーバーに対し迷惑をかけてしまう可能性がある。低価格のVPSといえども、その点には注意して設定・運用を行ってほしい。