Sun Java System Messaging Server 6 2005Q1 管理ガイド |
第 20 章
Communications Express メールでの S/MIME の管理Secure/Multipurpose Internet Mail Extension (S/MIME) は、Sun Java System Communications Express メールで利用できます。S/MIME を使用するように設定された Communications Express メールユーザーは、Communications Express メール、Microsoft Outlook Express、および Mozilla メールシステムのほかのユーザーと署名付きまたは暗号化されたメッセージを交換できます。
Communications Express メールでの S/MIME の使用方法についての情報は、オンラインヘルプにあります。S/MIME を使用するための情報について、この章で説明します。この章には、以下の節があります。
S/MIME とはS/MIME は、Communications Express メールユーザーに次の機能を提供します。
- 送信するメールメッセージのデジタル署名を作成して、メッセージが改ざんされておらず、送信者からのものであることを受信者に保証する
- 送信するメールメッセージを暗号化して、メッセージが受信者のメールボックスに届く前に、表示、変更、またはメッセージの内容が使用されることがないように防止する
- 証明書失効リスト (Certificate Revocation List、CRL) を使用する処理で、着信する署名付きメッセージのデジタル署名を確認する
- 受信者がメッセージの内容を読むことができるように、着信した暗号化されたメッセージを自動的に復号化する
- Communications Express メールおよび Mozilla メールシステムなど、S/MIME に準拠したクライアントのほかのユーザーと署名付きまたは暗号化されたメッセージを交換する
理解する必要がある概念
S/MIME を適切に管理するには、次の概念を理解している必要があります。
- プラットフォームの基本的な管理手順
- Lightweight Directory Access Protocol (LDAP) ディレクトリの構造および使用
- LDAP ディレクトリのエントリの追加または変更
- Sun Java System Directory Server の設定プロセス
- 次の概念と目的
- 通信回線の保護のための Secure Socket Layer (SSL)
- デジタル署名された電子メールメッセージ
- 暗号化された電子メールメッセージ
- ブラウザのローカルキーストア
- スマートカード、スマートカードを使用するためのスマートカードソフトウェアとハードウェア
- 非公開キーと公開キーのペアとそれらの証明書
- 認証局 (CA)
- キーと証明書の確認
- 証明書失効リスト (Certificate revocation list、CRL)。証明書失効リストについては、「証明書が CRL でチェックされるタイミング」参照してください。
必要なソフトウェアおよびハードウェアコンポーネントこの節では、Communications Express メールで S/MIME を使用するために必要なハードウェアおよびソフトウェアについて説明します。すべての正しいバージョンのソフトウェアをサーバーおよびクライアントマシンにインストールしてから、S/MIME の設定をするようにしてください。
表 20-1 は、Communications Express メールがアクセスされるクライアントマシンに必要なソフトウェアおよびハードウェアを示しています。
表 20-1 クライアントマシンに必要なハードウェアおよびソフトウェア
コンポーネント
説明
オペレーティングシステム
ブラウザ
Sun ソフトウェア
Sun Java 2 Runtime Environment、Standard Edition、バージョン 1.4.2_03 以降 (ただし 1.5 を除く)
証明書付きの非公開キーと公開キー
証明書付きの非公開キーと公開キーの 1 つ以上のペア。証明書は必須であり、標準の X.509 v3 形式である必要があります。S/MIME の機能を使用する各 Communications Express メールユーザー用のキーおよび証明書を CA から入手します。キーとその証明書はクライアントマシンまたはスマートカードに保存されます。公開キーと証明書は、Directory Server がアクセスできる LDAP ディレクトリにも保存されます。
キーが有効であることをさらに保証するためにキーの証明書を証明書失効リスト (CRL) で確認する場合、CA によって管理される CRL は、使用しているシステムに組み込まれている必要があります。「証明書が CRL でチェックされるタイミング」を参照してください。
スマートカードソフトウェア (キーおよび証明書がスマートカードに保存される場合にのみ必要)
スマートカードリーダー
クライアントマシンおよびスマートカードソフトウェアがサポートする任意のモデルのスマートカード読み取り装置
表 20-2 は、サーバーマシンに必要な Sun Microsystems ソフトウェアを示しています。
S/MIME を使用するための要件Messaging Server のインストール後、Communications Express メールユーザーは署名および暗号化機能をただちに使用できるわけではありません。ユーザーが S/MIME を利用できるようになる前に、この節で説明する要件を満たしている必要があります。
非公開キーと公開キー
標準の X.509 v3 形式の証明書を含む、非公開キーと公開キーのペアを少なくとも 1 つ、S/MIME を使用する各 Communications Express メールユーザーに発行する必要があります。確認プロセスで使用される証明書は、キーが本当に使用者のものであることをほかのメールユーザーに対して保証します。1 人のユーザーに、複数のキーペアと関連する証明書を割り当てることができます。
キーおよびキーの証明書は、ユーザーの組織で発行するか、またはサードパーティベンダーから購入できます。キーおよび証明書の発行方法に無関係に、発行する組織は認証局 (CA) と呼ばれます。
キーのペアとキーの証明書は、次の 2 とおりの方法で保存されます。
スマートカードは、商用クレジットカードに似ていて、クレジットカードと同様にメールユーザーが使用および管理する必要があります。スマートカードには、非公開キー情報を読むための、メールユーザーのコンピュータ (クライアントマシン) に接続された特別なカードリーダーが必要になります。詳細については、「スマートカードに保存されたキー」を参照してください。
メールユーザーのブラウザがキーストアを提供します。ブラウザは、キーのペアおよび証明書をキーストアにダウンロードするためのコマンドも提供します。詳細については、「クライアントマシンに保存されたキー」を参照してください。
スマートカードに保存されたキー
非公開キーと公開キーのペアが証明書とともに、スマートカードに保存される場合は、メールユーザーのコンピュータにカードリーダーが適切に接続されている必要があります。カード読み取り装置にはソフトウェアも必要であり、装置およびそのソフトウェアは装置の購入先のベンダーから供給されます。
適切にインストールすると、メールユーザーは、送信するメッセージ用のデジタル署名を作成するときに、スマートカードを読み取り装置に挿入します。スマートカードのパスワードの確認後、Communications Express メールがメッセージに署名するために非公開キーにアクセスできるようになります。サポートされているスマートカードと読み取り装置については、「必要なソフトウェアおよびハードウェアコンポーネント」を参照してください。
スマートカードのベンダーからのライブラリが、ユーザーのコンピュータに必要です。詳細については、「クライアントマシン用のキーアクセスライブラリ」を参照してください。
クライアントマシンに保存されたキー
キーのペアおよび証明書をスマートカードに保存しない場合は、メールユーザーのコンピュータ (クライアントマシン) のローカルキーストアに保存する必要があります。クライアントマシンのブラウザがキーストアを提供し、キーのペアおよび証明書をキーストアにダウンロードするためのコマンドも提供します。キーストアはパスワードで保護される場合がありますが、これはブラウザによって異なります。
ローカルキーストアをサポートするには、ユーザーのコンピュータにはブラウザのベンダーからのライブラリが必要です。詳細については、「クライアントマシン用のキーアクセスライブラリ」を参照してください。
LDAP ディレクトリでの公開キーの公開
すべての公開キーおよび証明書は、Sun Java System Directory Server によってアクセス可能な、LDAP ディレクトリに保存する必要もあります。この行為は、S/MIME メッセージを作成するほかのメールユーザーが利用できるようにするための、公開キーの公開と呼ばれます。
送信者および受信者の公開キーは、暗号化されたメッセージの暗号化および復号化の処理で使用されます。公開キーの証明書は、デジタル署名に使用された非公開キーの検証に使用されます。
公開キーおよび証明書を公開するために ldapmodify を使用する方法については、「証明書の管理」を参照してください。
メールユーザーに S/MIME の使用を許可する
署名付きまたは暗号化されたメッセージを作成するには、正当な Communications Express メールユーザーが作成許可を持っている必要があります。このためには、ユーザーの LDAP エントリに mailAllowedServiceAccess または mailDomainAllowedServiceAccess LDAP 属性を使用します。これらの属性を使用して、個人またはドメインベースでメールユーザーに S/MIME の使用を許可または拒否できます。
詳細については、「S/MIME 機能の使用を許可する」を参照してください。
複数言語のサポート
メールメッセージに英語のみを使用する Communications Express メールユーザーは、中国語など Latin 以外の言語の文字を含む S/MIME メッセージを読めない場合があります。この理由の 1 つは、そのユーザーのマシンにインストールされた Java 2 Runtime Environment (JRE) には /lib ディレクトリに charsets.jar ファイルがないためです。
デフォルトの JRE インストールプロセスを使用して英語版の JRE をダウンロードした場合、charsets.jar ファイルはインストールされません。ただし、デフォルトインストールのすべてのその他の言語を選択した場合は、charsets.jar がインストールされます。
charsets.jar ファイルが /lib ディレクトリにインストールされるようにするには、カスタムインストールを使用して JRE の英語版をインストールするようにユーザーに警告します。インストールプロセス時に、ユーザーはその他の言語のサポートオプションを選択する必要があります。
Messaging Server のインストール後の作業この節では、S/MIME アプレットについて説明し、Communications Express メール用に S/MIME を設定するための基本設定手順を示します。設定手順では、S/MIME アプレットのパラメータと Messaging Server のオプションを設定します。
S/MIME アプレット
メッセージの署名、メッセージの暗号化、またはメッセージの復号化の処理は、非公開キーおよび公開キーの確認のためのさまざまな処理とともに、S/MIME アプレットと呼ばれる特別なアプレットで処理されます。S/MIME 機能の設定は、smime.conf ファイルに含まれるパラメータと Messaging Server のオプションを使って行います。図 20-1 に、S/MIME アプレットとほかのシステムコンポーネントとの関係を示します。
図 20-1 S/MIME アプレット
初めてのログイン
S/MIME の使用を許可された Communications Express メールユーザーが初めて Messaging Server にログインするときには、S/MIME アプレットについての一連の特別なプロンプトが表示されます。プロンプトに対して「はい」または「常に」で答えると、S/MIME アプレットがコンピュータにダウンロードされます。アプレットは、ユーザーが Communications Express メールからログアウトするまでマシンに残ります。
詳細は、「証明書の管理」を参照してください。
S/MIME アプレットのダウンロード
ユーザーのマシンで Java 2 Runtime Environment (JRE) に対してキャッシングが有効になっていない限り、ユーザーが Communications Express メールにログインするたびに S/MIME アプレットがダウンロードされます。キャッシングが有効な場合、初期のダウンロード後にユーザーのマシンに S/MIME アプレットのコピーが保存されるので、ユーザーがログインするたびに S/MIME アプレットをダウンロードしなくてすむようになります。
キャッシングはパフォーマンスを向上させるので、Java 2 Runtime Environment、バージョン 1.4.x のキャッシングを有効にするため、次の手順を実行するようにユーザーに指示できます。
ダウンロード後は、ユーザーは S/MIME アプレットを意識することはありません。メッセージの署名、暗号化、または復号化は、Communications Express メールによって行われるようにみえます。エラーメッセージがポップアップ表示されないかぎり、ユーザーは非公開キーまたは公開キーを確認するプロセスにも気がつきません。詳細は、「非公開キーと公開キーの確認」を参照してください。
基本的な S/MIME の設定
S/MIME の設定ファイルの smime.conf には、各パラメータの説明と例が含まれています。smime.conf ファイルは Messaging Server とともに組み込まれ、msg-svr-base/config/ ディレクトリに存在します。この msg-svr-base は、Messaging Server がインストールされるディレクトリです。
次の手順は、S/MIME の機能を設定するために最小限必要な手順です。
- Messaging Server のインストール後、Communications Express メールの基本的な機能が有効であることを確認します。
- まだの場合は、S/MIME の機能を使用することを許可されているすべてのメールユーザーのために、標準の X.509 v3 形式の証明書付きの非公開鍵と公開鍵のペアを作成または入手します。
- スマートカードをキーおよび証明書に使用する場合は、次のようにします。
- ブラウザのローカルキーストアを使用してキーおよび証明書を保存する場合は、キーのペアと証明書をローカルキーストアにダウンロードする方法をメールユーザーに指示します。
- スマートカードまたはローカルキーストアをサポートするための正しいライブラリがクライアントマシンに存在するようにします。詳細については、「クライアントマシン用のキーアクセスライブラリ」を参照してください。
- S/MIME をサポートするように LDAP ディレクトリを設定します。
- Directory Server によってアクセス可能な LDAP ディレクトリに CA のすべての証明書を、認証局の識別名で保存します。それらの証明書の LDAP 属性は、cacertificate;binary です。証明書を保存するディレクトリの情報を書き留めます。この手順のあとのほうでこの情報が必要になります。
LDAP ディレクトリ情報の指定例については「trustedurl」を、LDAP ディレクトリの検索については「証明書の管理」を参照してください。
- Directory Server によってアクセス可能な LDAP ディレクトリに公開キーと証明書を保存します。公開キーと証明書の LDAP 属性は、usercertificate;binary です。公開キーと証明書を保存するディレクトリの情報を書き留めます。この手順のあとのほうでこの情報が必要になります。
LDAP ディレクトリ情報の指定例については「certurl」を、LDAP ディレクトリの検索については「証明書の管理」を参照してください。
- S/MIME メッセージを送受信するすべてのユーザーは、ユーザーエントリで LDAP フィルタにより S/MIME を使用することを許可されるようにします。mailAllowedServiceAccess または mailDomainAllowedServiceAccess LDAP 属性でフィルタを定義します。
注: デフォルトでは、mailAllowedServiceAccess または mailDomainAllowedServiceAccess を使用しない場合、smime を含むすべてのサービスが利用可能です。これらの属性でサービスを明示的に指定する場合は、サービスの http および smtp、また smime を指定して、メールユーザーに S/MIME 機能を使用する許可を与える必要があります。
詳細については、「S/MIME 機能の使用を許可する」を参照してください。
- 使用可能なテキストエディタで smime.conf ファイルを編集します。パラメータの構文についてはファイルの始めにあるコメントを参照してください。
smime.conf 内のすべてのテキストおよび例のパラメータの前には、コメント文字 (#) がついています。必要なパラメータを smime.conf に追加するか、パラメータの例をファイルの別の部分にコピーしてその値を変更できます。例をコピーして編集する場合は、その行の先頭の # 文字を必ず削除してください。
次のパラメータをファイルに追加する場合、各パラメータを別々の行に追加します。
- trustedurl -- CA の証明書の場所を特定するための LDAP ディレクトリ情報を設定します。手順 6 の手順 a で書き留めておいた情報を使用します。
- usercertfilter -- smime.conf ファイルに含まれる例の値を設定します。例の値は、ほとんどの場合、必要なフィルタです。例をコピーし、行の先頭の # 文字を削除します。
このパラメータは、Communications Express メールユーザーのプライマリ、代替、および同等の電子メールアドレスのフィルタ定義を指定し、キーのペアが異なるメールアドレスに割り当てられるときにユーザーの非公開キーと公開キーのペアのすべてが見つかるようにします。
- sslrootcacertsurl -- S/MIME アプレットと Messaging Server 間の通信リンクに SSL を使用する場合、sslrootcacertsurl に Messaging Server の SSL 証明書の確認に使用する CA の証明書の場所を特定するための LDAP ディレクトリ情報を設定します。詳細については、「SSL でインターネットリンクを保護する」を参照してください。
checkoverssl -- S/MIME アプレットと Messaging Server 間の通信リンクに SSL を使用しない場合は、0 に設定します。
- crlenable -- CRL チェックを行うと、smime.conf ファイルにほかのパラメータを追加する必要がある場合があるため、一時的に CRL チェックを無効にするには 0 に設定します。
- logindn および loginpw -- 公開キーと CA 証明書が含まれる LDAP ディレクトリにアクセスするための認証が必要な場合は、これらのパラメータには読み取り権限を持つ LDAP エントリの識別名とパスワードを設定します。
注: certurl、crlmappingurl、sslrootcacertsurl、または trustedurl パラメータによって指定された LDAP 情報で LDAP ディレクトリがアクセスされるたびに、logindn および loginpw の値が使用されます。詳細については、「公開キー、CA 証明書、および CRL にアクセスするための、資格情報を使用した LDAP へのアクセス」を参照してください。
認証で LDAP ディレクトリにアクセスする必要がない場合は、logindn および loginpw を設定してはなりません。
- 次のように configutil で Messaging Server オプションを設定します。
- local.webmail.smime.enable -- 1 に設定します。
- local.webmail.cert.enable -- 証明書を CRL でチェックする場合は、1 に設定します。
詳細については、「Messaging Server オプション」を参照してください。
- これで Communications Express メールが S/MIME 機能対応に設定されました。次の手順に従って S/MIME 機能が有効であることを確認します。
- Messaging Server を再起動します。
- S/MIME に関連する診断メッセージを、Messaging Server ログファイルの msg-svr-base/log/http で確認します。
- S/MIME の問題が検出された場合は、設定パラメータでどのように問題を修正すべきか判断するのに診断メッセージが役立ちます。
- 必要な設定パラメータを訂正します。
- Messaging Server のログファイルに S/MIME の診断メッセージがなくなるまで手順 a. 〜 d. を繰り返します。
- 次の手順に従って S/MIME 機能が有効であることを確認します。
- クライアントマシンから Messaging Server にログインします。S/MIME アプレット用の特別なプロンプトに対して「はい」または「常に」で答えます。詳細については、「証明書の管理」を参照してください。
- 自分宛の短いメッセージを作成します。
- 「作成」ウィンドウの下部の「暗号化」チェックボックスのチェックマークがまだ付いていない場合は付けて、メッセージを暗号化します。
- 「送信」をクリックして、暗号化したメッセージを自分自身に送信します。これは、キーおよび証明書のほとんどのメカニズムを実際に使用します。
- 暗号化されたメッセージの問題が検出された場合、もっともよくある原因は smime.conf ファイル内の LDAP ディレクトリに使用した値や LDAP ディレクトリへのキーおよび証明書の保存方法に関するものです。診断メッセージの詳細については、Messaging Server ログを確認してください。
表 20-3 に要約された残りの S/MIME パラメータは、S/MIME 環境をさらに設定するために使用できる多くのオプションを提供します。パラメータについては、「smime.conf ファイルのパラメータ」を参照してください。
表 20-3 smime.conf パラメータの要約
S/MIME の必須パラメータ
スマートカードおよびローカルキーストアのパラメータ
CRL チェックのパラメータ
初期設定とセキュリティ保護されたリンクのパラメータ
* これらのパラメータにはデフォルト値がないので、値を指定する必要があります。
公開キー、CA 証明書、および CRL にアクセスするための、資格情報を使用した LDAP へのアクセス
S/MIME に必要な公開キー、CA 証明書、および CRL は、LDAP ディレクトリに保存されます (前の節を参照)。キー、証明書、および CRL には、LDAP の 1 つの URL または複数の URL からアクセスできます。たとえば、CRL を 1 つの URL に、公開キーと証明書を別の URL に保存できます。Messaging Server では、必要な CRL または証明書情報をどの URL に含めるか、またそれらの URL へアクセスできるエントリの DN およびパスワードも指定できます。それらの DN/パスワードの資格情報はオプションです。いずれも指定しない場合、LDAP はまず HTTP サーバーの資格情報でアクセスを試み、それが失敗した場合は、anonymous でのアクセスを試みます。
次の smime.conf の資格情報パラメータの 2 つのペアを設定して、必要な URL にアクセスできます。logindn と loginpw、および crlurllogindn と crlurlloginpw。
logindn と loginpw は、smime.conf に含まれるすべての URL に使用される資格情報です。certurl および trustedurl パラメータによって指定された公開キー、公開キーの証明書、および CA 証明書の読み取り権限がある LDAP エントリの DN およびパスワードを指定します。
crlurllogindn および crlurlloginpw は、マッピングテーブルから得られる URL に対する読み取り権限がある LDAP エントリの DN およびパスワードを指定します (詳細は、「CRL へのアクセス」を参照)。それらの資格情報が受け入れられない場合、LDAP アクセスは拒否され、その他の資格情報での再試行は行われません。パラメータは両方とも指定するか、または両方とも空である必要があります。これらのパラメータは、証明書から直接得られる URL には適用されません。
特定の URL のパスワードの設定
Messaging Server では、次の smime.conf URL にアクセスするための DN とパスワードのペアを具体的に定義することができます。certUrl、trustedUrl, crlmappingUrl、sslrootcacertsUrl。
構文は次のとおりです。
url_type URL[|URL_DN | URL_password]
次に例を示します。
trustedurl==ldap://mail.siroe.com:389/cn=Directory Manager, ou=people, o=siroe.com,o=ugroot?cacertificate?sub?(objectclass=certificationauthority) | cn=Directory manager | boomshakalaka
LDAP 資格情報の使用の要約
この節では、LDAP 資格情報の使用について簡単に説明します。
smime.conf ファイルのパラメータsmime.conf ファイルは Messaging Server とともに組み込まれ、msg-svr-base/config/ ディレクトリに存在します。この msg-svr-base は、Messaging Server がインストールされるディレクトリです。ファイルに含まれるすべてのテキストおよびパラメータの例の前には、コメント文字 (#) がついています。
値を指定したパラメータを smime.conf ファイルに追加するか、またはパラメータの例を編集できます。例を使用する場合、例をファイルの別の部分にコピーし、パラメータの値を編集し、行の先頭の # 文字を削除します。
Messaging Server をインストールしたあとに、使用可能なテキストエディタで smime.conf を編集します。表 20-4 に説明があるパラメータには、大文字と小文字の区別がなく、特に指定されていないかぎり、設定する必要はありません。
表 20-4 smime.conf ファイルの S/MIME 設定パラメータ
パラメータ
目的
alwaysencrypt
S/MIME を使用する許可が与えられているすべての Communications Express メールユーザーのためにすべての送信メッセージを自動的に暗号化するかどうかの初期設定を制御します。各 Communications Express メールユーザーは、表 20-6 に説明があるチェックボックスを使用して、各自のメッセージに対してこのパラメータの値を無効にできます。
次の値のいずれかを選択します。
0 - メッセージを暗号化しません。Communications Express メールでは暗号化チェックボックスのチェックマークが付いていない状態で表示されます。これがデフォルトです。
1 - メッセージを常に暗号化します。Communications Express メールでは暗号化チェックボックスのチェックマークが付いた状態で表示されます。
例:
alwaysencrypt==1
alwayssign
S/MIME を使用する許可が与えられているすべての Communications Express メールユーザーのためにすべての送信メッセージに自動的に署名を付けるかどうかの初期設定を制御します。各 Communications Express メールユーザーは、表 20-6 に説明があるチェックボックスを使用して、各自のメッセージに対してこのパラメータの値を無効にできます。
次の値のいずれかを選択します。
0 - メッセージに署名しません。Communications Express メールでは署名チェックボックスのチェックマークが付いていない状態で表示されます。これがデフォルトです。
1 - メッセージに常に署名します。Communications Express メールでは署名チェックボックスのチェックマークが付いた状態で表示されます。
例:
alwaysensign==1
certurl
Communications Express メールユーザーの公開キーおよび証明書の場所を特定するための LDAP ディレクトリ情報を指定します。公開キーの LDAP 属性は、usercertificate;binary です。証明書については、「証明書の管理」を参照してください。
このパラメータは、Messaging Server がサービスを提供するすべてのユーザーが含まれる LDAP ディレクトリ情報ツリーのユーザー/グループの最上位のノードを指す必要があります。これは、複数のドメインがあるサイトでは特に重要になります。識別名は、1 つのドメインのユーザーが含まれるサブツリーではなく、ユーザー/グループツリーのルートの識別名である必要があります。
このパラメータの設定は必須です。
例:
certurl==ldap://mail.siroe.com:389/ou=people, o=siroe.com, o=ugroot
checkoverssl
キーの証明書を CRL でチェックするときに SSL 通信リンクを使用するかどうかを制御します。詳細については、「SSL でインターネットリンクを保護する」を参照してください。
次の値のいずれかを選択します。
0 - SSL 通信リンクを使用しません。
1 - SSL 通信リンクを使用します。これがデフォルトです。
CRL チェックが有効な場合に、プロキシサーバーを使用すると、問題が発生する場合があります。詳細については、「プロキシサーバーと CRL チェック」を参照してください。
crlaccessfail
CRL へのアクセスを複数回試行し、アクセスに失敗したあとに、Messaging Server が再びアクセスを試みるまでの待機時間を指定します。このパラメータにはデフォルト値がありません。
構文:
crlaccessfail==number_of_failures:time_period_for_failures:wait_time_before_retry
ここで、
number_of_failures は、time_period_for_failures によって指定された時間間隔の間に Messaging Server が CRL へのアクセスを失敗できる回数です。値は、0 よりも大きくする必要があります。
time_period_for_failures は、Messaging Server が失敗した CRL へのアクセス試行を数える秒単位の期間です。値は、0 よりも大きくする必要があります。
wait_time_before_retry は、指定された時間間隔に、失敗した試行回数が限度に達したことを検出してから、Messaging Server が再度 CRL へのアクセスを試みる前に、待つ秒数です。値は、0 よりも大きくする必要があります。
例:
crlaccessfail==10:60:300
この例では、Messaging Server は CRL へのアクセスを 1 分以内に 10 回失敗します。その後、5 分待ってから、再び CRL へのアクセスを試みます。詳細については、「CRL へのアクセスの問題」を参照してください。
crldir
Messaging Server が CRL をダウンロードするディスク上のディレクトリ情報を指定します。デフォルトは、msg-svr-base/data/store/mboxlist であり、ここの msg-svr-base は Messaging Server がインストールされたディレクトリです。詳細については、「古い CRL の使用」を参照してください。
crlenable
証明書を CRL でチェックするかどうかを制御します。一致するものがある場合は、証明書は失効したとみなされます。smime.conf ファイルの send*revoked パラメータの値は、証明書が失効したキーを Communications Express メールが拒否するか、または使用するかどうかを決定します。詳細については、「非公開キーと公開キーの確認」を参照してください。
次の値のいずれかを選択します。
0- 各証明書を CRL でチェックしません。
1- 各証明書を CRL でチェックします。これがデフォルトです。Messaging Server の local.webmail.cert.enable オプションを 1 に設定するようにします。そのようにしないと、crlenable が 1 に設定されても CRL チェックは行われません。
crlmappingurl
CRL マッピング定義の場所を特定するための LDAP ディレクトリ情報を指定します。このパラメータは、マッピング定義がある場合にのみ必要です。詳細については、「CRL へのアクセス」を参照してください。このパラメータにはデフォルト値がありません。URL へアクセスするための DN およびパスワードを追加することもできます。
構文:
crlmappingurl URL[|URL_DN | URL_password]
例:
crlmappingurl==ldap://mail.siroe.com:389/cn=XYZ Messaging, ou=people, o=mail.siroe.com,o=isp?msgCRLMappingRecord?sub?(objectclass=msgCRLMappingTable)|cn=Directory Manager | pAsSwOrD
crlurllogindn
CRL マッピング定義に対する読み取り権限がある LDAP エントリの識別名を指定します (エントリが証明書から直接のものでない場合の詳細は、「CRL へのアクセス」を参照)。
crllogindn および crlloginpw の値を指定しない場合は、Messaging Server は LDAP ディレクトリにアクセスするために HTTP サーバーに対するログイン値を使用します。それが失敗した場合、Messaging Server は匿名で LDAP ディレクトリへのアクセスを試みます。
例:
crllogindn==cn=Directory Manager
crlurlloginpw
crllogindn パラメータの識別名に対するパスワードを ASCII テキストで指定します。
crllogindn および crlloginpw の値を指定しない場合、Messaging Server は LDAP ディレクトリにアクセスするために HTTP サーバーに対するログイン値を使用します。それが失敗した場合、Messaging Server は匿名で LDAP ディレクトリへのアクセスを試みます。
例:
crlloginpw==zippy
crlusepastnextupdate
現在の日付が CRL の次の更新日フィールドに指定された日付を過ぎたときに CRL を使用するかどうかを制御します。詳細については、「古い CRL の使用」を参照してください。
次の値のいずれかを選択します。
0 - 古い CRL を使用しません。
1 - 古い CRL を使用します。これがデフォルトです。
logindn
certurl および trustedurl パラメータによって指定された LDAP ディレクトリにある公開キーおよび公開キーの証明書、また CA 証明書の読み取り権限がある LDAP エントリの識別名を指定します。
logindn および loginpw の値が指定されない場合は、Messaging Server は LDAP ディレクトリにアクセスするために HTTP サーバーに対するログイン値を使用します。それが失敗した場合、Messaging Server は匿名で LDAP ディレクトリへのアクセスを試みます。
例:
logindn==cn=Directory Manager
loginpw
logindn パラメータの識別名に対するパスワードを ASCII テキストで指定します。
logindn および loginpw の値が指定されない場合は、Messaging Server は LDAP ディレクトリにアクセスするために HTTP サーバーに対するログイン値を使用します。それが失敗した場合、Messaging Server は匿名で LDAP ディレクトリへのアクセスを試みます。
例:
loginpw==SkyKing
platformwin
Microsoft Windows プラットフォームでスマートカードまたはローカルキーストアを使用するときに必要なライブラリ名を 1 つ以上指定します。クライアントマシンでデフォルト値ではうまくいかない場合にのみこのパラメータを変更します。デフォルトは次のとおりです。
platformwin==CAPI:library=capibridge.dll;
詳細については、「クライアントマシン用のキーアクセスライブラリ」を参照してください。
readsigncert
メッセージを読むときに S/MIME デジタル署名を確認するために、公開キーの証明書を CRL でチェックするかどうかを制御します。非公開キーを使用してメッセージのデジタル署名を作成しますが、非公開キーを CRL でチェックすることはできないので、非公開キーに関連付けられた公開キーの証明書が CRL でチェックされます。詳細については、「非公開キーと公開キーの確認」を参照してください。
次の値のいずれかを選択します。
0- 証明書を CRL でチェックしません。
1- 証明書を CRL でチェックします。これがデフォルトです。
revocationunknown
証明書を CRL でチェックしたときに、あいまいなステータスが返された場合に実行するアクションを決定します。この場合、証明書のステータスが有効または失効のどちらであるかは確かでありません。詳細については、「非公開キーと公開キーの確認」を参照してください。
次の値のいずれかを選択します。
ok - 証明書が有効であるとして扱います。
revoked - 証明書が失効しているとして扱います。これがデフォルトです。
sendencryptcert
送信メッセージの暗号化に使用する公開キーの証明書を使用する前に CRL でチェックするかどうかを制御します。詳細については、「非公開キーと公開キーの確認」を参照してください。
次の値のいずれかを選択します。
0- 証明書を CRL でチェックしません。
1- 証明書を CRL でチェックします。これがデフォルトです。
sendencryptcertrevoked
送信メッセージの暗号化に使用した公開キーの証明書が失効した場合に実行するアクションを決定します。詳細については、「非公開キーと公開キーの確認」を参照してください。
次の値のいずれかを選択します。
allow - 公開キーを使用します。
disallow - 公開キーを使用しません。これがデフォルトです。
sendsigncert
送信メッセージのデジタル署名の作成に非公開キーを使用できるかどうかを判断するために、公開キーの証明書を CRL でチェックするかどうかを制御します。デジタル署名に非公開キー使用をしますが、非公開キーを CRL でチェックすることはできないので、非公開キーに関連付けられた公開キーの証明書が CRL でチェックされます。詳細については、「非公開キーと公開キーの確認」を参照してください。
次の値のいずれかを選択します。
0- 証明書を CRL でチェックしません。
1- 証明書を CRL でチェックします。これがデフォルトです。
sendsigncertrevoked
非公開キーのステータスが失効であると判断されたときに実行するアクションを決定します。非公開キーを使用してメッセージのデジタル署名を作成しますが、非公開キーを CRL でチェックすることはできないので、非公開キーに関連付けられた公開キーの証明書が CRL でチェックされます。公開キーの証明書が失効すると、対応する非公開キーも失効します。詳細については、「非公開キーと公開キーの確認」を参照してください。
次の値のいずれかを選択します。
allow - 失効ステータスの非公開キーを使用します。
disallow - 失効ステータスの非公開キーを使用しません。これがデフォルトです。
sslrootcacertsurl
Messaging Server の SSL 証明書を確認するために使用される有効な CA の証明書の場所を特定するための識別名と LDAP ディレクトリ情報を指定します。Messaging Server で SSL が有効である場合には、これは必須のパラメータです。詳細については、「SSL でインターネットリンクを保護する」を参照してください。
クライアントアプリケーションからすべての要求を受信するプロキシサーバーに対する SSL 証明書を持っている場合、それらの SSL 証明書の CA 証明書もこのパラメータが指す LDAP ディレクトリに存在する必要があります。
URL へアクセスするための DN およびパスワードを追加することもできます。
構文:
crlmappingurl URL[|URL_DN | URL_password]
例:
sslrootcacertsurl==ldap://mail.siroe.com:389/cn=SSL Root CA Certs, ou=people, o=siroe.com, o=isp? cacertificate;binary?base?
(objectclass=certificationauthority)|cn=Directory Manager | pAsSwOrDtimestampdelta
公開キーの証明書を CRL でチェックするときにメッセージの送信時間または受信時間のどちらを使用するかを決定するために使用する秒単位の時間間隔を指定します。
このパラメータのデフォルト値の 0 は、常に受信時間を使用するように Communications Express メールに指示します。詳細については、「使用するメッセージ時刻の判断」を参照してください。
例:
timestampdelta==360
trustedurl
有効な CA の証明書の場所を特定するための識別名と LDAP ディレクトリ情報を指定します。これは必須のパラメータです。
URL へアクセスするための DN およびパスワードを追加することもできます。
構文:
crlmappingurl URL[|URL_DN | URL_password]
例:
trustedurl==ldap://mail.siroe.com:389/cn=Directory Manager, ou=people, o=siroe.com,o=ugroot?cacertificate?sub?(objectclass=certificationauthority)|cn=Directory Manager | pAsSwOrD
usercertfilter
Communications Express メールユーザーのプライマリ、代替、および同等の電子メールアドレスのフィルタ定義を指定し、キーのペアが異なるメールアドレスに割り当てられるときにユーザーの非公開キーと公開キーのペアのすべてが見つかるようにします。
このパラメータは必須であり、デフォルト値がありません。
Messaging Server オプションS/MIME に適用する 3 つの Messaging Server オプションを設定するには、Messaging Server がインストールされたマシンで以下を実行します。
- root としてログインします。次に、次のように入力します。
# cd msg-svr-base/sbin
msg-svr-base は Messaging Server がインストールされたディレクトリです。
- 次の表に説明がある Messaging Server オプションをシステムの要件に応じて設定します。次のオプションを設定するには、configutil ユーティリティを使用します。別途記載がないかぎり、オプションを設定する必要はありません。
SSL でインターネットリンクを保護する次の表に要約されているように、Messaging Server では Communications Express メールに影響するインターネットリンクのために Secure Socket Layer (SSL) をサポートしています。
リンク
説明
Messaging Server と Communications Express メール間
このリンクを SSL で保護するには、Messaging Server の管理作業が必要です。Communications Express メールユーザーは、ブラウザで Messaging Server に対する URL 情報を入力するときに、HTTP ではなく、HTTPS プロトコルを使用する必要があります。
詳細については、「Messaging Server と Communications Express メール間のリンクを保護する」を参照してください。
Messaging Server と S/MIME アプレットの間
公開キーの証明書を CRL でチェックするときには、S/MIME アプレットは Messaging Server と直接通信する必要があります。SSL でリンクを保護する場合は、smime.conf ファイルの sslrootcacertsurl および checkoverssl を設定することに加えて、Messaging Server の管理作業が必要になります。
詳細については、「Messaging Server と S/MIME アプレット間のリンクを保護する」を参照してください。
Messaging Server と Communications Express メール間のリンクを保護する
Messaging Server は Messaging Server と Communications Express メール間のインターネットリンクに対する Secure Socket Layer (SSL) の使用をサポートします。Messaging Server を SSL 用に設定したら、Communications Express を SSL 用に設定します。詳細は、『Communications Express 管理ガイド』(http://docs.sun.com/doc/819-1065?l=ja) を参照してください。Communications Express メールユーザーは、次のようにブラウザに HTTP プロトコル (HTTP://hostname.domain:unsecure_port) ではなく、HTTPS プロトコルで Communications Express URL を指定します。
HTTPS://hostname.domain:secured_port
Communications Express のログインウィンドウが表示されると、リンクが保護されていることを示すロックアイコンがウィンドウの下部のロックされた位置に表示されます。
Messaging Server の SSL 設定情報については、「暗号化と証明書に基づく認証を構成する」を参照してください。また、『Communications Express 管理ガイド』(http://docs.sun.com/doc/819-1065?l=ja) も参照してください。
Messaging Server と S/MIME アプレット間のリンクを保護する
公開キーの証明書を CRL でチェックするときには、S/MIME アプレットは Messaging Server と直接通信する必要があります。SSL でこの通信リンクを保護するには、次の手順を実行します。
- SSL に対応するように Messaging Server を設定する管理作業を実行します。「暗号化と証明書に基づく認証を構成する」を参照してください。
- ルートの SSL CA 証明書の場所を特定するための情報を指定するために smime.conf ファイルの sslrootcacertsurl パラメータを設定します。それらの CA 証明書は、Messaging Server と S/MIME アプレット間に SSL リンクが確立されたときに Messaging Server の SSL 証明書を確認するために使用されます。
- smime.conf ファイルの checkoverssl パラメータに 1 を設定します。この Messaging Server オプションは、Messaging Server と S/MIME アプレット間のリンクに SSL を使用するかどうかを決定します。Communications Express メールユーザーが Messenger Server の URL をどのように指定しようと (HTTP または HTTPS)、checkoverssl が 1 に設定されると、Messaging Server と S/MIME アプレット間のリンクは SSL で保護されます。
注
Messaging Server と、Communications Express メールなどのクライアントアプリケーション間にはプロキシサーバーを使用できます。保護されたまたは保護されていない通信リンクとプロキシサーバーの使用方法については、「プロキシサーバーと CRL チェック」を参照してください。
クライアントマシン用のキーアクセスライブラリメールユーザーが非公開キーと公開キーのペアおよび証明書をスマートカードまたはブラウザのローカルキーストアのどちらに保存しようと、その保存方法をサポートするために、クライアントマシンにキーアクセスライブラリが存在する必要があります。
ライブラリは、スマートカードおよびブラウザのベンダーが提供します。適切なライブラリがクライアントマシンに存在するようにし、smime.conf ファイルに適切なプラットフォームパラメータでライブラリ名を指定します。選択できるパラメータを次に示します。
クライアントマシンにインストールされていることがわかっているライブラリのみを指定できます。何がインストールされているかわからない場合は、特定のプラットフォームおよびベンダー用のすべてのライブラリ名を指定できます。S/MIME アプレットが指定されたライブラリ名に必要なライブラリを見つけることができない場合は、S/MIME は機能しません。
1 つまたは複数のライブラリファイル名を指定するための構文は、次のとおりです。
platform_parameter==vendor:library=library_name;...
ここで、
platorm_parameter は、Communications Express メールにアクセスするクライアントマシンのプラットフォーム用のパラメータ名です。次の名前が選択可能です。platformwin
vendorは、スマートカードまたはブラウザのベンダーを指定します。次の文字のいずれかを選択します。
cac (ActivCard または NetSign スマートカードの場合)
capi (CAPI を使用する Internet Explorer の場合)
mozilla (ネットワークセキュリティサービスを使用する Mozilla の場合)library_name は、ライブラリファイル名を指定します。使用しているベンダーおよびオペレーティングシステムのライブラリ名については、表 20-5 を参照してください。
例
次の例では、Microsoft Windows プラットフォーム用のスマートカードライブラリを 1 つ、Internet Explorer ライブラリを 1 つ、および Mozilla ライブラリを 1 つ指定しています。
platformwin==CAC:library=acpkcs211.dll;CAPI:library=capibridge.dll;
MOZILLA:library=softokn3.dll;
非公開キーと公開キーの確認Communications Express メールは、図 20-2 に示された確認テストに合格してからでないと、非公開キーも公開キーも使用できません。この節の以下の部分では、公開キーの証明書を CRL でチェックする方法の詳細について説明します。
図 20-2 非公開キーと公開キーの確認
ユーザーの非公開キーまたは公開キーを見つける
1 人の Communications Express メールユーザーが複数の非公開および公開キーのペアおよび複数の電子メールアドレス (プライマリ、代替、またはエイリアスアドレス) を持つ場合は、それぞれのキーがそれぞれのアドレスに関連付けられている可能性があります。その場合、S/MIME アプレットが確認のためにすべてのキーを見つけることができることが重要です。smime.conf ファイルで usercertfilter パラメータを使用して、公開キーの証明書を CRL でチェックする時にキーの所有者のメールアドレスのリストを作成するフィルタを定義します。詳細については、「usercertfilter」を参照してください。
証明書が CRL でチェックされるタイミング
証明書失効リスト、すなわち CRL は、キーのペアおよび証明書を発行する CA が管理する失効した証明書のリストのことです。CRL チェックを有効にすると、証明書が要求されるたびに、その証明書が失効しているかどうかを確認するためにシステムが CRL をチェックします。
smime.conf ファイルで crlenable に 1 を設定すると、有効期限が切れていないキーが見つかると CRL テストが実行されます。公開キーの証明書は、CRL でチェックされます。各 CA の CRL は 1 つのみですが、同じ CRL が異なる場所に存在することは可能です。
S/MIME アプレットが Messaging Server にチェックの要求を送信すると、Messaging Server で CRL による証明書のチェックが実行されます。公開キーの証明書は、公開キーの検証に使用されます。非公開キーは公開されず、そのキーの所有者のみが使用するため、非公開キーを CRL で直接チェックすることはできません。非公開キーが有効であるかどうかを確認するには、キーのペアの公開キーの証明書が使用されます。公開キーの証明書が CRL テストに合格すると、関連する非公開キーもテストに合格します。
証明書の所有者が所属組織の一員でなくなったため、またはスマートカードを失くしたためなど、証明書の失効はさまざまな理由で発生します。
証明書を CRL でチェックする必要がある状況には次の 3 つがあります。
CRL へのアクセス
証明書には、配布点と呼ばれる 0 個以上の URL が含まれています。Messaging Server は、配布点を使用して CRL を検索します。証明書に CRL URL が含まれていない場合、証明書を CRL でチェックすることはできず、本当のステータスがわからない状態で非公開キーまたは公開キーがメッセージの署名や暗号化に使用されます。
Messaging Server が利用できるすべての URL を試行しても CRL を見つけることもアクセスすることもできない場合は、証明書のステータスは不明になります。不明ステータスの非公開キーまたは公開キーを使用するかどうかは、revocationunknown の設定によって決定されます。
各 CA には CRL が 1 つのみサポートされますが、同じ CRL の複数のコピーは、ユーザーの公開キーの証明書の異なる URL で示される異なる場所に存在できます。Messaging Server は、CRL にアクセスできるようになるまで、証明書のすべての URL ロケーションを試行します。
アクセスを最適化するために、最新の CRL を CA から必要な場所に定期的にダウンロードして、複数の CRL のコピーを管理できます。証明書に埋め込まれた URL を変更することはできませんが、CRL 情報が含まれる新しい URL へ証明書内の URL をマッピングして、Messaging Server が新しい CRL の場所を使用するようにリダイレクトできます。次の構文を使用して LDAP ディレクトリ上に 1 つ以上のマッピング定義のリストを作成します (「crlmappingurl」を参照)。
msgCRLMappingRecord=url_in_certificate==new_url[|url_login_DN|url_login_password]
url_in_certificate は、CRL を検索するための古い情報が含まれる、証明書内の URL です。new_url は、新しい CRL 情報が含まれる新しい URL です。url_login_DNおよび url_login_password は new_url へのアクセスを許可されたエントリの DN およびパスワードです。両方ともオプションであり、指定した場合、新しい URL のアクセスにのみ使用されます。
DN およびパスワードが受け入れられない場合、LDAP アクセスは拒否され、その他の資格情報での再試行は行われません。これらのログイン資格情報は、LDAP URL に対してのみ有効です。smmime.conf で crlurllogindn および crlurlloginpw を使用する場合は、マッピングレコードにログインの DN およびパスワードを指定する必要はありません。「公開キー、CA 証明書、および CRL にアクセスするための、資格情報を使用した LDAP へのアクセス」を参照してください。
マッピングには 1 層のみが許されます。証明書内の異なる URL を同一の新しい URL にマッピングできますが、証明書の 1 つの URL に複数の新しい URL を割り当てることはできません。たとえば、次のマッピングリストは無効です。
msgCRLMappingRecord=URL12==URL45
msgCRLMappingRecord=URL12==URL66
msgCRLMappingRecord=URL12==URL88
msgCRLMappingRecord=URL20==URL90
msgCRLMappingRecord=URL20==URL93次の例は、正しいマッピングリストです。
msgCRLMappingRecord=URL12==URL45
msgCRLMappingRecord=URL14==URL66
msgCRLMappingRecord=URL88==URL66
msgCRLMappingRecord=URL201==URL90
msgCRLMappingRecord=URL202==URL93LDAP ディレクトリにマッピング定義を作成したら、smime.conf ファイルで crlmappingurl を使用してマッピング定義の場所を特定するためのディレクトリ情報を指定します。「crlmappingurl」を参照してください。
プロキシサーバーと CRL チェック
システムでクライアントアプリケーションと Messaging Server 間にプロキシサーバーを使用する場合、CRL チェックを実行するように適切に S/MIME アプレットを設定しても CRL チェックが妨げられることがあります。この問題が発生すると、Communications Express メールのユーザーは、有効なキーの証明書に対する失効または不明ステータスを警告するエラーメッセージを受信します。
次の状態は、問題が生じる原因になります。
この問題を解決するには、以下を実行します。
詳細は、「SSL でインターネットリンクを保護する」を参照してください。
古い CRL の使用
S/MIME アプレットが Messaging Server にチェックの要求を送信すると、Messaging Server で CRL による証明書のチェックが実行されます。証明書をチェックするたびに CRL をメモリにダウンロードするのではなく、Messaging Server は CRL のコピーをディスクにダウンロードして、そのコピーを証明書のチェックに使用します。すべての CRL には、日付を指定する次の更新日フィールドがあります。この日付以降は、最新のバージョンの CRL を使用する必要があります。次の更新日は、CRL の期限切れ日または使用の時間制限とみなすことができます。次の更新日を過ぎた CRL は、古いものとみなされ、Messaging Server が証明書を次回チェックするときに最新バージョンの CRL をダウンロードするようにします。
S/MIME アプレットが証明書を CRL でチェックするように要求するたびに、Messaging Server は次のことを実行します。
- 現在の日付を CRL の次の更新日と比較します。
- CRL が古くなった場合は、Messaging Server は最新バージョンの CRL をダウンロードしてディスク上の古い CRL を置き換え、チェックを続けます。ただし、最新の CRL が見つからない、またはダウンロードできない場合は、smime.conf ファイルの crlusepastnextupdate の値によって何を行うべきかを判断します。
- crlusepastnextupdate が 0 に設定されている場合、古くなった CRL は使用されず、問題の証明書のステータスはあいまいなになります。S/MIME アプレットは、smime.conf の revocationunknown の値によって次に実行すべきことを判断します。
- revocationunknown に ok が設定されている場合は、証明書を有効とみなし、非公開キーまたは公開キーを使用してメッセージの署名や暗号化が行われます。
- revocationunknown に revoked が設定されている場合は、証明書を無効とみなし、メッセージの署名や暗号化には非公開キーも公開キーも使用せず、キーを使用できないことをポップアップエラーメッセージでメールユーザーに警告します。
crlusepastnextupdate に 1 が設定されている場合は、S/MIME アプレットは古い CRL を使用し続け、これによって Communications Express メール内では処理が中断されることはありませんが、この状況を警告するメッセージが Messaging Server ログファイルに書き込まれます。
証明書が CRL でチェックされるたびに、この一連の手順が実行されます。Messaging Server が新しいバージョンの CRL を適時ダウンロードできる限り、また smime.conf ファイルの設定によっては、メールの処理は中断することなく進行します。古くなった CRL が使用されていることを示すメッセージが繰り返し表示されていないかどうか、Messaging Server ログを定期的に確認してください。新しい CRL がダウンロードできない場合は、アクセスできない理由を調査する必要があります。
使用するメッセージ時刻の判断
timestampdelta パラメータは、主に次の目的で使用されます。
どのメッセージにも次の 2 つの時間が関連付けられています。
メッセージの送信時に有効であった証明書は、メッセージが送信先に到着するまでに失効したり有効期限が切れたりする場合があります。このようになった場合、証明書の妥当性のチェックを行う際に送信時間と受信時間のどちらの時間を使用すべきでしょうか。送信時間を使用すると、メッセージが送信されたときに証明書が有効であったことが確認されます。しかし、常に送信時間を使用することは、メッセージが送信先に到着するのに長い時間がかかることがあるということを考慮していません。そのような場合は、受信時間を使用するほうがよいこともあります。
smime.conf ファイルで timestampdelta パラメータを使用して CRL チェックに使用する時間に影響を与えることができます。このパラメータに秒を表す正の整数を設定します。受信時間から timestampdelta の値を差し引いた時間が送信時間より前の時間である場合は、送信時間が使用されます。そうでない場合は、受信時間が使用されます。timestampdelta の値が小さいほど、受信時間が使用される頻度が高まります。timestampdelta が設定されていない場合は、常に受信時間が使用されます。「timestampdelta」を参照してください。
CRL へのアクセスの問題
ネットワークやサーバーの問題などさまざまな理由で、Messaging Server が証明書を CRL でチェックしようとしたときに CRL が利用できないことがあります。Messaging Server に絶えず CRL へのアクセスを試行させるのではなく、smime.conf ファイルで crlaccessfail パラメータを使用して、CRL へのアクセスを試みる頻度を管理し、ほかのタスクのために Messaging Server を解放できます。
crlaccessfail で次のことを定義します。
パラメータの構文および例については、「crlaccessfail」を参照してください。
証明書が失効した場合
公開キーの証明書が CRL のエントリに一致しない場合、非公開キーまたは公開キーを使用して、送信するメッセージの署名や暗号化を行います。証明書が CRL のエントリに一致する場合、または証明書のステータスが不明な場合は、非公開キーまたは公開キーは失効したとみなされます。デフォルトでは、Communications Express メールは送信するメッセージの署名や暗号化に、証明書が失効しているキーは使用しません。受信者が署名付きのメッセージを読む時点でそのメッセージの非公開キーが失効している場合は、受信者は署名が信頼できないことを示す警告メッセージを受け取ります。
必要に応じて、smime.conf ファイルに次のパラメータを指定して、すべての失効した証明書に対する各種デフォルトポリシーを変更できます。
S/MIME 機能の使用を許可するCommunications Express メールを介して利用できるさまざまなメールサービスを使用する許可は、LDAP フィルタで付与または拒否できます。mailAllowedServiceAccess または mailDomainAllowedServiceAccess LDAP 属性でフィルタを定義します。一般に、フィルタは次の 3 通りのいずれか 1 つの役目を果たします。
S/MIME の必須のメールサービス名は、http、smime、および smtp です。Communications Express メールユーザー間で S/MIME の使用を制限する必要がある場合は、適切な LDAP 属性構文およびサービス名を使用してフィルタを作成します。属性は、LDAP コマンドで作成または変更します。
S/MIME の許可の例
1. 次の例は、1 人の Communications Express メールユーザーの S/MIME 機能へのアクセスを阻止します。
mailAllowedServiceAccess:-smime:*$+imap,pop,http,smtp:*
または
mailAllowedServiceAccess:+imap,pop,http,smtp:*
2. 次の例は、1 つのドメイン内のすべての Communications Express メールユーザーの S/MIME 機能へのアクセスを阻止します。
mailDomainAllowedServiceAccess:-smime:*$+imap:*$+pop:*$+smtp:*$+http:*
または
mailDomainAllowedServiceAccess:+imap:*$+pop:*$+smtp:*$+http:*
詳細については、「フィルタの構文」を参照してください。
証明書の管理次のほとんどの例では、ldapsearch および ldapmodify コマンドを使用して、LDAP ディレクトリでユーザーキーおよび証明書を検索しています。それらのコマンドは、Directory Server が提供します。それらのコマンドについては、『Sun ONE Directory Server Resource Kit Tools Reference』のリリース 5.2 を参照してください。
LDAP ディレクトリに含まれる CA 証明書
この例では、認証局の証明書を LDAP ディレクトリに追加します。それらの証明書のディレクトリ構造はすでに存在しています。証明書および証明書が属す LDAP エントリを add-root-CA-cert.ldif とうい名前の .ldif ファイルに入力します。証明書情報以外のすべてのテキストは ASCII テキストとしてファイルに入力します。証明書情報は Base64 でエンコーディングされたテキストとして入力する必要があります。
dn: cn=SMIME Admin,ou=people,o=demo.siroe.com,o=demo
objectClass:top
objectClass:person
objectClass:organizationalPerson
objectClass:inetOrgPerson
objectClass: certificationAuthority
cn: RootCACerts
sn: CA
authorityRevocationList: novalue
certificateRevocationList: novalue
cacertificate;binary:: MFU01JTUUEjAQBgNVBAsTCU1zZ1NlcnZlcjcMBoGA1UEAxMTydG
QGEwJVUzEOMAwGA1UEMFUJTUUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEMBoGA1UEAxMTQ2VydG
aFw0wNjAxMwODAwMDBaM267hgbX9FExCzAJByrjgNVBAk9STklBMQwCgYDVQQVHR8EgaQwg
YTAlVMRMQYDVQQIEwpDQUxJRk9STklBMQwwCgYDVQQKEwww3ltgYz11lzAdBgNVBpYSE9Vc
5yZWQaddWlm899XBsYW5ldC5jb20wgZ8wDQYJoGBAK1mUTy8vvnOFg4mlHjkghytQUR1k8l
5mvWRf77ntm5mGXRD3XMU4OciUq6zUfIg3ngvxlLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE
+FNAJmtOV2A3wMyghqkVPNDP3Aqq2fkcn4va3C5nRNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn
weMBAAjggEXMIIBEzARBglghkgBhCAQEEBApqlSai4mfuvjh02SQkoPMNDAgTwMB8GA1UdI
QYMBaAEd38IK05AHreiU9OYc6vNMOwZMIGsBgNVHR8EgaQwgaEwb6BtoGuGaWxkYXA6Lyht
bmcucmVkLmlbGFuZXQuY29tL1VJD1DXJ0aWZpY2F0ZSBNYW5hZ2VyLE9VPVBlb3BsZSxPPW
aWxxYT9jZXJ0aZpY2jdu2medXRllkghytQURYFNrkuoCygKoYoaHR0cDovL3Bla2kghytQU
Zy5yZWQuaXBsYW5lC5jb20vcGVranLmNybDAeBgNVHREEFzAVgRNwb3J0aWEuc2hhb0BzdW
4uY29tMA0GCxLm78freCxS3Pp078jyTaDci1AudBL8+RrRUQvxsMJfZeFED+Uuf10Ilt6kw
Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw==CA の証明書は、ldapmodify コマンドを使用して LDAP ディレクトリに追加されます。
# ldapmodify -a -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd -v
-f add-root-CA-cert.ldifsmime.conf の trustedurl パラメータの値は、LDAP ディレクトリ内の CA 証明書の位置を指定します。例 1 では、trustedurl は次のように設定されます。
trustedurl==ldap://demo.siroe.com:389/cn=SMIME Admin, ou=people, o=demo.siroe.com,o=demo?cacertificate;binary?sub?(objectclass=certi ficationAuthority)
LDAP ディレクトリに含まれる公開キーおよび証明書
この例は、メールユーザーの公開キーおよび証明書を LDAP ディレクトリに追加する方法を示しています。この例では、メールユーザーがすでに LDAP ディレクトリに存在していると仮定しています。キーおよび証明書、またそれらが属す LDAP エントリを add-public-cert.ldif とうい名前の .ldif ファイルに入力します。キーおよび証明書情報以外のすべてのテキストは ASCII テキストとしてファイルに入力します。キーおよび証明書情報は Base64 でエンコーディングされたテキストとして入力する必要があります。
dn: uid=JohnDoe,ou=People, o=demo.siroe.com,o=demo
changetype:modify
replace: usercertificate
usercertificate;binary:: MFU01JTUUxEjAQBgNVBAsT1zZ1NlcnZlcjMBoGA1UEAxMTydG
QGEwJVUzEAwGA1hMFU01JTUUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEcMBoGA1UEAxMTQ2VydG
aFw0wNjAxMTODAwaM267hgbX9FExCzAJBgwyrjgNVBAk9STklBMQwwCgYDVQQVHR8EgaQwg
AlVzMRMwEQYDVQQIDQUxJRk9STklBMQwwCgYDVQQKEwww3ltgoOYz11lzAdBgNVBpYSE9Vc
5yZWaddiiWlm899XBsYW5ldb20wgZ8wDQYJoGBAK1mUTy8vvO2nOFg4mlHjkghytQUR1k8l
5mvgcWL77ntm5mGXRD3XMU4OcizUfIg3ngvxlLKLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE
+FG9NAqtOV2A3wMyghqkVPNDP3Aqq2BYfkcn4va3RNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn
1NAgMBGjggEXMIIBEzARBglghkgBhvhCAQEEBApqlSai4mfuvjh02SQMNDAgTwMB8GA1UdI
QYMBaEd38IK05AHreiU9OYc6v+ENMOwZMIGsBgNVHR8EgaQwgaEwb6BuGaWxkYXA6Lyht74
tpbmcmVkLmlwbGFuZXQuY29tL1VJRD1DZXJ0aWZpY2F0ZSBNYW5hZ2V9VPVBlb3BsZSxPPW
1haWxT9jZXJ0aWZpY2jdu2medXRllHjkghytQURYFNrkuoCygKoYoaHDovL3Bla2kghytQU
luZy5WQuaXBsYW5ldC5jb20vcGVraW5nLmNybDAeBgNVHREEFzAVgRNw0aWEuc2hhb0BzdW
4uY29A0GCxLm78UfreCxS3Pp078jyTaDv2ci1AudBL8+RrRUQvxsMJfZD+Uuf10Ilt6kwhm
Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw==次のように ldapmodify コマンドを使用して、公開キーおよび証明書を LDAP ディレクトリに追加します。
# ldapmodify -a -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd -v
-f add-public-cert.ldifsmime.conf の certurl パラメータの値は、LDAP ディレクトリ内の公開キーおよび証明書の位置を指定します。例 2 では、certurl は次のように設定されます。
certurl==ldap://demo.siroe.com:389/ou=people, o=demo.siroe.com, o=demo?userCertificate;binary?sub?
キーおよび証明書が LDAP ディレクトリに存在することを確認する
次の例では、LDAP ディレクトリで CA 証明書、また公開キーとその証明書を検索する方法を示しています。
1 つの CA 証明書の検索
次の例では、-b オプション、cn=SMIME admin, ou=people,o=demo.siroe.com,o=demo objectclass=* で定義されたベース DN は LDAP ディレクトリに存在する 1 つの CA 証明書を示します。ディレクトリに見つかると、ldapsearch は証明書についての情報を ca-cert.lidf ファイルに返します。
# ldapsearch -L -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd
-b "cn=SMIME admin, ou=people,o=demo.siroe.com,o=demo"
"objectclass=*" > ca-cert.ldif次の例は、ca-cert.ldif ファイルに出力された検索結果を示しています。ファイルの内容の形式は、ldapsearch の -L オプションを使用した結果です。
# more ca-cert.ldif
dn: cn=SMIME admin,ou=people,o=demo.siroe.com,o=demo
objectClass:top
objectClass:person
objectClass:organizationalPerson
objectClass:inetOrgPerson
objectClass: certificationAuthority
cn: RootCACerts
cn: SMIME admin
sn: CA
authorityRevocationList: novalue
certificateRevocationList: novalue
cacertificate;binary:: MFU01JTUUxEjAQBgNVBAsTCU1zZNlcnZlcjcMBoGA1UEAxMTydG
QGEwJVEOMAwGA1UEChMFU0UUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEcMBoGA1UEAxMTQ2VydG
aFw0jAxMTIwODAwMDBaM267X9FExCzAJBgwyrjgNVBAk9STklBMQwwCgYDVQQVHR8EgaQwg
YlVzMRMwEQYDVQQIEwpDQUx9STklBMQwwCgYDVQQKEwww3ltgoOYz11lzAdBgNVBpYSE9Vc
5yQuaddiiWlm899XBsYW5ljb20wgZ8wDQYJoGBAK1mUTy8vvO2nOFg4mlHjkghytQUR1k8l
5mcWRfL77ntm5mGXRD3XMciUq6zUfIg3ngvxlLKLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE
+FNAJmqtOV2A3wMyghqkDP3Aqq2BYfkcn4va3C5nRNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn
1NABAAGjggEXMIIBEzglghkgBhvhCAQEEBApqlSai4mfuvjh02SQkoPMNDAgTwMB8GA1UdI
QYMAFEd38IK05AHreOYc6v+ENMOwZMIGsBgNVHR8EgaQwgaEwb6BtoGuGaWxkYXA6Lyht74
tpbucmVkLmlwbGFuZY29tL1VJRD1DZXJ0aWZpY2F0ZSBNYW5hZ2VyLE9VPVBlb3BsZSxPPW
1haWYT9jZXJ0aWZpdu2medXRllHjkghytQURYFNrkuoCygKoYoaHR0cDovL3Bla2kghytQU
luZyZWQuaXBsYW5ldb20vcGVraW5nLmNybDAeBgNVHREEFzAVgRNwb3J0aWEuc2hhb0BzdW
4uYtMA0GCxLm78Ufre3Pp078jyTaDv2ci1AudBL8+RrRUQvxsMJfZeFED+Uuf10Ilt6kwhm Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw==複数の公開キーの検索
次の例では、-b オプション、o=demo.siroe.com,o=demo objectclass=* で定義されたベース DN は、LDAP ディレクトリ内でそのベース DN 以下にあるすべての公開キーおよび証明書を usergroup.ldif ファイルに返します。
# ldapsearch -L -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd
-b "o=demo.siroe.com,o=demo" "objectclass=*" > usergroup.ldif1 つの公開キーの検索
次の例では、-b オプション、uid=JohnDoe, ou=people,o=demo.siroe.com,o=demo objectclass=* で定義されたベース DN は LDAP ディレクトリに存在する 1 つの公開キーとその証明書を示します。
# ldapsearch -L -h demo.siroe.com -D "cn=Directory Manager" -w mypasswd
-b "uid=JohnDoe, ou=people,o=demo.siroe.com,o=demo" "objectclass=*" > public-key.ldif次の例は、public-key.ldif ファイルに出力された検索結果を示しています。ファイルの内容の形式は、ldapsearch の -L オプションを使用した結果です。
# more public-key.ldif
dn: uid=sdemo1, ou=people, o=demo.siroe.com, o=demo
objectClass:top
objectClass:person
objectClass:organizationalPerson
objectClass: siroe-am-managed-person
objectClass:inetOrgPerson
objectClass:inetUser
objectClass:ipUser
objectClass:userPresenceProfile
objectClass:inetMailUser
objectClass:inetLocalMailRecipient
objectClass: icsCalendarUser
objectClass: sunUCPreferences
mail: JohnDoe@demo.siroe.com
mailHost: demo.siroe.com
..
uid: JohnDoe
..
mailUserStatus:active
inetUserStatus:active
..
usercertificate;binary:: MFU01JTUUxEjAQBgNBAsTCU1zZ1NlcnZjcMBoGA1UEAxMTydG
QGEwJEOwGA1UEChMFU01JTUUxEjAQBgNVBAsTCU1zZ1NlcnZlcjEcMBoGA1UEAxMTQ2VydG
aFw0MTIwODAwMDBaM267hgbX9FExCzAJBgwyrjgNVBAk9STklBMQwwCgYDVQQVHR8EgaQwg
YTAlVEQYDVQQIEwpDQUxJRk9STklBMQwwCgYDVQQKEwww3ltgoOYz11lzAdBgNVBpYSE9Vc
5yZWQdWlm899XBsYW5ldC5jb20wgZ8wDQYJoGBAK1mUTy8vvO2nOFg4mlHjkghytQUR1k8l
5mvgc7ntm5mGXRD3XMU4OciUq6zUfIg3ngvxlLKLyERTIqjUS8HQU4R5pvj+rrVgsAGjggE
+FG9NmV2A3wMyghqkVPNDP3Aqq2BYfkcn4va3C5nRNAYxNNVE84JJ0H3jyPDXhMBlQU6vQn
1NAgMAgEXMIIBEzARBglghkgBhvhCAQEEBApqlSai4mfuvjh02SQkoPMNDAgTwMB8GA1UdI
QYMBaEdK05AHreiU9OYc6v+ENMOwZMIGsBgNVHR8EgaQwgaEwb6BtoGuGaWxkYXA6Lyht74
tpbucmVkwbGFuZXQuY29tL1VJRD1DZXJ0aWZpY2F0ZSBNYW5hZ2VyLE9VPVBlb3BsZSxPPW
1haxYT9jZaWZpY2jdu2medXRllHjkghytQURYFNrkuoCygKoYoaHR0cDovL3Bla2kghytQU
luZyZWQuaYW5ldC5jb20vcGVraW5nLmNybDAeBgNVHREEFzAVgRNwb3J0aWEuc2hhb0BzdW
4u9tMA0GC78UfreCxS3Pp078jyTaDv2ci1AudBL8+RrRUQvxsMJfZeFED+Uuf10Ilt6kwhm
Tc6W5UekbirfEZGAVQIzlt6DQJfgpifGLvtQ60Kw==.
.
ネットワークセキュリティサービスの証明書
ネットワークセキュリティサービス (NSS) に使用される各種証明書は、LDAP データベースではない、それぞれのデータベースに保存されます。Messaging Server には、証明書および関連する CRL をデータベースに格納するための 2 つのユーティリティ certutil および crlutil があります。これらのユーティリティを使用して、データベースを検索することもできます。
certutil の詳細については、『Sun Java System Directory Server 管理ガイド』(http://docs.sun.com/doc/819-2011?l=ja) を参照してください。crlutil ユーティリティの詳細は、このユーティリティに付属するヘルプテキストを参照してください。どちらのユーティリティのオンラインヘルプも、それらのユーティリティを引数なしで実行することによって表示できます。
Communications Express S/MIME エンドユーザー情報この節には、エンドユーザー用の情報が含まれています。この節には、以下の項があります。
初めてのログイン
メールユーザーが Communications Express メールに初めてログインする場合、S/MIME アプレットに関連する特別なプロンプトが表示されます。
Microsoft Windows の場合のプロンプト
Microsoft Windows 98、2000、または XP で初めて Communications Express メールにログインするときには、次のプロンプトが表示されます。
- 使用しているコンピュータ (クライアントマシン) に Java 2 Runtime Environment (JRE) がインストールされていない場合は、次のようなプロンプトが表示されます。
Do you want to install and run "Java Plug-in 1.4.2_03 signed on 11/20/03 and distributed by Sun Microsystems, Inc."?
Publisher authenticity verified by: VeriSign Class 3 Code Signing 2001 CA「はい」をクリックして、続くプロンプトに従って JRE をインストールします。
注
英語のサポートを希望し、かつ中国語などの Latin 以外の文字が含まれる着信 S/MIME メッセージを読む必要がある場合は、使用しているコンピュータの /lib ディレクトリに charsets.jar ファイルが存在する必要があります。
charsets.jar ファイルが /lib ディレクトリにインストールされるようにするには、カスタムインストールを使用して JRE の英語版をインストールするようにします。インストールプロセス時に、「その他の言語のサポート」オプションを選択します。
詳細については、「複数言語のサポート」を参照してください。
最後のインストールプロンプトに対して、「完了」をクリックします。コンピュータを再起動して、再度 Communications Express メールにログインします。
- 次のプロンプトが表示されます。
Do you want to trust the signed applet distributed by "Sun Microsystems, Inc."?
Publisher authenticity verified by: Thawte Consulting cc次のいずれかの応答をクリックします。
- 次のプロンプトが表示されます。
Do you want to trust the signed applet distributed by "sun microsystems, inc."?
Publisher authenticity verified by: VeriSign, Inc.次のいずれかの応答をクリックします。
署名と暗号化の設定
これらの設定は、すべてのユーザーの送信メッセージを次のいずれの方法で処理するかを制御する、初期の署名および暗号化の設定です。
また、初期の設定は、Communications Express の「メール」ウィンドウおよび「オプション」-「設定」ウィンドウの下部にある署名および暗号化のチェックボックスにチェックマークを付ける (機能がオン)、または付けない (機能がオフ) のいずれかで表示するかも制御します。smime.conf ファイルで alwaysencrypt および alwayssign パラメータを使用して、初期設定を指定します。
メールメッセージの初期の設定を変更できることをメールユーザーに知らせます。Communications Express メールにログインしたあと、ユーザーは、一時的に 1 つのメッセージの設定を無効にしたり、途中ですべてのメッセージの設定を無効にしたりできます。
表 20-6 には、チェックボックスの使用が要約されています。
Java コンソールを有効にする
Communications Express メールユーザーが署名および暗号化されたメッセージを処理するときに、S/MIME アプレットが Java コンソールにさまざまなオペレーティングメッセージを出力できます。メールユーザーが報告する問題のトラブルシューティングに、Java コンソールのメッセージが役立ちます。ただし、オペレーティングメッセージは、LDAP エントリの inetMailUser オブジェクトクラスに nswmExtendedUserPrefs 属性を追加することによって、Java コンソールをユーザーが使用できるようにした場合にだけ生成されます。次に例を示します。
nswmExtendedUserPrefs: meSMIMEDebug=on
すべてのメールユーザーが Java コンソールを常に使用できるようにしてはなりません。そのようにすると、Communications Express メールのパフォーマンスが著しく低下します。