この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章では、モジュールの CLI(コマンドライン インターフェイス)から WebVPN サービス モジュール を設定する方法について説明します。
固有の各 IP アドレスには、関連するホスト名があります。Cisco IOS ソフトウェアは、 connect 、 telnet 、および ping EXEC コマンドと、関連する Telnet サポート操作で使用するために、ホスト名とアドレスのマッピングのキャッシュを保持しています。このキャッシュにより、ホスト名を迅速にアドレスに変換できます。
IP には、IP 内の位置によって装置を識別するために、命名規則が定義されています。これは、 ドメイン を表す階層的な命名規則です。ドメイン名は、区切り文字のピリオド(.)により連結されます。たとえば、Cisco は、IP では com のドメイン名で識別される商業組織に属すので、ドメイン名は cisco.com になります。このドメイン内の特定の装置、たとえば File Transfer Protocol(FTP;ファイル転送プロトコル)システムは、 ftp.cisco.com として識別されます。
ドメイン名を追跡できるように、IP は、IP アドレスにマッピングされた名前のキャッシュ(またはデータベース)を保持する ネーム サーバ というコンセプトを定義しています。ドメイン名を IP アドレスにマッピングするには、最初にホスト名を指定し、次にネーム サーバを指定して、Domain Name System(DNS;ドメイン ネーム システム)をイネーブルにします。DNS は、ネットワーク装置を一意に識別するインターネットのグローバルな命名機構です。
VPN Routing and Forwarding(VRF)インスタンスは、IP ルーティング テーブル、派生したフォワーディング テーブル、フォワーディング テーブルを使用するインターフェイスのセット、およびフォワーディング テーブルへの入力情報を判断する一連のルールとルーティング プロトコルにより構成されます。通常、VRF には、Provider Edge(PE;プロバイダー エッジ)ルータに接続しているカスタマー VPN サイトを定義する、ルーティング情報が含まれています。
VRF 対応の DNS 機能をイネーブルにするには、グローバル コンフィギュレーション モードで、次の作業を行います。
• ip vrf name コマンドによる VRF ルーティング テーブルの設定
• ip name-server vrf name コマンドによる、VRF の最低 1 つのネーム サーバの設定
• ip domain lookup コマンドによる、ドメイン検索のイネーブル化
任意に、 ip domain name vrf name コマンドまたは ip domain list vrf name コマンドを使用して、VRF 固有のデフォルト ドメイン名またはドメイン リストを設定することもできます。
Cisco IOS ソフトウェアは、ホスト名と対応するアドレスのテーブル(ホスト名とアドレスのマッピング)を保持します。Telnet などの上位レイヤ プロトコルは、ホスト名を使用してネットワーク装置(ホスト)を識別します。ルータおよび他のネットワーク装置は、他の IP 装置と通信するために、ホスト名と IP アドレスを関連付ける必要があります。ホスト名と IP アドレスは、スタティックまたはダイナミックな方法で、相互に関連付けることができます。
ダイナミック マッピングを使用できない場合には、アドレスに手動でホスト名を割り当てる方法が便利です。
アドレスにホスト名を割り当てるには、グローバル コンフィギュレーション モードで、次の作業を行います。
Cisco IOS ソフトウェアがドメイン名リクエストを完了するために使用する、デフォルトのドメイン名を指定できます。単一のドメイン名またはドメイン名のリストを指定します。ドメイン名が含まれていない IP ホスト名はすべて、指定したドメイン名が付加されてから、ホスト テーブルに追加されます。
1 つまたは複数のドメイン名を指定するには、グローバル コンフィギュレーション モードで、次のいずれかの作業を行います。
次に、いくつかの代替ドメイン名を使用して、ドメイン名のリストを設定する例を示します。
ip domain list csi.com
ip domain list telecomprog.edu
DNS の名前情報を提供するネーム サーバとして動作する 1 つまたは複数のホスト(最大 6)を指定するには、グローバル コンフィギュレーション モードで、次の作業を行います。
|
|
---|---|
|
ネットワーク装置を、名前の割り当てを制御できないネットワーク上の装置に接続する必要がある場合には、内部ネットワーク全体で装置を一意に識別するデバイス名を指定できます。この作業を行うには、インターネットのグローバル ネーミング機構である DNS を使用します。このサービスは、デフォルトでイネーブルです。
ディセーブルにした DNS を再びイネーブルにするには、グローバル コンフィギュレーション モードで、次の作業を行います。
|
|
---|---|
|
ホスト名とアドレスのマッピングのキャッシュは、 connect 、 telnet 、 ping 、 trace 、 write net 、および configure net EXEC コマンドの実行時に、名前を迅速にアドレスに変換するために使用されます。このコマンド例では、ダイナミックな名前検索の使用を指定しています。スタティックな名前検索を設定することもできます。
次に、ホスト名からアドレスへのマッピングを設定する例を示します。IP DNS ベースの変換を指定し、ネーム サーバのアドレスを指定し、デフォルトのドメイン名を指定します。
仮想ゲートウェイは、 webvpn gateway gateway_name コマンドを使用して定義します。このゲートウェイは、WebVPN のコンテキスト内で参照されます。
仮想ゲートウェイ サービスを設定するには、次の作業を行います。
|
|
|
---|---|---|
|
(注) gateway_name の値は、大文字と小文字が区別されます。 |
|
|
WebVPN サービス モジュール がプロキシとなる仮想 IP アドレスおよびポート番号を定義します。デフォルトの port は、443 です。 (注) 仮想 IP アドレスが、直接接続しているネットワーク上に存在しない場合には、secondary キーワードが必要です。 |
|
|
HTTP ポート(デフォルトの port は 80)をオープンし、仮想ゲートウェイへのすべての HTTP 接続が Secure HTTP(HTTPS)を使用するように指定します。 |
|
|
(任意)TCP ポリシーを適用します。TCP ポリシーのパラメータは、「TCP ポリシーの設定(任意)」 を参照してください。TCP ポリシーは、クライアント側の接続だけに影響します。 |
|
|
(任意)SSL ポリシーを適用します。SSL ポリシーのパラメータは、「SSL ポリシーの設定(任意)」 を参照してください。SSL ポリシーは、クライアント側の接続だけに影響します。 |
|
|
WebVPN ゲートウェイにトラストポイント設定を適用します。モジュールに組み込まれたテスト証明書をインポートできます。 付録 B「組み込まれたテスト証明書のインポート」 を参照してください。 (注) トラストポイントは、認証局サーバ、鍵のパラメータと鍵生成方式、および WebVPN ゲートウェイの証明書登録方式を定義します。トラストポイントの設定の詳細は、「トラストポイントの宣言」 を参照してください。 |
|
|
(任意)URL およびクッキー マングリング プロセスに使用するホスト名を指定します。ロードバランシング設定の場合、指定したホスト名が、ロードバランシング装置に設定された仮想ゲートウェイの IP アドレスになります。 |
|
|
RADIUS 設定の詳細については、『 Cisco IOS Security Configuration Guide, Release 12.2 』の「Configuring RADIUS」の章を参照してください。URL は次のとおりです。
http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fsecur_c/fsecsp/scfrad.htm
表3-1 に、WebVPN RADIUS の AV のペアを示します。
(注) WebVPN アトリビュート(標準 IETF RADIUS アトリビュートを除く)はいずれも次のように、webvpn: で始まります。
webvpn:urllist-name=cisco
webvpn:nbnslist-name=cifs
webvpn:default-domain=cisco.com
|
|
|
|
---|---|---|---|
addr(Framed-IP-Address6) |
|||
0(ディセーブル) |
|||
0(ディセーブル) |
|||
0(ディセーブル) |
|||
0(ディセーブル) |
|||
0(ディセーブル) |
|||
idletime(Idle-Timeout1) |
|||
0(ディセーブル) |
|||
netmask(Framed-IP-Netmask1) |
|||
split-exclude8 |
|||
split-include3 |
|||
svc-enabled9 |
0(ディセーブル) |
||
svc-required4 |
0(ディセーブル) |
||
timeout(Session-Timeout1) |
|||
7.この機能をイネーブルにするには、0 以外の任意の整数を指定します。 |
仮想コンテキストは、 webvpn context コマンドを使用して定義します。仮想コンテキストは、設定済みのアドレス解決、ゲートウェイ、および認証設定をリンクします。
クライアントレス モードを設定するには、URL リストおよびグループ ポリシーを設定します。Outlook Web Access(OWA)を使用して E メールにアクセスするには、Microsoft Exchange サーバを宛先とする URL リストを設定します( http:// ipaddr /exchange など)。
シンクライアント モードを設定するには、転送するポートのリストおよびグループ ポリシーを設定します。
Common Internet File System(CIFS)を使用したファイル共有を設定するには、NetBIOS Name Service(NBNS)リスト、サーバのアドレス、およびグループ ポリシーを設定します。
|
|
|
---|---|---|
|
WebVPN コンテキスト サブコマンド モードを開始します。WebVPN インスタンスを指定するには、オプションの VPN サービス名 name を使用します。 |
|
|
セキュア ゲートウェイに設定した対応する仮想ゲートウェイ インスタンス、およびマッピング方式(IP アドレス、URL、ドメイン名など)を指定します。 gateway-name パラメータは、システムに設定されている仮想ゲートウェイの 1 つと一致している必要があります。 domain-name パラメータは、仮想 WebVPN インスタンスの企業用ドメイン名(cisco.com など)の指定に使用する ASCII 文字列です。 |
|
|
Cisco Secure Desktop(CSD)Manager を使用してセキュア デスクトップを設定するために、CSD をイネーブルにします。 (注) WebVPN モジュール用の CSD のインストールおよび設定の手順は、「CSD の設定」 を参照してください。 |
|
|
サーバ接続をオープンするときに使用する NAT アドレスを指定します。 nat-address コマンドで指定するアドレスは、WebVPN サブインターフェイス上に設定したサブネットの 1 つと一致している必要があります。 (注) このコマンドは、クライアントレス モードおよびシンクライアント モードで必要です。 |
|
|
ポータル Web ページに表示する URL リストを設定するために、url サブモードを開始します。URL エントリの設定の詳細は、「クライアントレス モードの設定」 を参照してください。 |
|
|
エンド ユーザがアクセスできるポートのリストを設定するために、port-fwd サブモードを開始します。ポート転送の設定の詳細は、「シンクライアント モードの設定」 を参照してください。 |
|
|
グループ ポリシーを設定するために、グループ サブモードを開始します。グループ ポリシーの設定の詳細は、「グループ ポリシーの設定」 を参照してください。グループ ポリシーを使用したトンネル モードの設定の詳細は、「トンネル モードの設定」 を参照してください。 |
|
|
(任意) SSL プロトコルが使用する SSL ポリシーを指定します。SSL ポリシーは、サーバ側の接続だけに影響します。 |
|
|
(任意) TCP プロトコルが使用する TCP ポリシーを指定します。TCP ポリシーは、サーバ側の接続だけに影響します。 |
|
|
ブラウザのタイトルおよびタイトル バーに表示する HTML タイトル文字列を指定します。 string の長さは、最大 255 文字です。デフォルトの string は、「WebVPN Service」です。 |
|
|
エンド ユーザにログインを要求するテキストを指定します。 string の長さは、最大 255 文字です。デフォルトの string は、「Please enter your username and password.」です。 |
|
|
エンド ユーザにログアウトを要求するテキストを指定します。 string の長さは、最大 255 文字です。デフォルトの string は、「Goodbye.」です。 |
|
|
ログインおよびポータル ページに表示するカスタム ロゴ イメージを指定します。 filename は、管理者がセキュリティ ゲートウェイにアップロードしたファイルです。 |
|
|
ログイン、ホーム、ファイル アクセスのポータル ページ上のタイトル バーのカラーを指定します。デフォルトのカラーは、パープルです。有効なカラー値については、 付録 D「カラー名および RGB カラー値」 を参照してください。 |
|
|
ログイン、ホーム、ファイル アクセスのポータル ページ上のセカンダリ タイトル バーのカラーを指定します。デフォルトのカラーは、パープルです。有効なカラー値については、 付録 D「カラー名および RGB カラー値」 を参照してください。 |
|
|
||
|
||
|
WebVPN ログイン ユーザ名プロンプトの初期値を設定します。 prompt の最大長は、16 文字です。デフォルトの prompt は、「Login:」です。 |
|
|
WebVPN ログイン パスワード プロンプトの初期値を設定します。 prompt の最大長は、16 文字です。デフォルトの prompt は、「Password:」です。 |
|
|
||
|
仮想 WebVPN コンテキスト インスタンスが使用するデフォルトのグループ ポリシーを指定します。グループ ポリシーの詳細は、「グループ ポリシーの設定」 を参照してください。 |
|
|
||
|
特定の仮想 WebVPN コンテキストについて、オープンできるクライアント接続の最大数を指定します(VRF ドメイン単位)。 |
|
|
NBNS リスト名を作成し、nbmslist サブモードを開始します。ファイル共有の設定の詳細は、「CIFS を使用したファイル共有の設定」 を参照してください。 |
|
|
ピアの証明書を検証する動作を設定します。この動作は、WebVPN サービス モジュール が HTTPS サーバに接続を試みたときに、SSL サーバの証明書に適用されます。 • all ― シグニチャの真正性、および関連トラストポイント設定に基づく取り消しステータスを検証します。これがデフォルト設定です。 |
|
|
(任意)WebVPN ゲートウェイでの日本語シフト JIS コード化サポートをイネーブルにします。デフォルトの値は、iso-8859-1 です。 |
|
|
Cisco Secure Desktop(CSD)は、クライアント システム上にセッションの動作および削除のための単一の安全なロケーションを提供することにより、重要データのすべての追跡を、一貫した信頼性のある手段で削除する方法を提供します。CSD により、リモート ユーザがログアウトするか、SSL VPN セッションがタイムアウトになった場合、システム上からクッキー、ブラウザ履歴、一時ファイル、およびダウンロードしたコンテンツが確実に除去されます。CSD は、SSL VPN セッションに関する、または SSL VPN セッション中にダウンロードされた全データおよびファイルを暗号化することにより、データ盗難およびクライアント システム上のマルウェア(悪意のあるソフトウェア)に対する保護を強化します。
CSD Manager では、次のセキュリティ コンポーネントを構築して管理し、エンド ユーザに配備できます。
• ロケーション ― Microsoft Windows ユーザは、このサイト タイプから企業ネットワークに接続します。ロケーションの設定は、Microsoft Windows ユーザだけに適用されます。CSD の設定およびオプションは、ユーザが接続を開始するロケーションのタイプによって異なります。たとえば、セキュア デスクトップおよび VPN フィーチャ ポリシー コンポーネントを使用するロケーション タイプを設定できます。
一般的なロケーション タイプには、職場、自宅、非セキュア(インターネット カフェなど)があります。Secure Desktop Manager を使用して、必要な数のロケーションを定義し、各ロケーションに異なる設定およびオプションを適用して、セキュリティ プロファイルを構成できます。Windows ロケーションにより、ロケーション単位でセキュア デスクトップ機能を配備できます。
• セキュア デスクトップ ― Windows 2000 および Windows XP のユーザに暗号化スペースを提供し、ユーザはこのスペース内でブラウザを使用してオンライン セッションを実行できます。セキュア デスクトップは、トランスペアレントで完全にセキュアですが、アクセスに必要なのはブラウザだけです。権限は、各ユーザがネットワークにアクセスするロケーションによって異なります。
• VPN フィーチャ ポリシー ― Web ブラウジング、ファイル アクセス、ポート転送、または SSL VPN クライアント(フル トンネリング)を許可する前に、システム検出チェックを提供します。フィーチャ ポリシーでは、アンチウィルス ソフトウェア、ファイアウォール ソフトウェア、オペレーティング システムのバージョン、または他の CSD コンポーネントなどの特定の保護対策を要求し、検証できます。
• キャッシュ クリーナ ― キャッシュされたファイル、設定の変更、キャッシュされたブラウザ情報、入力したパスワード、自動完了情報など、ユーザがブラウザでダウンロード、挿入、または作成したすべてのデータを無効にし、消去します。
ここでは、CSD をインストールし、セキュア デスクトップを設定するために必要な手順の概要について説明します。CSD 設定の詳細については、CSD のマニュアルを参照してください。URL は次のとおりです。
http://www.cisco.com/univercd/cc/td/doc/product/vpn/ciscosec/csd/csd31/index.htm
CSD をインストールし、セキュア デスクトップを設定するには、次の作業を行います。
ステップ 1 CSD パッケージをインストールします。インストールの手順は、「CSD パッケージ」を参照してください。
ステップ 2 ゲートウェイを設定します。設定の手順は、「仮想ゲートウェイの設定」を参照してください。
ステップ 3 コンテキストを設定します。設定の手順は、「仮想コンテキストの設定」を参照してください。
ステップ 4 コンテキスト サブモードで、 csd enable コマンドを入力し、CSD をイネーブルにします。
ステップ 5 Web ブラウザから CSD Manager を起動し、コンテキストのセキュア デスクトップを設定します。
CSD 設定の詳細については、次の URL にある CSD のマニュアルを参照してください。
http://www.cisco.com/univercd/cc/td/doc/product/vpn/ciscosec/csd/csd31/index.htm
ステップ 6 コンテキスト サブモードで inservice コマンドを入力し、コンテキストをサービス状態にします。
コンテキストをサービス状態にすると、エンド ユーザは各自の PC に CSD をダウンロードしてインストールできるようになります。
クライアントレス モードでは、すべての URL がホットリンクとして表示されるエンド ユーザ ポータル ページを設定します。WebVPN エンド ユーザに表示される HTML インターフェイスは、設定する値によって異なります。エンド ユーザには、イネーブルにした機能だけを含むカスタム ホームページ(ポータル ページ)が表示されます。
設定するサーバのタイプには、次のリソースを提供する Web サーバが含まれます。
(注) グループ ポリシーで Citrix をイネーブルにした場合、URL リストに Citrix サーバへのリンクを追加できます。また、エンド ユーザに Citrix サーバの URL を任意で提供できます。エンド ユーザは、フローティング ツールバーの URL フィールドに、この URL を入力できます。Citrix サービスのイネーブル化の詳細は、「グループ ポリシーの設定」 を参照してください。
グループのメンバーではないエンド ユーザのポータル ページには、設定したすべてのサーバが表示されます。サーバまたは URL を設定していない場合、ポータル ページにはサーバまたは URL は表示されませんが、エンド ユーザは、ツールバーに URL を入力することによってサーバにアクセスできます。
no を指定すると、コンフィギュレーションから対応する行が削除されます。URL を含める必要はありません。 no url-list listname を指定すると、コンフィギュレーションから指定したリストが削除されます。
ここでは、WebVPN サービス モジュールが NetBIOS 名を IP アドレスにマッピングする際に問い合わせを行う NetBIOS Name Service(NBNS)サーバの設定方法について説明します。
WebVPN では、リモート システム上のファイルにアクセスする、またはファイルを共有するために NetBIOS を必要とします。Windows コンピュータの名前を使用して、Windows コンピュータへのファイル共有接続を試みた場合、指定したファイル サーバは、ネットワーク上のリソースを識別する特定の NetBIOS 名に対応します。
NBNS を使用するには、最低 1 つの NetBIOS サーバ(ホスト)を設定する必要があります。冗長構成用に最大 3 つの NBNS サーバを設定できます。アクティブ サーバに障害が発生すると、リスト上の最初の使用可能サーバがバックアップとして動作します。
ファイル共有用の NBNS サーバを設定するには、次の作業を行います。
|
|
|
---|---|---|
|
||
|
NBNS リストおよび CIFS 名前解決用のサーバのアドレスを指定します。最大 3 つのサーバを設定できます。 (注) この機能がサポートされるのは、Windows 2000 および Linux 上で実行される Samba サーバだけです。 ip_addrs に、Windows ネットワーク上の Primary Domain Controller(PDC)を指定します。 master キーワードは、マスタ ブラウザであることを示します。Windows Internet Naming Service(WINS)サーバの場合には、 master キーワードを入力しないでください。 timeout 値には、次のサーバにクエリを送信する前に、NBNS クエリに対する応答を待機する期間の初期値を秒数で指定します。デフォルトの timeout 値は 2 秒で、有効範囲は 1 ~ 30 秒です。 retries 値には、設定されているサーバに順番に NBNS クエリの送信を再試行する回数を指定します。リストの全サーバに対してここで指定した回数だけ送信を再試行したあと、エラーが戻されます。デフォルトの retries 値は 2 で、有効範囲は 0 ~ 10 です。 |
|
|
||
|
グループ ポリシーの名前を指定し、グループ サブコマンド モードを開始します。グループ ポリシーの設定の詳細は、「グループ ポリシーの設定」 を参照してください。 |
|
|
(注) Windows 2000 サーバおよび Linux/UNIX 上でサポートされます。 |
|
|
file-access ― ホームページにリストされているファイル サーバへの、エンド ユーザによるアクセスをイネーブルにします。このキーワードは、デフォルトではディセーブルです。 file-access をディセーブルにすると、 file-browse および file-entry の設定は削除されます。 file-browse ― エンド ユーザによるファイル サーバのブラウズをイネーブルにします。このキーワードは、デフォルトではディセーブルです。 (注) file-browse をイネーブルにするには、file-access がイネーブルである必要があります。 file-entry ― エンド ユーザによるファイル サーバまたはファイル共有への直接入力をイネーブルにします。このキーワードは、デフォルトではディセーブルです。 (注) file-entry をイネーブルにするには、file-access がイネーブルである必要があります。 |
|
|
||
|
||
|
セキュア ゲートウェイに設定した対応する仮想ゲートウェイ インスタンスおよびマッピング方式を指定します。 gateway-name パラメータは、システムに設定されている仮想ゲートウェイの 1 つと一致している必要があります。 domain-name パラメータは、仮想 WebVPN インスタンスの企業用ドメイン名(cisco.com など)の指定に使用する ASCII 文字列です。 |
|
|
TCP ポート転送とも呼ばれるシンクライアント モードは、リモート エンド ユーザに対して、既知の固定 TCP ポート上で通信しているクライアントおよびサーバ アプリケーションへのアクセスを提供します。リモート エンド ユーザは、各自のローカル PC にインストールしたクライアント アプリケーションを使用し、これらのアプリケーションをサポートするリモート サーバにセキュアにアクセスできます。
• Virtual Network Computing(VNC)
その他の TCP ベース アプリケーションも動作する可能性はありますが、シスコではテストを実施していません。
シンクライアント モードを使用するには、Sun Microsystems Java Runtime Environment をインストールし、エンド ユーザの PC にアプリケーションを設定する必要があります。いずれも、管理者の許可が必要です。エンド ユーザが、インターネット キオスクまたはインターネット カフェなどの公共リモート システムから接続してアプリケーションを使用できるようになることは、ほとんど考えられません。
(注) エンド ユーザがデジタル証明書を使用して認証した場合、Java アプレットは動作しません。Java は Web ブラウザのキーストアにアクセスできないので、Java では、ブラウザがエンド ユーザ認証に使用した証明書を使用できず、アプリケーションを起動できません。エンド ユーザがアプリケーションにアクセスできるようにするには、WebVPN エンド ユーザの認証にデジタル証明書を使用しないでください。
アプリケーションの起動時に、WebVPN サービス モジュール がエンド ユーザの PC 上のホスト ファイルに追加するマッピング情報を提供します。このマッピング情報により、必要なアプリケーションをサポートしている中央サイトのサーバに、PC を接続できます。
ポート転送を実行できるのは、リモート サーバ上のアプリケーションを一意に識別でき、ホスト名または IP アドレスとポートのいずれかでアクセスできる場合だけです。できれば、ホスト名を使用することを推奨します。使用方法については、「ホスト名と IP アドレスの使用方法」 を参照してください。
ポート転送のエントリは、port-fwd サブモードで設定します。指定した listname に、複数のエントリを指定できます。 listname により、ユーザ名またはグループ ポリシーに適用するリストとして、ポート転送エントリをグループ化できます。
ポート転送設定を指定してシンクライアント モードを設定するには、次の作業を行います。
|
|
|
---|---|---|
|
転送先ポート リストの名前を指定し、WebVPN port-fwd サブモードを開始します。 listname の最大長は、63 文字です。 |
|
|
WebVPN エンド ユーザに、TCP ベース アプリケーションへのグローバル アクセスを指定します。 エンド ユーザの PC 用に、次のように、アプリケーションのローカル TCP ポートを設定します。 • localport パラメータに、待ち受けるローカル ポートを指定します。 localport 値は、特定のリスト名について 1 回だけ使用できます。 • エンド ユーザのワークステーションで実行している既存サービスとの競合を避けるために、ポートは 1024 ~ 65535 の範囲で設定します。使用方法については、「ローカル ポートのガイドライン」 を参照してください。 エンド ユーザがアクセスする必要があるサーバ用に、次のように、リモート サーバおよびリモート TCP ポートを設定します。 • remoteserver パラメータに、リモート サーバに接続するためのホスト名または IP アドレスを指定します。使用方法については、「ホスト名と IP アドレスの使用方法」 を参照してください。 • remoteport パラメータに、リモート サーバに接続するためのポートを指定します。 description パラメータにより、エンド ユーザのアプレット ウィンドウに、アプリケーション名または短い説明を表示できます。 |
|
|
Windows 2000 または XP 上のエンド ユーザ システムでポート転送モードを開始するために Java アプレットをダウンロードすると、(C:\WINNT\system32\drivers\etc\hosts にある)ホスト ファイルが、hosts.webvpn としてバックアップされます。さらに、Java アプレットにより、エンド ユーザに割り当てるポート転送リストに設定した各ポート転送エントリについて、ホスト ファイルにマッピングが追加されます。
Java アプレットは、クライアントのホスト ファイルで、「mailman」を 127.0.0.2 に、「pc46」を 127.0.0.3 に、「sjcd-2」を 127.0.0.4 にマッピングします。さらに、Java アプレットは、エンド ユーザの PC 上でリモート ポート 127.0.0.2:25、127.0.0.3:23、および 127.0.0.4:110 を待ち受けます。
マッピングが実行され、Java アプレットが必要なポート上で待ち受けるので、クライアントのアプリケーションを変更する必要はありません。たとえば、クライアントはホスト pc46 への Telnet 接続を作成できますが( telnet pc46 )、Telnet 接続は実際には Java アプレットを経由するので、セキュアです。
上記のコンフィギュレーションは、ポート 23、25、および 110 でローカル サーバが実行されていないことを前提としています。アプレットをダウンロードする前に、エンド ユーザの PC がいずれかのポート上でアプリケーションを実行している場合(たとえば、クライアント PC 上でポート 23 で待ち受ける Telnet サーバを実行している場合)には、アプレットは 127.0.0.1: local-port 上での実行を試みます。この場合、2 つの状況が考えられます。
• local-port が remote-port と同じである場合、Java アプレットは、次の例のように、local-port 127.0.0.1:23 で待ち受けます。
ユーザは、ポート転送エントリを使用できないので、ポート転送は失敗します。
• local-port が remote-port と異なる場合、Java アプレットは、次の例のように、127.0.0.1:1230 で待ち受けます。
クライアント PC のポート 1230 ではアプリケーションが実行されていないので、ポート転送は成功します。この場合、エンド ユーザは、ホスト pc46 への Telnet 接続をオープンする場合、 telnet 127.0.0.1 1230 を入力する必要があります。Java アプレットがローカル ポートで待ち受ける場合には、常に、127.0.0.1: local-port で通信するように、クライアントのアプリケーションを変更する必要があります。
次のように、ポート転送エントリに、ホスト名ではなくリモート サーバの IP アドレスを設定した場合にも、Java アプレットは 127.0.0.1: local-port で待ち受けます。
このコンフィギュレーションでは、Java アプレットは 127.0.0.1:1230 で待ち受けます。エンド ユーザは、19.0.0.1 への Telnet 接続をオープンする場合、 telnet 127.0.0.1:1230 を入力する必要があります。
使用方法については、「ホスト名と IP アドレスの使用方法」 を参照してください。
(注) Linux 上で実行するエンド ユーザ システムの場合には、Java アプレットは常に、127.0.0.1:local-port で待ち受けます。したがって、127.0.0.1:local-port に接続するように、すべてのクライアント アプリケーションを変更する必要があります。ホスト ファイルでのマッピングは実行されません。
ホスト名を使用してリモート サーバを識別すると、Java アプレットはホスト ファイルを変更し、各アプリケーション サーバのエントリを作成します(オペレーティング システムが Windows で、PC 上に管理者権限がある場合)。たとえば、最初のポート転送リモート サーバにホスト名
johndoew2ksrv を設定した場合、Java アプレットは元のホスト ファイルのバックアップ コピーを作成し、ホスト ファイルを変更して、 johndoew2ksrv をループバック IP アドレス 127.0.0.2 にマッピングする WebVPN エントリを追加します。2 番めのポート転送エントリが NotesServer であれば、Java アプレットは、 NotesServer を 127.0.0.3 にマッピングするエントリをホスト ファイルに追加します。これらのエントリは、さらに、実リモート アプリケーション ポートに関連付けられます。Java アプレットが割り当てるループバック アドレスは固有なので、各エントリは固有です。
IP アドレスを使用してリモート サーバを識別する場合には、Java アプレットはホスト ファイルのバックアップまたは変更を実行しません。各サーバに、ループバック IP アドレス 127.0.0.1 およびローカル TCP ポートとして設定される TCP ポートを割り当てます。割り当てられる IP アドレスは常に 127.0.0.1 なので、アプリケーションを区別するには、各エントリに固有のローカル TCP ポートを設定する必要があります。
クライアントのアプリケーションが、サーバ アドレスと通信するように設定します。ホスト名およびリモート TCP ポートを使用する場合、アプリケーション サーバのアドレス指定情報は、エンド ユーザのロケーションに関係なく、同じになります。IP アドレスおよびローカル TCP ポートを使用する場合、アドレス指定情報は、エンド ユーザのロケーションによって異なります。エンド ユーザの PC のクライアント アプリケーションを再設定する必要があります。
(注) エンド ユーザは、各自の PC に SSL VPN Client(SVC)をダウンロードしてインストールできるので、最初に、WebVPN サービス モジュール 上の内部フラッシュ デバイスに SVC パッケージをインストールする必要があります。SVC パッケージのインストールの詳細については、「クライアント パッケージのインストール」 を参照してください。
(注) トンネル モードは、グループ ポリシー コマンドを使用して設定します。グループ ポリシー コマンドの詳細については、「グループ ポリシーの設定」 を参照してください。
ここでは、IP ローカル アドレス プール、WebVPN コンテキスト、および WebVPN グループ ポリシーを指定して、トンネル モードを設定する手順について説明します。
トンネル モードでは、ゲートウェイによって、ゲートウェイにログインした各エンド ユーザに SVC IP アドレスが提供されます。SVC IP アドレスを提供するローカル IP アドレス プールを設定するには、 ip local pool コマンドを使用します。
|
|
|
---|---|---|
|
各 SVC の IP アドレスを提供するために、WebVPN サービス モジュール が使用する IP アドレス プールを指定します。 (注) WebVPN サブインターフェイスの IP アドレスが、この IP アドレス プールと同じサブネットに存在している必要があります。WebVPN サブインターフェイスの設定の詳細は、「WebVPN サービス モジュール上でのインターフェイスの設定」 を参照してください。 |
|
|
||
|
||
|
グループ ポリシーのトンネル モードをイネーブルにします。トンネル モードは、デフォルトではディセーブルです。 svc-enabled ― グループのユーザによるトンネル モードの使用をイネーブルにします。エンド ユーザの PC に SVC をインストールできない場合、エンド ユーザは引き続き、クライアントレス モードまたはシンクライアント モードを使用できます。 svc-required ― トンネル モードを必須にします。エンド ユーザの PC に SVC をインストールできない場合、エンド ユーザは他のモードを使用できません。 |
|
|
ユーザまたはグループのトンネル モード WebVPN をイネーブルにした場合、ゲートウェイまたはクライアントの Dead Peer Detection(DPD)インターバル値を指定します。 timeout パラメータに、タイムアウトの値を秒数で指定します。DPD タイマーは、ピアに DPD パケットを送信する必要があるかどうかを判別します。DPD タイマーは、ピアから Cisco SSL Tunnel Protocol(CSTP)フレームを受信するごとにリセットされます。ゲートウェイまたはクライアントが DPD 応答を受信しない場合、デフォルトでは、ゲートウェイおよびクライアントの設定はディセーブルになります。 |
|
|
||
|
Web ブラウジング用のプライマリおよびセカンダリ DNS サーバを指定します。SVC をインストールすると、アクティブな Web ブラウザが非アクティブになり、新しいブラウザが起動します。ここで指定する DNS サーバ情報は、新しく起動するブラウザに適用されます。接続が終了すると、前の DNS 設定が再び適用されます。 |
|
|
エンド ユーザのログイン時に表示される Web ページの URL を指定します。 url に、URL のパスを指定します。URL の最大長は、255 文字です。この設定は、デフォルトではディセーブルです。 |
|
|
||
|
||
|
接続終了後も、エンド ユーザのクライアント PC 上に SVC をインストールしておくように指定します。エンド ユーザの PC に SVC を継続的にインストールしておくと、エンド ユーザは新しい接続を確立するときに、再び SVC をダウンロードする必要がありません。 トンネルの終了後に VPN クライアントをアンインストールし、ダウンロードしたセットアップ ファイルを削除する場合には、このコマンドの no 形式を使用します。 |
|
|
VPN クライアントが SSL トンネルのキーの再生成(rekey)を行うタイミング、および WebVPN クライアントが使用するキーの再生成方式を指定します。キーの再生成は、デフォルトではディセーブルです。キーの再生成をイネーブルにした場合、デフォルトのキーの再生成方式は ssl です。 time interval の有効値は 0 ~ 43200 秒で、デフォルトは 21600(6 時間)です。 method new-tunnel キーワードを指定すると、既存のトンネルが終了し、新しいトンネルがリクエストされます。 method ssl キーワードを指定すると、既存のトンネルを終了せずに、SVC により SSL セキュリティ パラメータがネゴシエートされます。 |
|
|
すべてのトラフィックをプライベート ネットワークにトンネリングする(include)か、または外部(非プライベート)ネットワーク宛てのトラフィックを外部 Web サイトに直接送信する(exclude)かを指定します。 (注) include または exclude のどちらかのキーワードを指定します。両方のキーワードを指定することはできません。コマンドを複数回入力することにより、include または exclude キーワードのいずれかに、最大 200 のアドレスを指定できます。 include キーワードの場合、トンネリングするトラフィックを指定します。その他のトラフィックはすべて、内部ネットワークにトンネリングされません。 exclude キーワードの場合、内部ネットワークにトンネリングしないで外部 Web サイトに直接送信するトラフィックを指定します。その他のトラフィックはすべて、トンネリングされます。 The exclude local-lans キーワードを指定すると、エンド ユーザのローカル LAN が、トンネリング対象から除外されます。 |
|
|
Microsoft Internet Explorer(MSIE)ブラウザのプロキシ設定を指定します。 (注) このコマンドがサポートされるのは、MSIE ブラウザだけです。 exception キーワードには、プロキシ経由で送信しないトラフィックの単一の DNS 名またはアドレスを指定します。このキーワードは、デフォルトではディセーブルです。 server キーワードには、Socks を除くブラウザのプロキシ設定(HTTP、Secure、FTP、Gopher)が使用する IP アドレスまたは DNS 名を指定し、任意でコロンとポート番号を指定します。このキーワードは、デフォルトではディセーブルです。 ブラウザでプロキシを使用しない場合、 option none キーワードを指定します。これがデフォルト設定です。 |
|
|
WebVPN ゲートウェイにポリシーを適用する手順については、「仮想ゲートウェイの設定」 を参照してください。
(注) トンネル モード設定に固有のグループ ポリシー コマンドは、「トンネル モードの設定」 を参照してください。
(注) 一部のグループ ポリシー コマンドは、特定のリモート アクセス モードに適用されます。特定のモードの情報は、各コマンドの注釈を参照してください。
各種のグループ ポリシー パラメータを設定するには、次の作業を行います。
SSL ポリシー テンプレートを使用して、SSL スタックの関連パラメータを定義できます。
設定できるパラメータの 1 つは、SSL close-protocol 動作です。これにより、各 SSL ピアは、接続を正しく終了するために、close-notify アラートを送信し、close-notify アラートを受信する必要があります。SSL 接続が正しく終了されなかった場合、セッションは削除され、ピアは以降の SSL 接続に同じ SSL セッション ID を使用できなくなります。
ただし、SSL の実装状況を見ると、SSL close-protocol に厳密に従っていないものも多数あります(たとえば、SSL ピアは close-notify アラートを送信しますが、リモート SSL ピアからの close-notify アラートを待機せずに、接続を終了するような場合もあります)。
SSL ピアが接続終了シーケンスを開始すると、WebVPN サービス モジュール は close-notify アラート メッセージを監視します。SSL ピアが close-notify アラートを送信しない場合、WebVPN サービス モジュール は、以降の SSL 接続に同じセッション ID が使用されないように、そのセッションをセッション キャッシュから削除します。
WebVPN サービス モジュール が接続終了シーケンスを開始する場合には、次の close-protocol オプションを設定できます。
• strict ― WebVPN サービス モジュール は SSL ピアに close-notify アラート メッセージを送信し、さらに、WebVPN サービス モジュール は SSL ピアからの close-notify アラート メッセージの受信を待機します。WebVPN サービス モジュール が close-notify アラートを受信しない場合、そのセッションの SSL は再開できなくなります。
• none ― WebVPN サービス モジュール は SSL ピアに close-notify アラート メッセージを送信しません。また、WebVPN サービス モジュール は SSL ピアからの close-notify アラート メッセージを待機しません。WebVPN サービス モジュール は、以降の SSL 接続で、その SSL を再開できるように、セッション情報を保持します。
• ディセーブル(デフォルト) ― WebVPN サービス モジュール は、SSL ピアに close-notify アラート メッセージを送信しますが、SSL ピアは close-notify アラートを待機せずにセッションを削除します。SSL ピアが close-notify アラートを送信するかどうかに関係なく、以降の SSL 接続でセッションを再開できるように、セッション情報が保持されます。
特定のプロキシ サーバに SSL ポリシーを関連付けない場合、プロキシ サーバは、デフォルトで、すべてのサポート対象の暗号スイートおよびプロトコル バージョンをイネーブルにします。
|
|
|
---|---|---|
|
||
webvpn(config-ssl-policy)# cipher { rsa-with-rc4-128-md5 | rsa-with-rc4-128-sha | rsa-with-des-cbc-sha | rsa-with-3des-ede-cbc-sha | others... } |
プロキシ サーバが受け入れる暗号スイート名のリストを設定します。暗号スイート名の規則は、既存の SSL スタック名と同じです。 |
|
|
ClientHello メッセージの SSL プロトコルのバージョン(SSL2.0、SSL3.0、TLS1.0)を指定します。TLS ロールバックは、デフォルトではディセーブルです。 current キーワードを指定すると、SSL プロトコル バージョンは、サポートされる最新バージョンまたはネゴシエートされたバージョンのどちらかになります。 any キーワードを指定すると、SSL プロトコル バージョンはチェックされません。 (注) デフォルトでは、WebVPN サービス モジュール は、サポートされる最新バージョンを使用します。このコマンドは、クライアントが(ClientHello メッセージに指定された)最新のサポート バージョンではなく、ネゴシエートされたバージョンを使用している場合に入力します。 |
|
|
||
|
||
|
SSL close-protocol 動作を設定します。close-protocol は、デフォルトではディセーブルです。 |
|
|
||
|
エントリをセッション キャッシュに保管しておく時間を設定します。有効範囲は、1 ~ 72000 秒です。 (注) セッション キャッシュ サイズを設定するには、absolute キーワードが必要です。 (注) absolute キーワードを指定すると、指定した timeout が経過するまで、セッション エントリがセッション キャッシュに保管されます。absolute キーワードを指定した場合、セッション キャッシュに空きエントリがない場合、新しい着信接続は拒否されます。 |
|
|
(任意)セッション キャッシュのサイズを指定します。1有効範囲は、1 ~ 262143 エントリです。 (注) timeout session コマンドに absolute キーワードを入力した場合には、セッション キャッシュ サイズを指定してください。このコマンドを入力しない場合、または size を指定しない場合、セッション キャッシュ サイズは最大サイズ(262,144)になります。 |
TCP ポリシー テンプレートを使用して、TCP スタックの関連パラメータを定義できます。
|
|
|
---|---|---|
|
||
|
接続により生成される SYN パケットの Maximum Segment Size(MSS;最大セグメント サイズ)をバイト数で設定します。 (注) このコマンドにより、プロキシ サーバのクライアント側とサーバ側に異なる MSS を設定できます。デフォルトは 1460 バイトです。有効範囲は、256 ~ 2460 バイトです。11 |
|
|
||
|
再組み立てキューをクリアするまでの時間を、秒数で設定します。指定した時間内にトランザクションが完了しない場合、再組み立てキューはクリアされ、接続は廃棄されます。デフォルトは 60 秒です。有効範囲は、0 ~ 960 秒(0 = ディセーブル)です。 |
|
|
確立した接続を非アクティブにできる時間を、秒数で設定します。デフォルトは 600 秒です。有効範囲は、0 ~ 960 秒(0 = ディセーブル)です。 |
|
|
||
|
各接続の最大受信バッファ シェアをバイト数で設定します。デフォルトは 32768 バイトです。有効範囲は、8192 ~ 262144 バイトです。 |
|
|
各接続の最大送信バッファ シェアをバイト数で設定します。デフォルトは 32768 バイトです。有効範囲は、8192 ~ 262144 バイトです。 |
|
|
フロー内のすべてのパケットに、Type of Service(ToS;サービス タイプ)を転送します。 (注) ポリシーがサーバ TCP ポリシーとして設定されている場合、ToS 値はサーバからクライアントに送信されます。ポリシーが仮想ポリシーとして設定されている場合、ToS 値はクライアントからサーバに送信されます。 (注) ToS 値は、伝播する前に学習される必要があります。たとえば、サーバからクライアントへの接続で ToS 値を伝播する場合、ToS 値を学習して伝播する前に、サーバ接続を確立する必要があります。したがって、いくつかの初期パケットは ToS 値を伝送しません。 |
|
|
nagle キーワードを指定すると、アプリケーションにより書き込まれた少量のデータが接続送信キューに保管されますが、次のいずれかの状況が発生するまで、データは送信されません。 • データが待機中で、前に送信したデータを確認する ACK を受信した場合 • フルサイズ セグメントが作成されて送信されるように、アプリケーションによってさらにデータが書き込まれた場合 nagle キーワードをディセーブルにすると、データのキューイングは無効になります。アプリケーションにより書き込まれたすべてのデータは、ただちに送信されます。 |
|
|
window-update ACK を送信する前に、受信する必要があるフルサイズ セグメント数を指定します。 packets の有効値は 1 ~ 10 で、デフォルトは 2 です。 |
|
|
window-upate ACK を送信するまでの時間を指定します。 タイムアウトになる前に( delayed-ack-threshold コマンドで指定した)フルサイズ セグメント数を受信していない場合、その時点までに受信した全データを確認する ACK が送信されますが、ウィンドウは更新されません。 timer の有効値は 50 ~ 500 ミリ秒で、デフォルトは 200 です。 |
WebVPN サービス モジュール は、SSL プロトコルを使用して、機密、認証、およびデータ完全性によりセキュアなデータ トランザクションを実行します。SSL プロトコルでは、証明書、公開鍵、および秘密鍵を使用します。
デジタル ID カードと同様の証明書は、クライアントに対してサーバの身元を、サーバに対してクライアントの身元を証明するものです。認証局から発行される証明書には、証明書を発行されたエンティティの名前、エンティティの公開鍵、および証明書の有効期限を示すタイムスタンプが含まれています。
公開鍵および秘密鍵は、情報を暗号化および複号化するための暗号です。公開鍵は制約なしに共有できますが、秘密鍵は絶対に共有されません。公開鍵と秘密鍵は、ペアで使用します。公開鍵で暗号化したデータは、対応する秘密鍵でのみ複号化できます。
各 WebVPN モジュールは、最大 64 のゲートウェイをサポートします。各ゲートウェイは、HTTPS サーバとして動作します。認証に証明書を使用するには、各ゲートウェイに鍵のペアを設定する必要があります。
モジュールの起動時に、証明書を取得したり自動登録を行うために認証局にクエリを送信しなくても済むように、証明書を NVRAM に保管しておくことを推奨します。詳細については、「コンフィギュレーションの保存」 を参照してください。
ユーザがゲートウェイのポータル ページから HTTPS サイトにアクセスを試みた場合、WebVPN サービス モジュール は SSL クライアントとして動作し、そのサイトから受信した証明書を認証する必要があります。証明書の開始時刻、終了時刻、およびシグニチャが検証されます。
(注) WebVPN コンテキストに ssl authenticate verify none コマンドを設定した場合には、証明書は確認されません。
鍵のペアが安全でない場合、有効な証明書が失効していることがあります。失効の確認が必要な場合、WebVPN サービス モジュール は認証局から Certificate Revocation List(CRL;証明書失効リスト)をダウンロードし、受信した証明書のシリアル番号を検索します。
証明書は、特定の証明書アトリビュート値を Access Control List(ACL;アクセス制御リスト)マッピングと照合することにより、フィルタリングすることもできます。信頼できる認証局から発行され、認証された証明書だけが受け入れられます。
(注) 認証されるのは証明書だけで、証明書の送信者は認証されません。SSL ハンドシェイクの一部として、証明書の送信者には、証明書の公開鍵に対応する秘密鍵を所有しているかどうかを確認するチャレンジが送信されます。チャレンジに失敗すると、WebVPN サービス モジュール により、SSL ハンドシェイクは中止されます。
ここでは、Public Key Infrastracture(PKI;公開鍵インフラストラクチャ)の設定方法について説明します。
• 「WebVPN のゲートウェイおよびコンテキストへの証明書の割り当て」
• 「証明書の更新」
鍵および証明書は、次のいずれかの方法を使用して設定できます。
• Simple Certificate Enrollment Protocol(SCEP)を使用する場合には、次の手順で鍵および証明書を設定します。
詳細については、「SCEP を使用したトラストポイントの設定」 を参照してください。
• SCEP を使用しない場合には、手動証明書登録(TFTP およびカットアンドペースト)機能を使用して、次の手順で、鍵および証明書を設定します。
–認証局の証明書を取得し、TFTP またはカットアンドペーストを使用してトラストポイントを登録し、PKCS10 ファイルを作成する
–PKCS10 パッケージを使用して、オフラインで SSL サーバ証明書をリクエストする
–TFTP またはカットアンドペーストを使用して、SSL サーバ証明書をインポートする
詳細については、「手動証明書登録」 を参照してください。
• 外部 PKI システムを使用する場合には、次の作業を行います。
–PKCS12 または Privacy Enhanced Mail(PEM)ファイルを生成する
詳細については、「鍵ペアおよび証明書のインポートおよびエクスポート」 を参照してください。
外部 PKI システムは、鍵のペアを生成し、認証局または鍵と証明書のアーカイブ システムからの証明書を登録するサーバまたは PKI 管理システムです。Public-Key Cryptography Standards(PKCS)により、秘密鍵および証明書を含む個人身元情報の転送シンタックスが指定されています。この情報は、暗号化ファイルにパッケージされます。暗号化ファイルを開くには、パス フレーズが必要です。暗号鍵は、パス フレーズから抽出されます。
(注) PKCS12 または PEM ファイルをインポートする前に、トラストポイントを設定する必要はありません。PKCS12 または PEM ファイルから鍵および証明書をインポートする場合、トランストポイントが存在しなければ自動的に作成されます。
(注) 生成する最初の鍵ペアにより、モジュール上の SSH がイネーブルになります。SSH を使用する場合には、SSH 用の鍵ペアを設定してください。「管理者用の認証の設定」 を参照してください。
RSA は、Ron Rivest、Adi Shamir、および Leonard Aldeman によって開発された公開鍵暗号化システムです。RSA アルゴリズムは、鍵ペアを生成するために、認証局および SSL サーバにより幅広く使用されています。各認証局および各 SSL サーバは、それぞれ独自の RSA 鍵ペアを所有しています。SSL サーバは、証明書を登録するときに、認証局に公開鍵を送信します。SSL サーバは、SSL セッションの確立時に、証明書を使用してクライアントに身元を証明します。
SSL サーバは、セキュアなストレージに秘密鍵を保管し、認証局には公開鍵だけを送信します。認証局は、認証局の秘密鍵を使用して、サーバの公開鍵およびサーバに関する他の身元情報が含まれた証明書に署名します。
各認証局は、秘密鍵の機密を保持し、秘密鍵を使用して、下位の認証局および SSL サーバの証明書に署名します。認証局は、認証局の公開鍵を含む証明書を所有しています。
認証局は、1 つまたは複数のレベルの階層から構成されます。最上位の認証局は、ルート認証局と呼ばれます。下位レベルの認証局は、中間認証局または下位認証局と呼ばれます。ルート認証局は自己署名した証明書を所有し、次に低いレベルの下位認証局の証明書に署名します。この下位認証局は、さらにその次に低いレベルの認証局の証明書に署名し、同様にして下位レベルに引き継がれます。最下位レベルの認証局は、SSL サーバの証明書に署名します。
(注) WebVPN サービス モジュール は、最大 8 レベルの認証局(1 つのルート認証局と 7 つまでの下位認証局)をサポートします。3 レベル(3 階層)登録の例については、「3 階層の認証局登録の例」 を参照してください。
これらの証明書は、最下位のサーバの証明書から、ルート認証局が自己署名した最上位の証明書までのチェーンを形成します。各シグニチャは、証明書本体のハッシュ ダイジェストを暗号化する、発行認証局の秘密鍵を使用して形成されます。証明書本体の最後にシグニチャが付加されると、証明書は完成します。
SSL セッションの確立時に、SSL サーバは自己の証明書チェーンをクライアントに送信します。クライアントは、次に上位の証明書から公開鍵を取得し、証明書に付加されたシグニチャを複号化して、チェーン上位の各証明書のシグニチャを検証します。複合化した結果は、証明書本体のハッシュ ダイジェストと比較されます。チェーン内の 1 つの認証局の証明書が、クライアントの所有データベースに保管されている信頼できる認証局の証明書と一致すると、検証は終了します。
チェーン最上位の認証局の証明書まで到達し、信頼できる自己署名の証明書と一致しない場合には、クライアントはセッションを終了するか、ユーザに対して証明書の信頼性を確認するように要求するプロンプトを表示します。
SSL はサーバの認証後、サーバ証明書の公開鍵を使用してシークレットを暗号化し、サーバに送信します。SSL サーバは、自己の秘密鍵を使用して、シークレットを複号化します。両サイドは、交換したシークレットと 2 つのランダム番号を使用して、以降の SSL セッションでのデータの暗号化、複号化、完全性チェックに必要な鍵を生成します。
(注) WebVPN サービス モジュール は、汎用の鍵だけをサポートします。
汎用の鍵を生成すると、1 つの RSA 鍵のペアだけが生成されます。名前付きの鍵ペアにより、複数の RSA 鍵のペアを作成し、Cisco IOS ソフトウェアで、各証明書に異なる鍵ペアを保持することができます。鍵ペアには名前を指定することを推奨します。
(注) 生成された鍵ペアは、システム メモリ(RAM)に保管されます。電源障害が発生したり、モジュールをリセットすると、鍵ペアは失われます。実行コンフィギュレーションを保存し、モジュールの NVRAM のプライベート コンフィギュレーション ファイルに鍵ペアを保存するには、copy system:running-config nvram:startup-config コマンドを入力する必要があります。
|
|
---|---|
|
12.exportable キーワードを指定すると、鍵をエクスポートできます。鍵の生成中に、鍵をエクスポートできるように指定できます。エクスポート可能またはエクスポート不可として生成された鍵は、期限が切れるまで変更できません。 |
(注) RSA 鍵を生成すると、係数長をビット単位で入力するように要求されます。WebVPN サービス モジュール がサポートしている係数長は、512、768、1024、1536、および 2048 ビットです。512 または 768 も指定できますが、係数長は最低 1024 を指定することを推奨します。係数が長いほど生成に時間がかかり、使用時間も長くなりますが、セキュリティは強化されます。
(注) 鍵ペアを生成したら、自己署名の証明書を生成して、SSL サービスをテストできます。
各証明書について、WebVPN サービス モジュール が使用する 1 つのトラストポイントを宣言する必要があります。
モジュールが使用するトラストポイントを宣言し、トラストポイントの特性を指定するには、グローバル コンフィギュレーション モードから開始して、次の作業を行います。
|
|
|
---|---|---|
|
モジュールが使用するトラストポイントを宣言します。このコマンドを入力すると、ca-trustpoint コンフィギュレーション モードが開始されます。 |
|
|
||
|
||
|
(任意)この証明書を使用する WebVPN ゲートウェイの IP アドレスを指定します。14 |
|
|
||
|
(任意)証明書の失効ステータスをチェックする方法を指定します。 • crl ― CRL により、証明書チェックを実行します。これがデフォルト設定です。 • ocsp ― Online Certificate Status Protocol(OCSP)サーバにより、証明書チェックを実行します。 2 番めおよび 3 番め方法を指定すると、サーバがダウンしているなど、最初に指定した方法がエラーだった場合に、次の方法が使用されます。 |
|
|
(任意)WebVPN ゲートウェイのホスト名を設定します。17 |
|
|
次に、トラストポイント PROXY1 を宣言し、接続を確認する例を示します。
各トラストポイントについて、認証局の公開鍵を含む証明書を取得する必要があります。複数のトラストポイントに、同じ認証局を使用できます。
(注) 証明書の正しいフィンガープリントを取得して、コンソールに表示されたフィンガープリントを確認する場合には、認証局に問い合わせてください。
認証局の公開鍵を含む証明書を取得するには、グローバル コンフィギュレーション モードで、次の作業を行います。
|
|
---|---|
|
認証局の公開鍵を含む証明書を取得します。 |
各トラストポイントについて、認証局から署名された証明書を取得する必要があります。
署名された証明書を認証局にリクエストするには、グローバル コンフィギュレーション モードで、次の作業を行います。
|
|
---|---|
|
18.コンフィギュレーションに保存されないチャレンジ パスワードを任意で作成できます。このパスワードは、証明書を失効する必要がある場合に要求されるので、忘れないでください。 |
(注) pki enroll コマンドを入力し、証明書を受領する前にモジュールまたはスイッチをリブートした場合には、このコマンドを再入力し、認証局の管理者に通知する必要があります。
トラストポイントの設定後、証明書およびトラストポイントの情報を確認する方法は、「証明書およびトラストポイントの確認」 を参照してください。
WebVPN サービス モジュール は、最大 8 レベルの認証局(1 つのルート認証局と 7 つまでの下位認証局)をサポートします。
• 3 つの認証局(1 つのルート認証局および 2 つの下位認証局)を認証します。
手動証明書登録(TFTTP およびカットアンドペースト)機能により、証明書のリクエストを生成し、認証局の証明書およびルータ証明書を受け入れることができます。これらの作業には、TFTP サーバまたは手動でのカットアンドペースト操作を使用します。TFTP または手動カットアンドペーストによる登録は、次の状況で使用できます。
• 認証局が(リクエストおよび証明書を送受信する最も一般的な方法である)SCEP をサポートしていない場合
• (Cisco IOS ソフトウェアを実行しているルータが証明書を取得する方法である)ルータと認証局間のネットワーク接続が不可能な場合
次の URL にある説明に従って、手動証明書登録(TFTP およびカットアンドペースト)機能を設定します。
http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122newft/122t/122t13/ftmancrt.htm
(注) CRL サーバにアクセスできない、または CRL ダウンロード パスが存在しないことが原因で CRL をダウンロードできない場合、証明書のインポートに失敗することがあります。インポート処理に関連するすべてのトランスポイントで、CRL をダウンロードできることを確認してください。CRL パスが存在しない場合、または CRL サーバにアクセスできない場合には、インポート処理に関連するすべてのトラストポイントに、 revocation-check none コマンドを入力する必要があります。すべての証明書の情報を表示し、認証局の証明書の表示から関連トラストポイントのリストを取得するには、show crypto pki certificates コマンドを入力します。これらのすべてのトランスポイントに、revocation-check none コマンドを入力します。
たとえば、3 レベルの認証局階層(ルート CA、下位 CA1、下位 CA2)で、下位 CA1 の証明書をインポートする場合、ルート CA に関連するすべてのトラストポイントに、 revocation-check none コマンドを入力します。同様に、下位 CA2 の証明書をインポートする場合には、ルート CA および下位 CA1 に関連するすべてのトラストポイントに、revocation-check none コマンドを入力します。
証明書を正常にインポートしたあと、トラストポイントの CRL オプションを元に戻すことができます。
5. サーバの証明書をインポートします(サーバの証明書は、手順 4 で証明書をインポートした認証局により発行されます)。
3. Certificate Signing Request(CSR)を生成し、TFTP サーバに送信します。
4. CSR を使用して、3 番めのレベルの認証局からオフラインで SSL 証明書を取得します。
5. 3 つの認証局(1 つのルート認証局および 2 つの下位認証局)を認証します。
4. 3 番めのレベルの認証局によって署名された、手順 3 の証明書リクエストを取得します。
5. すべての認証局(1 つのルート認証局および 2 つの下位認証局)を定義し、インポートします。
a. ルート認証局および下位認証局 1 用の 2 つのトラストポイントを定義します。
(注) この例では、下位認証局 2 の証明書をインポートするために、tp-proxy1 を使用しています。
鍵ペアおよび証明書は、PKCS12 ファイル形式または Privacy Enhanced Mail(PEM)ファイル形式のいずれかを使用して、インポートおよびエクスポートできます。
ここでは、鍵ペアおよび証明書をインポートまたはエクスポートする方法について説明します。
• 「PKCS12 ファイルのインポートおよびエクスポート」
(注) WebVPN サービス モジュール の WebVPN ソフトウェアには、テスト用の PKCS12 ファイル(testssl.p12)が組み込まれています。このファイルをフラッシュにインストールして、テストおよび概念の実証を実行することができます。PKCS12 ファイルをインストールしたあと、トラストポイントにインポートし、テスト用に設定した WebVPN ゲートウェイに割り当てます。
(注) CRL サーバにアクセスできない、または CRL ダウンロード パスが存在しないことが原因で CRL をダウンロードできない場合、証明書のインポートに失敗することがあります。インポート処理に関連するすべてのトランスポイントで、CRL をダウンロードできることを確認してください。CRL パスが存在しない場合、または CRL サーバにアクセスできない場合には、インポート処理に関連するすべてのトラストポイントに、 revocation-check none コマンドを入力する必要があります。すべての証明書の情報を表示し、認証局の証明書の表示から関連トラストポイントのリストを取得するには、show crypto pki certificates コマンドを入力します。これらのすべてのトランスポイントに、revocation-check none コマンドを入力します。
たとえば、3 レベルの認証局階層(ルート CA、下位 CA1、下位 CA2)で、下位 CA1 の証明書をインポートする場合、ルート CA に関連するすべてのトラストポイントに、 revocation-check none コマンドを入力します。同様に、下位 CA2 の証明書をインポートする場合には、ルート CA および下位 CA1 に関連するすべてのトラストポイントに、revocation-check none コマンドを入力します。
証明書を正常にインポートしたあと、トラストポイントの CRL オプションを元に戻すことができます。
外部 PKI システムを使用して PKCS12 ファイルを生成し、このファイルを WebVPN サービス モジュール にインポートできます。
(注) PKCS12 ファイルを作成する場合には、サーバ証明書からルート証明書までの完全な証明書チェーン、公開鍵、および秘密鍵を含めます。また、WebVPN サービス モジュール から PKCS12 ファイルを生成し、エクスポートすることもできます。
(注) SSH を使用する場合には、PKCS12 ファイルをインポートまたはエクスポートするときに、Secure File Transfer(SCP)を使用することを推奨します。SCP は、ホストを認証し、転送セッションを暗号化します。
PKCS12 ファイルをインポートまたはエクスポートするには、次の作業を行います。
|
|
---|---|
webvpn(config)# crypto pki { import | export } trustpoint_label pkcs12 { scp: | ftp: | nvram: | rcp: | tftp: } [ pkcs12_filename19 ] pass_phrase20 |
PKCS12 ファイルをインポートまたはエクスポートします。 (注) PKCS12 ファイルをインポートする前に、トラストポイントを設定する必要はありません。PKCS12 ファイルから鍵および証明書をインポートすると、トラストポイントが存在しなければ自動的に作成されます。 |
19.pkcs12_filename に値を指定しないと、デフォルトのファイル名を受け入れる(デフォルトのファイル名は、trustpoint_label です)、あるいはファイル名を入力するためのプロンプトが表示されます。ftp: または tftp: には、pkcs12_filename のフルパス名を指定します。 |
次に、SCP を使用して PKCS12 ファイルをインポートする例を示します。
次に、SCP を使用して PKCS12 ファイルをエクスポートする例を示します。
次に、FTP を使用して PKCS12 ファイルをインポートする例を示します。
次に、FTP を使用して PKCS12 ファイルをエクスポートする例を示します。
PKCS12 ファイルをインポートしたあと、証明書およびトラストポイントの情報を確認するには、「証明書およびトラストポイントの確認」 を参照してください。
(注) crypto pki import pem コマンドは、秘密鍵(.prv)、サーバの証明書(.crt)、および発行認証局の証明書(.ca)だけをインポートします。証明書チェーンに複数レベルの認証局が含まれている場合には、このコマンドを入力する前に、認証のためにルート認証局および下位認証局の証明書をインポートする必要があります。ルート認証局および下位認証局の証明書をインポートするには、カットアンドペーストまたは TFTP を使用します。
(注) インポートした鍵ペアをエクスポートすることはできません。
(注) SSH を使用する場合には、PEM ファイルをインポートまたはエクスポートするときに、SCP を使用することを推奨します。SCP は、ホストを認証し、転送セッションを暗号化します。
PEM ファイルをインポートまたはエクスポートするには、次の作業を行います。
|
|
---|---|
webvpn(config)# crypto pki import trustpoint_label pem [ exportable ] { terminal | url { scp: | ftp: | nvram: | rcp: | tftp: } | usage-keys } pass_phrase21 , 22 |
(注) PEM ファイルをインポートする前に、トラストポイントを設定する必要はありません。PEM ファイルから鍵および証明書をインポートすると、トラストポイントが存在しなければ自動的に作成されます。 |
webvpn(config)# crypto pki export trustpoint_label pem { terminal | url { scp: | ftp: | nvram: | rcp: | tftp: } [ des | 3des ] pass_phrase1 , 2 |
(注) 鍵、サーバの証明書、およびサーバ証明書の発行認証局だけがエクスポートされます。上位のすべての認証局は、カットアンドペーストまたは TFTP を使用してエクスポートする必要があります。 |
21.パス フレーズを正しく入力しないと、エラーになります。 22.パス フレーズは、秘密鍵を含む PEM ファイルを保護します。PEM ファイルは、DES または 3DES により暗号化されます。暗号鍵は、パス フレーズから抽出されます。証明書が含まれている PEM ファイルは暗号化されず、パス フレーズでは保護されません。 |
次に、TFTP を使用して PEM ファイルをインポートする例を示します。
(注) TP5.ca、TP5.prv、および TP5.crt ファイルは、サーバ上に存在している必要があります。
次に、TFTP を使用して PEM ファイルをエクスポートする例を示します。
PEM ファイルをインポートしたあと、証明書およびトラストポイントの情報を確認するには、「証明書およびトラストポイントの確認」 を参照してください。
この例では、ルート認証局の証明書(1 番めの階層)および中間認証局の証明書(2 番めの階層)を、オフライン登録のカットアンドペースト オプションを使用して取得しています。中間認証局の証明書(3 番めの階層)、秘密鍵、およびルータの証明書は、PEM ファイルのインポートによって取得します。
1. カットアンドペーストを使用して、ルート認証局(1 番めの階層)の証明書を取得します。
2. カットアンドペーストを使用して、下位認証局 1 の証明書を取得します。
3. 下位認証局 2 の証明書、RSA 鍵ペア、およびルータの証明書をインポートします。ルータの証明書は、下位認証局 2 によって署名されている必要があります。
証明書およびトラストポイントの情報を確認するには、EXEC モードで、次の作業を行います。
WebVPN サービス モジュール では、複数の証明書で同じ鍵ペアを共有できます。ただし、1 つの鍵ペアに問題が生じた場合、すべての証明書を失効し、交換する必要があるので、推奨する方法ではありません。
WebVPN のゲートウェイは、さまざまな時点で追加および削除されるので、証明書もさまざまな時点で期限切れになります。認証局によっては、更新時に鍵ペアを新しくするよう要求されます。複数の証明書が 1 つの鍵ペアを共有している場合、これらの証明書を同時に更新する必要があります。一般的に、各証明書に独自の鍵ペアを設定するほうが、証明書の管理は容易です。
WebVPN サービス モジュール には、複数の WebVPN ゲートウェイおよび複数の WebVPN サービス モジュール で証明書を共有することに対して、特に制約はありません。同じトラストポイントを複数の WebVPN ゲートウェイに割り当てることができます。
業務上の観点では、認証局により制約が課されることがあります(サーバ ファーム内で同じ証明書を共有できるサーバ数など)。証明書の共有に関して、契約上またはライセンス上の同意が必要になることもあります。業務上の契約に関しては、認証局または法務部門の担当者に問い合わせてください。
実際には、一部の Web ブラウザは、サーバの証明書のサブジェクト名と、URL に表示されるホスト名または IP アドレスを比較します。サブジェクト名がホスト名または IP アドレスと一致しない場合、ユーザに証明書の受け入れを確認するように要求するダイアログボックスが表示されます。このプロセスを回避するには、ホスト名または IP アドレスに基づく証明書の共有を制限してください。
コンフィギュレーションを変更した場合には、必ず作業内容を保存してください。
コンフィギュレーションを NVRAM に保存するには、次の作業を行います。
(注) NVRAM に多数のファイルが保存されている場合、この作業が完了するまでに 2 分程かかることがあります。
NVRAM へのコンフィギュレーションの自動バックアップ機能により、最後に保存したコンフィギュレーションが自動的にバックアップされます。現在の書き込み処理に失敗した場合、自動的に前のコンフィギュレーションが復元されます。
保存したコンフィギュレーションを確認するには、次の作業を行います。
|
|
|
---|---|---|
|
||
|
保存したコンフィギュレーションを消去するには、次のいずれかの作業を行います。
|
|
---|---|
|
|
|
(注) NVRAM に多数のファイルが保存されている場合、この作業が完了するまでに 2 分程かかることがあります。
鍵および証明書の NVRAM への保存処理を中断するイベント(電力障害など)が発生すると、保存処理中の鍵および証明書が失われることがあります。公開鍵および証明書は、認証局から取得できます。ただし、秘密鍵を回復することはできません。
セキュア サーバを使用できる場合には、各トラストポイントを PKCS12 ファイルにエクスポートすることによって、鍵ペアおよび関連する証明書をバックアップしてください。PKCS12 ファイルをインポートすれば、鍵および証明書を回復できます。
鍵および証明書をバックアップする場合には、次のガイドラインに従ってください。
• 各 PKCS12 について、簡単に推測できないパス フレーズを選択し、パス フレーズを十分に保護する必要があります。PKCS12 ファイルは、クリア形式では保存しないでください。
• バックアップ サーバは、セキュアでなければなりません。バックアップ サーバへのアクセスは、許可された人物だけに制限してください。
• (パス フレーズの入力が必要である)PKCS12 ファイルをインポートまたはエクスポートする場合には、モジュールのコンソールに直接接続するか、SSH セッションを使用してください。
特定の状況では、モジュールから RSA 鍵を削除したほうが良い場合があります。たとえば、RSA 鍵に何らかの問題があると考えられ、使用を中止する場合には、その鍵を削除すべきです。
モジュールから RSA 鍵を削除するには、グローバル コンフィギュレーション モードで、次の作業を行います。
|
|
---|---|
|
|
モジュールから RSA 鍵を削除したあと、次の 2 つの作業を行います。
• 認証局の管理者に、認証局でモジュールの証明書を失効するように依頼します。最初に証明書を取得したときに、 crypto pki enroll コマンドで作成したモジュールのチャレンジ パスワードを提供する必要があります。
• コンフィギュレーションから手動でトラストポイントを削除します。「コンフィギュレーションからの証明書の削除」 を参照してください。
鍵および証明書を表示するには、次のいずれかの作業を行います。
WebVPN サービス モジュール には、自身の証明書および認証局の証明書が保存されています。モジュールに保存されている証明書は削除できます。
モジュールのコンフィギュレーションから証明書を削除するには、グローバル コンフィギュレーション モードで、次の作業を行います。
|
|
---|---|
|
( webvpn gateway gateway_name コマンドを入力後に) ssl trustpoint trustpoint_label サブコマンドを入力し、指定した WebVPN ゲートウェイに証明書を割り当てます。ゲートウェイには、 ssl trustpoint サブコマンドを複数回、入力できます。
トラストポイント ラベルを変更すると、ゲートウェイはその移行中に瞬間的にサービスを中断します。既存の接続は、接続が終了またはクリアされるまで、元の証明書を引き続き使用します。新しい接続は、新しいトラストポイントからの証明書を使用し、サービスが再開されます。
ただし、新しいトラストポイントに証明書がない場合、サービスの運用ステータスはダウンのままになります。新しい証明書を使用できるまで、新しい接続は確立されません。 no ssl trustpoint サブコマンドを使用して証明書を削除した場合、既存の接続は、接続が終了またはクリアされるまで、その証明書を引き続き使用します。証明書が古くても、すべての接続が終了またはクリアされるまでは、証明書は WebVPN ゲートウェイから排除されません。
(注) WebVPN ゲートウェイには、生成した自己署名の証明書を割り当てることはできますが、インポートした自己署名の証明書を WebVPN ゲートウェイに割り当てることはできません。インポートした証明書に署名した認証局の鍵ペアは、インポートできないからです。
次に、ゲートウェイにトラストポイントを割り当てる例を示します。
次に、WebVPN ゲートウェイのトラストポイントを変更する例を示します。
(注) 既存の接続は、接続が終了するまで、元の証明書を引き続き使用します。サービスの運用ステータスは、アップからダウンに変わり、再びアップに戻ります。新しい接続は、新しい証明書を使用します。
認証局によっては、証明書を更新するときに新しい鍵ペアの生成を要求しますが、期限切れになった証明書の鍵ペアを使用して証明書を更新できる認証局もあります。WebVPN サービス モジュール は、両方の状況をサポートしています。
SSL サーバの証明書は通常、1 ~ 2 年以内に期限切れになります。証明書のグレースフル ロールオーバーにより、突然のサービス中止を回避できます。
次に、ゲートウェイ gw2 をトラストポイント t2 に割り当てる例を示します。
次に、トラストポイント t2 の鍵ペアを更新し、古い証明書を Cisco IOS データベースから削除する例を示します。ゲートウェイ gw2 のグレースフル ロールオーバーは、自動的に開始されます。
次に、トラストポイント t2 が再登録されるまで、既存の接続および新しい接続で古い証明書を使用する例を示します。トラストポイント t2 が再登録されると、新しい接続は新しい証明書を使用し、既存の接続は、接続が終了するまで古い証明書を引き続き使用します。
次に、すべての既存の接続が終了したあとで、古い証明書が削除された例を示します。
自動登録を設定すると、WebVPN サービス モジュール は、コンフィギュレーションのパラメータに基づいて、認証局に自動的に証明書をリクエストします。
有効期間の特定の割合が経過したあと、証明書が自動的に更新されるように設定できます。たとえば、証明書の有効期間が 300 日で、 renewal_percent を 80 に設定した場合、証明書の有効期間の開始日から 240 日が経過した時点で、証明書は自動的に更新されます。
(注) 自動登録または自動更新を行うには、データベースに認証局の証明書が保管されている必要があります。自動登録を設定する前に、トラストポイントを認証します。また、トラストポイントの SCEP 登録 URL を設定します。
自動登録および自動更新をイネーブルにし、タイマー情報を表示するには、次の作業を行います。
次に、自動登録および自動更新をイネーブルにする例を示します。