TLS (SSL) - クライアント証明書 - IIS 設定
- Last Updated: October 19, 2022
- 13 minute read
- MOVEit Transfer
- Version 2022
- Documentation
MOVEit Transfer は Microsoft の IIS サーバーを使用して HTTPS 接続サービスを提供します。したがって、MOVEit Transfer は IIS を使用してクライアント証明書機能も提供する必要があります。
MOVEit Transfer ユーザーは信頼されたクライアント証明書または Microsoft の信頼されたルート証明書ストアに保存されているクライアント証明書を使用する必要がありますが、MOVEit Transfer の証明書管理インターフェイスは通常、この要件に自動的に対応します。このセクションでは、MOVEit Transfer のインストール/アップグレードによって、クライアント証明書サポート (デフォルト) ともう一つのサポートされているオプションのオン/オフを切り替える IIS 設定について重点的に取り上げます。
一部のファイルでクライアント証明書を承認するよう設定された IIS
MOVEit Transfer をインストールするか、またはバージョン 4.0 以降にアップグレードするとすぐに、その Web インターフェイスでクライアント証明書認証がサポートされます。IIS を手動で変更する必要はありません。インストール/アップグレードプログラムにより、必要な IIS 設定が水面下で行われます。
個々のユーザーアカウントに対する認証要件フラグによって、クライアント証明書が必要かどうかと、どのクライアント証明書を認証に使用できるかが制御されます (詳細については、「Web インターフェイス - ユーザー - プロファイル」を参照してください)。
メリット/デメリット
- メリット: 追加の設定や管理作業が不要。
- メリット: ユーザーをクライアント証明書環境に移行する際に使いやすい。
- メリット: 既存のクライアントやプロセスと後方互換性がある。
- デメリット: 監査担当者が IIS の [Require client certificates (クライアント証明書を要求)] ボックスをオンにすることを望む可能性がある。
humancc.aspx と machinecc.aspx
MOVEit Transfer のデフォルトでは、[Accept client certificates (クライアント証明書の承認)] フラグは humancc.aspx と machinecc.aspx という 2 つのファイルで設定されます。これらのファイルの「cc」は、「クライアント証明書」を表します。
すべての Web ブラウザセッションは human.aspx を使用して認証する必要があり、その他のすべてのクライアントは machine.aspx を使用して認証する必要があります。ユーザーが human.aspx または machine.aspx を使用して認証しようとし、ユーザーのアカウントにクライアント証明書認証が必要であることが MOVEit Transfer で検出されると、MOVEit Transfer によってユーザーのセッションが humancc.aspx または machinecc.aspx に自動的にリダイレクトされます。この時点で、クライアント証明書の認証情報がユーザーに要求されるか (Web ブラウザを使用している場合)、またはクライアント証明書の認証情報が使用されます (別のクライアントを使用している場合)。「2 番目のサインオンページ」は表示されません。つまり、ユーザーから見ると、サインオン操作全体が 1 回の送信だけで済みます。
その他のファイルやフォルダーは [Accept client certificates (クライアント証明書の承認)] に設定されません。MOVEit Transfer のリソースへのアクセスは、必要なクライアント証明書を使用してユーザーが認証を行った後にのみ可能になります。そのため、認証ゲートウェイのみを [Accept client certificates (クライアント証明書の承認)] に設定する必要があります。
サイト全体の [Accept client certificates (クライアント証明書の承認)] フラグ (設定しないでください!)
MOVEit Transfer IIS Web サイトでは、サイト全体の [Accept client certificates (クライアント証明書の承認)] フラグを設定しないでください。この設定はサポートされておらず、個々の MOVEit Transfer ユーザーが認証時にクライアント証明書を使用するよう要求するために必要ではありません。
moveitdmz IIS サイトでサイト全体の [Accept client certificates (クライアント証明書の承認)] がオンにされた可能性がある場合、次のような 2 つの兆候が現れます。
- IE ユーザーが MOVEit Transfer に接続すると、不明な空のダイアログボックスが表示されます。空のボックスは、ユーザーが接続したサイトでクライアント証明書が要求されている (それが IIS の [Accept (承認)] フラグの動作であるため) が、そのユーザーはサイトで使用できるクライアント証明書を持っていないことをユーザーに通知するものです。
- すべてのファイル送信動作が停止し、すべての FTP および SSH サインオンが拒否されます。
ほとんどのコンテンツでクライアント証明書を要求するよう設定された IIS
通常、IIS サイトのフラグを [Require client certificates (クライアント証明書を要求)] に設定する必要はありません。また、絶対に必要な場合を除き、通常は推奨されません。リモートシステムの管理者、エンドユーザー、およびオペレータが大量の作業を行う必要がある場合は、MOVEit Transfer のアプリケーションレベルのクライアント証明書を使用することをお勧めします。
さらに、[Require client certificates (クライアント証明書を要求)] フラグは、Windows Server 2003 で実行されている MOVEit Transfer ソフトウェアでのみサポートされています。
メリット/デメリット
- メリット: 監査担当者が IIS の [Require client certificates (クライアント証明書を要求)] ボックスをオンにすることを望む可能性がある。
- メリット: クライアント証明書を使用しないと、誰もリモートの場所からサインオンできない (例外なし)。
- デメリット: 有効なクライアント証明書がない場合、管理ユーザーはリモートアクセスができない。
- デメリット: 追加の設定や管理作業が必要。
- デメリット: クライアント証明書環境へのユーザーの移行が困難になる。
- デメリット: 既存のクライアントやプロセスとの後方互換性がない。
追加の localhost のみの IIS サイト
MOVEit Transfer の FTP、SSH、ISAPI、および関連サービスは多くの場合、HTTP/S ベースの XML トランザクションを通じて MOVEit Transfer のコアアプリケーションと通信します。この通信を [Require client certificates (クライアント証明書を要求)] 環境で続行できるようにするには、元の moveitdmz IIS のコピーを作成し、localhost 接続のみをリッスンするように設定する必要があります。
この追加のサイトを設定し、IIS サイト全体の [Require client certificates (クライアント証明書を要求)] フラグを設定する際に MOVEit Transfer がそのサイトを使用するように設定するには、次の手順に従います。
- IIS マネージャを開き、moveitdmz IIS サイトをエクスポートします。
- 既存の MOVEit Transfer サイトを右クリックします。
- [All tasks (すべてのタスク)] を選択し、[Save configuration to file (設定をファイルに保存)] を選択します。
- エクスポートしたサイトをインポートし、[duplicate name (名前の重複)] という警告をクリックスルーします (この警告が出ても、問題なくサイトをインポートできます)。
- [Web Sites (Web サイト)] 見出しを右クリックします。
- [New (新規)] を選択し、[Web site from file (ファイルからの Web サイト)] を選択します。
- ステップ 1 で作成したファイルを参照します。
- [Read file (ファイルの読み込み)] ボタンをクリックし、サイト名を選択して、[OK] をクリックします。
- 新しいサイトの名前を変更します (名前が重複している場合は、そのままにしておくと支障が出ます)。
- 新しいサイトを開き、以下のステップをこの順序で実行します。
- クライアント証明書要件を [Ignore (無視)] に設定します。
- SSL 要件の [128-bit (128 ビット)] ボックスがオンになっている場合は、オフにします。
- [Require SSL (SSL を要求)] がオンになっている場合は、オフにします。
- サイトに関連付けられているサーバー証明書を削除します。
- サイトを 127.0.0.1 にのみバインドし (ホストヘッダーなし)、TLS (SSL) ポートを解除します。ポート (TLS 以外) が入力されていない場合は、値 80 を入力します。
- 元の moveitdmz サイトを開き、明示的に 127.0.0.1 にバインドされていないことを確認します。
- MOVEit Transfer Configuration ユーティリティを開き、[Paths (パス)] タブに移動して、マシンの URL を http://localhost/machine.aspx に設定します。
- この時点で、moveitdmz サイトで [Require client certificates (クライアント証明書を要求)] オプションをオンにすることができます。プロンプトが表示されたら、下の [Exceptions (例外)] セクションに表示されているものを除き、すべてのフォルダーとファイルの設定をオーバーライドする必要があります。humancc.aspx および machinecc.aspx のファイルセキュリティが、SSL およびクライアント証明書を要求するように設定されていることを確認します。
- 両方のサイトが起動されていることを確認します。
- MOVEit Transfer Check ユーティリティでテストし (一部のテストをスキップ可能)、後でライブクライアントセッションでテストして、すべてがまだ機能することを確認します。
例外
moveitdmz IIS サイトのデフォルトのクライアント証明書プロパティは [Require... (要求)] に設定されますが、Java アップロード/ダウンロードウィザードの使用をサポートするために、以下のフォルダーは必ず [Ignore client certificates (クライアント証明書を無視)] に設定する必要があります。
- MOVEitISAPI: Java アップロード/ダウンロードウィザードを使用する際に、クライアント証明書が複雑にならないように、[Ignore client certificates (クライアント証明書を無視)] チェックボックスをオンにする必要があります。このファイル送信機能では、セッションが以前に認証されていない限りファイルにアクセスできないため、このようにすると安全です。
- Java: Java アップロード/ダウンロードウィザードを使用する際に、クライアント証明書が複雑にならないように、[Ignore client certificates (クライアント証明書を無視)] チェックボックスをオンにする必要があります。このフォルダーは、Web ブラウザによってダウンロードおよび実行される Java アップロード/ダウンロードウィザードアプレットのホームです。このフォルダーの内容は他のすべての MOVEit Transfer サーバーで公開されているため、このようにすると安全です。
- Images: Java アップロード/ダウンロードウィザードを使用する際に、クライアント証明書が複雑にならないように、[Ignore client certificates (クライアント証明書を無視)] チェックボックスをオンにする必要があります。このフォルダーは、Java アップロード/ダウンロードウィザードアプレットで使用される画像のホームです。このフォルダーの内容は他のすべての MOVEit Transfer サーバーで公開されているか、またはパブリック MOVEit Transfer サインオンページにアクセスできるすべてのユーザーに公開されているため、このようにすると安全です。
MOVEit Transfer のインストールプログラムおよびアップグレードプログラムを実行すると、これらのフォルダーに対して [Ignore client certificates (クライアント証明書を無視)] が自動的に再設定されます (ただし、修復インストール操作では、これらのパラメータは再設定されません)。
[Require... (要求)] から [Accept... (承認)] に戻す
[Require... (要求)] から [Accept... (承認)] に戻す最も簡単な方法は、IIS サイトレベルのクライアント証明書要件を [Require... (要求)] から [Ignore...(無視)] に変更し、MOVEit Transfer のアップグレード (単なる「修復」ではない) によって IIS Web サイト内の他の要素に対して適切なプロパティを強制的に再設定することです MOVEit Transfer のアップグレードの実行方法に関するヒントは、MOVEit カスタマーポータルをご覧ください。
それ以外の場合、IIS サイトレベルのクライアント証明書要件を [Require... (要求)] から [Ignore...(無視)] に変更し (すべてのサブフォルダーのオーバーライドを選択した場合)、humancc_aspx ファイルと machinecc_aspx ファイルで [Accept client certificates (クライアント証明書の承認)] フラグを以下のように設定します。


いずれかの手順を行った後、サイト全体の [Require... (要求)] フラグの設定に必要な追加の localhost IIS サイトを削除することが必要になる場合もあります。moveitdmz サイトが特定の IP アドレスにバインドされている場合、MOVEit Transfer Config ユーティリティの [Paths (パス)] タブにある [Machine URL (マシンの URL)] の変更が必要になる場合もあります。