- 管理コンソール
- エンドユーザメール隔離 (EUQ) コンソール
- SMTP over TLS
ここでは、スタンドアロン構成を前提として、各コンポーネントに同一の SSL 証明書をインストールします。分散環境で複数の検索サービスや EUQ サービスを設置する場合、ワイルドカード証明書や SANs (Subject Alternative Names) を指定した証明書の利用を検討してください。
- InterScan MSS 7.1 Linux版 のインストールディレクトリ $IMSS_HOME は初期設定で /opt/trend/imss となります。
- 特に指定がない限り、証明書や秘密鍵のファイルは PEM 形式です。
- 秘密鍵は大切に保管し、バックアップを取得してください。
証明書署名要求 (CSR) の生成
OpenSSL コマンドを使用して、認証局に提出する証明書署名要求 (CSR) を生成します。
※ 鍵の種類と鍵長は RSA 2048-bit を指定しています。
※ Trend Micro SSL を利用している場合、事前にこちらを参照してください。
1. 以下のコマンドを実行して、秘密鍵 (server.key) と CSR (server.csr) を生成します。秘密鍵のパスフレーズには任意の文字列を設定します。
# openssl req -new -newkey rsa:2048 -keyout server.key -out server.csr
入力例:
Country Name: JP
State or Province Name: Tokyo
Locality Name: Shibuya
Organization Name: Trend Micro Inc.
Organizational Unit Name: (無記入)
Common Name: mail.example.com
Email Address: (無記入)
2. セカンダリ管理コンソールや SMTP over TLS における秘密鍵はパスフレーズが設定されていない必要があるため、元の秘密鍵のファイル名を serverkey.pem に変更した上で秘密鍵からパスフレーズを除去します。
# mv server.key serverkey.pem
# openssl rsa -in serverkey.pem -out server.key
なお、最初からパスフレーズを設定せずに秘密鍵を生成するのであれば、手順 1 で -nodes オプションを指定します。
# openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr
また、生成された CSR は次のコマンドで確認できます。
# openssl req -in server.csr -text -noout
3. 特に内容に問題がなければ、認証局に CSR を提出して SSL 証明書の発行を依頼します。
SSL 証明書のインストール
※ Trend Micro SSL を利用している場合、証明書ファイルについてはこちらを参照してください。
管理コンソールとセカンダリ EUQ サービス
InterScan MSS 7.1 Linux版 Service Pack 1 では、管理コンソールとセカンダリ EUQ 管理コンソール (ポート 8446) 用の Web サーバに Apache Tomcat 6.0 を使用しています。Apache Tomcat への SSL の導入について、詳細は下記ドキュメントを参照してください。
Apache Tomcat 6.0: SSL Configuration HOW-TO
- OpenSSL のコマンドで秘密鍵 (server.key) と SSL 証明書 (server.crt)、そして中間証明書 (ca.crt) を PKCS#12 形式のファイル (mykeystore.p12) としてエクスポートします。パスワードはすべて changeit とします。
# openssl pkcs12 -export -in server.crt -inkey server.key ¥
-out server.p12 -name "tomcat" -certfile ca.crt
Trend Micro SSL の場合 # openssl pkcs12 -export -in.crt -inkey server.key ¥ -out server.p12 -name "tomcat" -certfile cabundle.crt - keytool でキーストア (mykeystore) を作成して、秘密鍵、証明書をインポートします。
# $IMSS_HOME/UI/javaJRE/bin/keytool -importkeystore ¥ -srckeystore server.p12 -srcstoretype PKCS12 ¥ -destkeystore mykeystore -deststoretype JKS - キーストアにインポートされた証明書は keytool の下記コマンドで確認できます。# $IMSS_HOME/UI/javaJRE/bin/keytool -v -list -keystore mykeystore
- 最後に管理コンソールおよび EUQ 管理コンソールを再起動します。
# $IMSS_HOME/script/S99ADMINUI restart
# $IMSS_HOME/script/S99EUQ restart - ブラウザで管理コンソールおよびセカンダリ EUQ 管理コンソールにアクセスし、証明書エラーが表示されないことを確認してください。
https://mail.example.com:8445/ (管理コンソール)
https://mail.example.com:8446/ (セカンダリ EUQ 管理コンソール)
プライマリ EUQ サービス
InterScan MSS 7.1 Linux版 Service Pack 1 では、プライマリ EUQ 管理コンソール (ポート 8447) 用の Web サーバに Apache HTTP Server を使用しています。
-
念のために既存の SSL 証明書とサーバ秘密鍵のバックアップを取得します。
# cp -p $IMSS_HOME/UI/apache/conf/ssl.crt/server.crt server.crt.org
# cp -p $IMSS_HOME/UI/apache/conf/ssl.key/server.key server.key.org -
認証局から発行された SSL 証明書 (server.crt) とサーバ秘密鍵 (server.key) を既存のファイルと置き換えます。
# cp server.crt $IMSS_HOME/UI/apache/conf/ssl.crt/
# cp server.key $IMSS_HOME/UI/apache/conf/ssl.key/
Trend Micro SSL の場合
# cp <コモンネーム.crt> $IMSS_HOME/UI/apache/conf/ssl.crt/server.crt
# cp server.key $IMSS_HOME/UI/apache/conf/ssl.key/ -
次に認証局の中間証明書 (ca.crt) を $IMSS_HOME/UI/apache/conf/ssl.crt/ にコピーし、ファイルのオーナー・グループとパーミッションを変更します。
# cp ca.crt $IMSS_HOME/UI/apache/conf/ssl.crt/
# chown imss:imss $IMSS_HOME/UI/apache/conf/ssl.crt/ca.crt
# chmod 750 $IMSS_HOME/UI/apache/conf/ssl.crt/ca.crt
Trend Micro SSL の場合
# cp cabundle.crt $IMSS_HOME/UI/apache/conf/ssl.crt/ca.crt
# chown imss:imss $IMSS_HOME/UI/apache/conf/ssl.crt/ca.crt
# chmod 750 $IMSS_HOME/UI/apache/conf/ssl.crt/ca.crt -
設定ファイル EUQ.conf を vi で開き、以下のように SSLCertificateChainFile ディレクティブを追加します。
$IMSS_HOME/UI/euqUI/conf/EUQ.conf:
...
SSLCertificateFile conf/ssl.crt/server.crt
SSLCertificateKeyFile conf/ssl.key/server.key
SSLCertificateChainFile conf/ssl.crt/ca.crt
... -
最後に EUQ 管理コンソールを再起動します。
# $IMSS_HOME/script/S99EUQ restartブラウザでセカンダリ EUQ 管理コンソールにアクセスし、証明書エラーが表示されないことを確認してください。
https://mail.example.com:8447/
SMTP over TLS (STARTTLS)
InterScan MSS 7.1 Linux 版はローカルの Postfix と連携して動作します。
Postfix は STARTTLS を使用した SMTP over TLS をサポートしており、InterScan MSS の管理コンソールから設定することが可能です。
なお、管理コンソールから Postfix を設定しない、あるいは sendmail などの他の MTA を利用している場合には MTA のドキュメントを参照して、適切に設定してください。
Postfix の TLS 設定に関しては以下のドキュメントにまとめられています。
Postfix TLS Support
-
InterScan MSS の管理コンソールにログインし、
管理 > InterScan MSS の設定 > SMTPルーティング > 接続 の画面を開きます。
Transport Layer Security設定 にある「Transport Layer Securityを有効にする」にチェックを入れ、それぞれファイルを選択した上で、[アップロード] ボタンからファイルをアップロードします。CA証明書: ca.crt (中間証明書)
秘密鍵: server.key
SMTPサーバ証明書: server.crt
Trend Micro SSL 利用の場合
CA証明書: cabundle.crt
秘密鍵: server.key
SMTPサーバ証明書: <コモンネーム.crt> -
各ファイルのアップロード後、[保存] をクリックして、設定を保存します。
OpenSSL の s_client ユーティリティなどを使用して、TLS の接続時に証明書エラーが表示されないことを確認してください。
# echo QUIT | openssl s_client -connect mail.example.com:25 -showcerts -starttls smtp
TLS 接続の強制
SMTP クライアントに TLS 接続を強制する場合、「TLSによるSMTP接続のみを許可する」にチェッ コメント [AT7]: 管理コンソールのようにブラウザでアクセスして簡単に確認、というわけにはいかないので、OpenSSL の s_client で確認する一例を挙げています。 クを入れ、設定を保存します。
※ RFC 3207: SMTP Service Extension for Secure SMTP over Transport Layer Security では、MX に指定された公開メールサーバは TLS を強制してはならないと定義されています。
ログレベルと Received ヘッダフィールド
TLS 接続のログをメールログに出力したい場合や Received ヘッダフィールドに TLS の接続を追加したい場合、Postfix の設定ファイル (main.cf) に次のパラメータを追加して、Postfix reload で設定を反映します。
etc/postfix/main.cf:
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes