![]() |
Version 5.1 |
||||||||||||||||||||||||||||||||
|
|
CommuniGate Pro サーバーでは、次のコンポーネントについてクリアテキスト認証とセキュアSASL 認証の両方をサポートしています。
SASL セキュア認証方式とは、メールクライアントから非暗号化・非セキュアリンクを介して暗号化 パスワードを送信する方式をいいます。SASL セキュア認証では、暗号化パスワードが使われるため、 クライアントとサーバー間のネットワークトラフィック上で実際のパスワードが第三者によって不法 に捕捉されることはありません。
CommuniGate Pro サーバーでは、SASL セキュア認証方式のほか、クライアントメーラーとサーバーの 間のセキュアリンク(SSL/TLS) もサポートしています。SSL リンクが確立すると、サーバーとクラ イアントとの間のネットワークトラフィックはすべて暗号化され、そのため、パスワードをクリアテ キストで送信しても安全です。
[Account Settings] セクションの[Secure Method Required] オプションを有効に設定した場合、 SASL セキュア認証またはSSL/TLS リンクのどちらを使用するか選択しなければなりません。このオ プションが有効のときには、パスワードをクリアテキスト形式で、しかも非セキュアリンク経由で送 信することを求める認証要求はすべて拒否されます。
CommuniGate Pro サーバーでは、次の非セキュア( クリアテキスト) SASL 認証方式もサポートしてい ます。
次のセキュアSASL 認証方式もサポートしています。
The CommuniGate Pro Server supports the following GSSAPI authentication methods:
The CommuniGate Pro Server supports the following SASL-EXTERNAL authentication methods:
また、Microsoft の製品で使われている非標準SASL 認証方式(NTLM、MSN) もサポートしています。
セキュアAPOP 認証方式(通常、POP プロトコル用) もサポートしています。また、非セキュア「通 常ログイン」認証方式( クリアテキストログインがサポートされているプロトコル用) もサポートし ています。
そのほか、特殊WebUser 認証方式もサポートされています。
ログインの認証方法の設定を行いたい場合、WebAdmin インターフェイスで[Domain Settings] ペー ジを開きます。その後、[Login Methods] パネルに移動します。
上記のオプションはいずれも「アドバイズ」系オプションで、セッションタイプのサービス(SMTP、
POP、IMAP、ACAP、PWD、FTP) に対してのみ機能し、トランザクションタイプのサービス
(HTTP、SIP) には影響はありません。
また、上記の「アドバイズ」系オプションでは、認証方式がサーバーによってアドバイズされるかど
うかを指定するオプションです。したがって、クライアントアプリケーションでは、上記のオプショ
ンがオフになっていても、すべての認証方式を使用できます。
1 つはCommuniGate Pro 「専用」のパスワード(CommuniGate Pro パスワード) です。このパスワー ドは、CommuniGate Pro サーバーのアカウント設定(Account Settings) の要素として保存され、 CommuniGate Pro サーバーでのみ使用されます。
もう1 つは、「OS パスワード」です。ユーザーがサーバーOS に登録されている場合、ユーザーがパ スワードを入力すると、CommuniGate Pro サーバーによって、そのユーザーの登録情報の中のOS パ スワードがチェックされます。
また、アカウントには外部パスワードを設定することもできます。この場合、外部カスタム認証プロ グラムによってユーザー認証が実行されます。外部認証プログラムは、別個のプロセスとして動作し ます(下記を参照)。
システム管理者は、任意のアカウントについて、上記の3 種類のパスワードのいずれか、または複数 を選択し、必要に応じて組み合わせて使用できます。大規模なサイトでは、通常、サーバーワイドの デフォルトアカウント設定(Default Account Settings) またはドメインワイドのデフォルトアカウント 設定を使って、必要なパスワードを設定するのが効率的です。
単一のアカウントについて複数種類のパスワードを有効にした場合、まず、CommuniGate Pro パス ワードがチェックされます。続いて、OS パスワードがチェックされ、その後、外部認証プログラム が動作し外部パスワードがチェックされます。また、ユーザーがクライアントアプリケーション上で 入力したパスワードが、保存されているパスワードのいずれか1 つと一致した場合、そのアプリケー ションからユーザーのアカウントへのアクセスが認められます。
CommuniGate Pro パスワードは文字列で、アカウント設定に保存されます。この文字列は、クリアテ キスト形式またはエンコード(暗号化) 形式で保存できます。形式は、パスワードを更新する際に指 定できます(アカウント設定のパスワード暗号化のページ)。
パスワード暗号化形式として[U-crpt] オプションを選択すると、CommuniGate Pro パスワードが標
準Unix 暗号化ルーチンを使って保存されます。また、[UB-crpt] オプションを選択しておくと、拡張
Blowfish ベースの暗号化方式が使われます。
[U-crpt] と[UB-crpt] はどちらも一方向暗号化方式です。そのため、サーバーではオリジナル( ク
リアテキスト) の形式に復号化はできず、また、セキュア (SASL) 証方式で使用することもできま
せん。したがって、この暗号化方式はどちらも、従来のシステムのパスワード文字列を使用したいが
OS パスワードを入手できない場合などに限って使用するようにします。
また、一般に「オンザディスクセキュリティ」(一方向暗号化方式を使用) より「オンラインセキュリ ティ」(SASL 方式を使用) が強固であり、この点からも、上記の2 種類の暗号化方式の使用は控える のが賢明です。 [U-crpt] パスワードには、MD5 ダイジェストやSHA1 ダイジェストなど、システ ムによっては特殊な形式のものもあり、その場合、UNIX 暗号化パスワードとして認識されないこと もあります。MD5 ダイジェストなどについては、詳しくは、「移行」のセクションを参照してくださ い。
注意: please remember that the plain Unix crypt routine uses only the first 8 symbols of the password string.
CommuniGate Pro パスワードが存在しなかったり、存在しても内容が空だったときには、CommuniGate Pro パスワードのオプションを有効にしているときでも、アカウントへのログインはできません。た だし、そのユーザーにOS パスワードまたは外部認証パスワードがある場合、いずれかのパスワード を使ってログインし、その後、CommuniGate Pro パスワードを指定(更新) できます。この機能を使 うことで、既存のメールシステムのユーザーをCommuniGate Pro サーバーに移行する場合、非暗号化( クリアテキスト) パスワードが入手できない( クリアテキストパスワード付きのアカウントリストを 作成できない) ときでも、OS パスワードを使うことでユーザーの移行が可能です。
ユーザーがOS パスワードを入力すると、そのOS パスワードがCommuniGate Pro サーバーでチェッ クされますが、その際、そのアカウント(CommuniGate Pro のユーザーアカウント) のOS ユーザー 名を使ってOS ユーザー名が作成されます。OS ユーザー名設定はデフォルトでは[*] に設定されて おり、この場合、作成されるOS ユーザー名はCommuniGate Pro のアカウント名と同じです。OS ユーザー名設定はCommuniGate Pro ドメインごとに指定でき、したがって、OS ユーザー名設定をデ フォルト以外に変更することで、CommuniGate Pro ドメインごとに異なるOS ユーザー名を作成でき ます。
サーバーOS システム | OS パスワードに関する注意 |
---|---|
Microsoft Windows 95/98/ME | このOS ではOS パスワードはサポートされていません。そのため、[Use OS Password] オプションは使用できません。. |
Microsoft Windows 200x/XP/NT/Vista | OS パスワードの認証にはWindows NT ドメイン認証システムが使われます。
そのため、CommuniGate Pro サーバーを動作させる場合、CommuniGate Pro に
[オペレーティングシステムの一部として機能する] 権限が付与されていなけ
ればなりません
コマンドラインオプション--BatchLogon を使って、LOGON_BATCH 認証が使 用されるように設定できます( このオプションを指定していない場合、 LOGON_NETWORK 認証が使われます)。 OS ユーザー名の作成後、文字列の中にパーセント(%) 記号があるかどうかが
チェックされます。見つかった場合、パーセント記号の前の部分がWindows ア
カウント名として使われ、パーセント記号の後の部分がWindows ドメイン名と
して使われます。
|
Unix ベースシステム | passwd やshadow、その他のOS 認証メカニズムを使って認証が実行されます。 |
OS/400 システム | user profile 認証メカニズムを使って認証が実行されます。 |
OpenVMS システム | ユーザーがユーザー名とパスワードを入力すると、文字列がすべて大文字に 変換され、その後、OpenVMS 認証メカニズムにより認証が行われます。 |
BeOS | BeOS ではパスワードをサポートしていないため、[Use OS Password] オプ ションは使用できません。 |
OS パスワードは一方向暗号化パスワードです。そのため、OS パスワードはセキュア認証方式では 使用できません。
CommuniGate Pro サーバーでは、Kerberos 認証方式をサポートしています。Kerberos 認証は、基本的 にはクライアントアプリケーションから「チケット(切符)」がサーバーに渡される認証方式です。チ ケットは、Kerberos 認証機関(KDC、キー配布センター) で発行され、このチケットを介してクライ アントアプリケーションとサーバーの間で同じ「キー(鍵) 」が共有されます。Kerberos 認証につい ては、詳しくはKerberos のマニュアルを参照してください。
CommuniGate Pro サーバーでKerberos 認証を使用する場合、CommuniGate Pro サーバーにKerberos サーバーキーを追加しなければなりません。Kerberos サーバーキーは、CommuniGate Pro の各ドメイ ンにそれぞれ別個に追加できます。また、KDC のデータベースにサーバーの「プリンシパル」を登録 しなければなりません。プリンシパルの名前は、CommuniGate ドメインまたはCommuniGate Pro ドメ インのエイリアスの名前と同じでなければなりません。キーが作成されれば、keytab ファイルにエク スポートします。
Kerberos 認証を使用する場合、WebAdmin インターフェイスの[Domain Settings] セクションを開き、 その後、[Security] リンク、さらに[Kerberos] リンクをクリックします。これで、ドメイン Kerberos キーのリストが表示されます。
単一のドメインにはKerberos キーを複数指定することができます。キーを追加する場合、[Browse] ボ タンを使って、keytab ファイル(KDC からエクスポートしたキーが格納されているファイル) を選 択します。その後、[Import Keys] ボタンをクリックすると、選択したkeytab ファイルからドメイン Kerberos キーが追加されます。
Kerberos キーを削除したい場合、チェックボックスを使ってキーを選択した後、[Delete Marked] ボ タンをクリックします。
ドメイン管理者は、[KerberosKeys Access Right] (Kerberos キーアクセス権) が付与されているときに 限ってKerberos キーの追加や削除が可能です。
サーバーでKerberos チケットが受信されると、そのチケットからサーバー名(sname) が抽出されま す。サーバー名が単一のコンポーネント(domain.dom) で構成されている場合、そのコンポーネント がターゲットのドメイン名( ticket-domain-name) として使われます。サーバー名が複数のコンポーネ ント(サービス/domain.dom) で構成されているときには、2 番目のコンポーネント(domain.dom) が 使われます。その後、サーバーによって仮想電子メールアドレス(LoginPage@ ticket-domain-name) が 作成され、このアドレスがルートされます。このルーティングメカニズムは、HTTP要求でターゲッ トドメインが検索されるときのメカニズムと同じです。
検索されたドメインが存在したときには、そのドメインのKerberos キーのリストに所定のキーがあ るかどうかがチェックされます。キーが見つかり、また、そのキーを使ってチケット/ 認証情報が復 号化できた場合、ユーザーが認証されます。その後、チケットに指定されているクライアント名から アカウント(ユーザー) の名前が取り出されます。なお、このアカウント名は「単純な名前」、つま り、@ または% が使われていない名前でなければなりません。
上の処理が完了すると、取り出されたアカウント名にドメイン名(そのアカウントのドメイン名) が 追加されます。最後に、アカウント名とドメイン名を組み合わせて電子メールアドレスが作成され、 その電子メールアドレスをアカウント名として使って接続がオープンされます。
注意: Kerberos 認証を使用している場合、取り出されたユーザー名がルータで使用されることはあ りません。というより、Kerberos 認証の場合、ルータは使用できません。ルータを使用した場合、 いずれかのドメインの名前が別のドメインの名前にルートされることがあり、そのため、いずれかの ドメインで有効なKerberos キーが別のドメインでも有効になってしまい、そのドメインのアカウン トにアクセスが可能になることがあるためです。また、Kerberos チケットではアカウントのエイリ アスは使用できません。
Kerberos チケットを使ってアカウントにアクセスする場合、そのアカウントでKerberos 認証方式が サポートされている必要があります。
Microsoft アクティブディレクトリをKerberos キー配布センター(KDC) として使用することもでき ます。その場合の手順は、次のとおりです。
詳しくは、Microsoft Knowledge Base のアーティクルQ324144 を参照してください。
Microsoft 製ブラウザでKerberos 認証(シングルサインオン) を使用したい場合、"HTTP-Based Cross-Platform Authentication via the Negotiate Protocol" をお読みください。この記事は、Microsoft ド キュメンテーションセット(MSDN) にあります。
CommuniGate Pro サーバーはクライアント証明書認証方式をサポートしています。この方式は、クラ イアントからセキュアSSL/TLS接続を介してサーバーに接続が実行されるときに使用できます。こ の場合、サーバーからクライアントに対してクライアント証明書( クライアントコンピュータにイン ストール済み) の送信が要求されます。この証明書には、サーバー上で選択されている信頼証明書に よる署名がなければなりません。
クライアントから証明書がサーバーに送信されると、サーバー上では証明書の件名(Certificate Subject) のE-mail フィールドの内容がCommuniGate Pro アカウント( ログイン先のアカウント) の 名前と解釈されます。
注意: 証明書認証方式メカニズムでは、ルータ経由で提供された電子メールアドレスは使用されませ ん。ルータ経由の場合、いずれかのドメインの名前が別のドメインの名前にルートされることがあ り、そのため、いずれかのドメインで有効なKerberos キーが別のドメインでも有効になってしまい、 そのドメインのアカウントにアクセスが可能になることがあるためです。また、証明書認証方式では アカウントのエイリアスは使用できません。
クライアント証明書を使ってアカウントにアクセスする場合、そのアカウントで証明書認証方式がサ ポートされていることが必要です。
詳しくは、PKIのセクションを参照してください。
CommuniGate Pro サーバーでは、外部認証プログラムを使ってユーザーを認証することもできます。 外部認証プログラムは、通常、CommuniGate Pro サーバーの技術スタッフが作成します。その場合、 プログラムには、CommuniGate Pro サーバーで直接サポートされていないものの、CommuniGate Pro サーバーのサイトで必要となる認証メカニズムを定義します。
また、認証に限らず、外部データソースを使ってアカウントを自動的にプロビジョニングする外部認 証プログラムや、ルータ処理を補助する外部プログラムを作成しても結構です。
外部プログラムが作成できれば(または、その名前が決まれば)、プログラムの名前とパラメータを [WebAdmin Helpers] ページで設定します。このページは、[Settings] セクションの[General] ペー ジを開き、[Helpers] リンクをクリックすると開きます。
外部認証プログラムのオプションについては、詳しくは、ヘルパープログラムの説明を参照してください。
外部認証プログラムに関連するログレコードには、[EXTAUTH] タグが付けられます。
外部認証プログラムが動作していない場合、外部認証要求はすべて拒否されます。
外部認証プログラムの作成方法、また外部認証インターフェイスプロトコルについては、ヘルパーの セクションを参照してください。
Authentication Helpersサイトに外部認証プログラムのプログラム例とスクリプト例がありますので参照してください。
場合によっては、「ブルートフォース」アタックを使ってメールシステムが攻撃されることもありま す。ブルートフォースとは、システムのPOP やIMAP などのアクセスポートに対してランダムのユー ザー名やパスワードを送りつけてくるアタックをいいます。このアタックに対して、システムから「不 明なアカウント」や「無効なパスワード」などのエラーメッセージを出力すると、間接的にアカウン ト名の多くがアタッカーによって捕捉される危険があります。捕捉された場合、そのアカウント名を 使ってスパムメールを送信してくることもあります。
ブルートフォースアタックを回避したい場合、[Hide Unknown Account messages] オプションを有効 にします。このオプションは、WebAdmin の[Settings] セクションの[Obscure] ページにあります。
いずれかのアカウントからログインが実行され、ログインが一定回数、失敗に終わった場合、そのア カウントによるログインができなくなるように設定できます。設定は、[Login Security] パネル(上 記) で行います。[Suspend Account for] には失敗ログインの最大回数を指定します。また、[failed logins within] にはログインを試行できる最長時間(分) を指定します。これで、指定した時間の間 に指定した回数のログインを行い、すべて失敗に終わった場合、そのアカウントではログインできな くなります。なお、ログインできなくなった後、指定した最長時間が経過すると、そのアカウントで 再度ログインを実行できるようになります。
CommuniGate Pro の制御、監視、保守を行う場合、通常、1 つのポストマスターアカウントがあれば 十分です。ただし、作業によっては、ポストマスター以外のユーザーに依頼したいこともあります。 例えば、ログの監視にユーザーが一人必要だが、ただし、ログの監視以外の作業の権限は与えたくな い、といったケースもあります。
ユーザーにアクセス権を付与したい場合、ポストマスターとしてログインします。または、[Can Modify Access Rights] 権限を持ったユーザーとしてログインします。
ユーザーに対して権限を付与(または解除) する場合、そのユーザーのアカウント([Account Setting] ページ) を開き、[Access Rights] リンクをクリックします。クリック後、[Access Rights] ページが 開きます。
ページでは、すべてのアクセス権のリストが表示され、また、そのユーザーに付与されているアクセ ス権がマークされています。
ユーザーがメインドメインのユーザー(アカウント) の場合、次のアクセス権を付与できます。
一方、ユーザーがドメイン(セカンダリドメイン) のユーザーの場合、付与できるアクセス権は次の 権限に限られます。
デフォルトでは、メインドメインのポストマスターには無制限のアクセス権が付与されています。
アクセス権を選択し、[Update] ボタンをクリックすると、そのアクセス権が付与されます。
アクセス権に関する情報は、ドメインを単位として単一のファイル(Access.settings) に保存さ れます。Access.settings ファイルは、そのドメインのディレクトリのサブディレクトリに格納 されます。
モバイルユーザーをサポートしない場合、サーバーのアカウント(ユーザー) だけがサーバーにアク セスできるようにします。このように設定する場合、[Protection] ページの次のオプションを有効に します。
When an access module accepts a connection from an unlisted network address, and this option is selected, the module sends an error code to the client application, and the connection is closed immediately. Links with the rest of the Internet will be used only for mail Transfer, Real-Time シグナル exchange, and for HTTP access to Account ファイルストレ.
このオプションが有効のときには、接続が、[Client IP Addresses] リストに登録されている
(IP アドレスの) クライアントメーラーまたはサーバーからの接続だった場合に限って、
SMTP AUTH 処理が実行されます。
注意: このオプションを有効にする場合、あらかじめ、正規ユーザーやアクセスを許可する
サーバーなどのIP アドレスが[Client IP Addresses] リストに登録されているかどうか確認
してください。そうでない場合、CommuniGate Pro サーバーには一切アクセスできなくなり
ます。
アクセス制限はまた、下位の接続レベル(TCP) で設定することもできます。この方法を使う場合、 サービス(モジュール) の[リスナー] ページを開き、そのサービスで接続を受け付けるIP アドレス を[Grant] リストに、また、受け付けないIP アドレスを[Deny] リストに登録します。この作業を 各サービスについて行います。このように設定しておくと、サービスに対して接続が実行され、その IP アドレスが[Grant] リストに登録されていない場合、または、[Deny] リストに登録されている 場合、その接続はただちに閉じられ、したがってサービスレベルの処理は実行されません。
CommuniGate Pro サーバーはインパーソネート(カモフラージュまたは偽装) をサポートしていま
す。インパーソネートとは、いずれかのアカウント(認証アカウント) の認証情報を提供し、それと
は別のアカウントに対してアクセスする(別のアカウントがオープンされる) 処理をいいます。
インパーソネートは、PLAN とGSSAPI の各認証方式でサポートされています。また、リアルタイム
登録にも使用できます。
インパーソネートの実行時、サーバーにより認証アカウントの資格(認証情報) が有効であるかどう か、また要求されたサービスが、認証アカウントに許可されているかどうかがチェックされます。さ らに、認証アカウントに[CanImpersonate]ドメインアクセス権が付与されているかどうかのチェッ クも行われます。
The CommuniGate Pro Server supports the special WebUser authenticaton method.
This method uses the session ID of a WebUser or XIMSS session
instead of the Account password.
The method is useful for CGI programs and scripts.
This method is disabled by default (see above).
この認証方式はSASL 方式で、認証プロトコルコマンドに「即時」パラメータが必要です。第1 パラ
メータはアカウント名、第2 パラメータはWebUser セッションID です。
PWD モジュールの場合、WebUser 認証処理のコマンドは次の通りです。
例えば、ユーザーjohn@doe.dom がWebUser セッションを開いており、そのセッションID が114-
bXaKw92JK1pZVB5taj1r ID の場合、PWD コマンドは次のようになります。
AUTH WEBUSER john@doe.dom 114-bXaKw92JK1pZVB5taj1r
このコマンドにより、PWD セッションでjohn@doe.dom アカウントが開かれます。