Comments
Description
Transcript
技術書のダウンロードはこちら - 株式会社AXSEEDアクシード
A nd ro id 端 末 向 け V PN 通 信 環 境 の 構 築 年月日 : 2013/07/16 作成者 : 株式会社 AXSEED 報告書要旨 広く普及している Cisco 社のルーターを用いて、Android 端末から VPN 通信にて Intranet に 安全に接続する方法を確立した。安全性と端末ユーザーの利便性から、証明書認証による VPN 接続を選択した。各人の端末毎に電子証明書を準備し、電子証明書を失効させることで必要に応 じて VPN 接続を拒否することも可能である。 目次 1 要 旨 .............................................................................................................................. 4 1.1 背景 ............................................................................................................................ 4 1.2 目的 ............................................................................................................................ 4 1.3 ターゲット ................................................................................................................. 4 2 利用機器、構成 ............................................................................................................... 5 3 ルーターの設定 ............................................................................................................... 6 3.1 前提となる設定.......................................................................................................... 6 3.1.1 既存の設定の初期化 ........................................................................................... 6 3.1.2 電子証明書の削除............................................................................................... 7 3.1.3 DHCP 設定の削除 ................................................................................................. 7 3.1.4 インターフェースの設定.................................................................................... 8 3.1.5 ASDM 接続許可の設定 .......................................................................................... 8 3.2 ローカル CA の設定 .................................................................................................... 8 3.2.1 FQDN の設定......................................................................................................... 9 3.2.2 時刻の設定.......................................................................................................... 9 3.2.3 ローカル CA の設定 ............................................................................................. 9 3.3 電子証明書の作成 ...................................................................................................... 9 3.3.1 機器証明書の発行 ........................................................................................... 10 3.3.2 端末証明書の発行 ........................................................................................... 10 3.3.3 電子証明書のダウンロード ............................................................................ 10 3.3.4 電子証明書の登録 ............................................................................................11 3.4 VPN の設定 .................................................................................................................11 3.4.1 アドレスプールの作成.....................................................................................11 3.4.2 VPN ウィザードの実行 ...................................................................................... 12 3.4.3 Crypto Maps の設定 .......................................................................................... 15 3.4.4 Connection Profiles の設定 ........................................................................... 16 3.4.5 Connection Profile Maps Policy の設定 ....................................................... 18 3.4.6 Connection Profile Maps Rules の設定 ......................................................... 18 4 Android 端末の設定....................................................................................................... 20 4.1 端末証明書の登録 .................................................................................................. 20 4.2 VPN 設定 .................................................................................................................. 20 5 SPPM デバイス証明書連携 ............................................................................................. 21 5.1 特徴 .......................................................................................................................... 21 5.2 構成 .......................................................................................................................... 21 2 5.3 自前での電子証明書管理との選択 .......................................................................... 22 6 アロバビュー®での導入事例 ......................................................................................... 23 6.1 アロバビュー®とは .................................................................................................. 23 6.2 アロバビュー®サーバー環境の例 .......................................................................... 23 6.3 VPN 環境でのアロバビュー®の使用........................................................................ 24 3 1 要 1.1 旨 背景 Android ベースのスマートフォン、タブレット端末の普及により、フラットレートが適用さ れる一般的なキャリア回線契約を用いながら、安全に社内の業務サーバーにアクセスするた めの VPN 通信のニーズが増えている。Android OS には VPN 機能が実装されているものの、端 末毎の実装レベルや接続できる VPN サーバーが限定されている。実用的かつ一般的に利用可 能な VPN 環境構築方法の確立が望まれている。 1.2 目的 普及している Cisco 社のルーターを用いた Android 端末との VPN 環境構築方法を確立する ことで、Android 端末の企業活用促進の一助とする。 1.3 ターゲット VPN 及び電子証明書について造詣が深ければ深いほど、設定作業をスムーズに進めることが 出来る。本稿はあくまでも Cisco 社のルーターを用いた VPN 環境構築手順を対象に解説を進 めていく。VPN や電子証明書の基本概念や用語等については必要に応じて調査、学習されたい。 また、設定対象の機器や端末のユーザーマニュアル等についても一通り目を通すことを勧め る。 4 2 利用機器、構成 1. ルーター Cisco ASA5505 ファームウェア: asa843-k8 管理ソフト: asdm-647 2. 端末 SAMSUNG ISW11SC (au) Android バージョン: 4.0.4 ベースバンドバージョン: ISW11SCKDMP4 カーネルバージョン: 3.0.15-1211904 ビルド番号: IMM76D.KDMP4 ハードウェアバージョン: J001.10 3. VPN 方式 L2TP/IPsec (公開鍵暗号方式) Android 端末 L2TP/IPsec トンネリング ルーター(ASA5505) Trust Zone 社内業務サーバー 5 3 ルーターの設定 本章では Cisco ASA5505(以下機器)を例にルーターに対して行う電子証明書認証局、VPN 設定及び各種電子証明書の発行の手順について述べる。注記のない各用語、コマンド、設定 項目、コンソール接続その他手順等の詳細が必要な場合、機器の製品ユーザーマニュアル等 を参照されたい。さらに本稿では目的の為の最小限の設定のみを示している為、環境に応じ たその他の設定については別途適切に設定されるものとしている。 3.1 前提となる設定 本項では機器に対してコンソール接続にて設定作業を行う。各コマンドをどのモードで入 力しているかはコマンドプロンプトの記載にて示す。 3.1.1 既存の設定の初期化 既に何らかの設定が為されている機器を利用する場合、予め機器を設定初期化された状態 に戻すことが望ましい。以降は機器が設定初期化された状態にあることを想定して手順を述 べる。必要がなければこの項の手順は省いて構わない。 ciscoasa(config)# configure factory-default WARNING: The boot system configuration will be cleared. (中略) Factory-default configuration is completed ciscoasa(config)# write memory この際、機器内にローカル CA の設定があると、設定を削除する以下の確認メッセージが表 示される。これに対しては“yes”を入力し削除しておく。 Are you sure you want to remove the Local CA Server? [yes/no]: yes INFO: Local CA Server has been removed. この後、再度グローバル設定モードに入ろうとすると、Cisco 社へエラーレポートを送信す る設定について以下の確認メッセージが表示される。これに対しては任意の設定を行う。 6 ***************************** NOTICE ***************************** Help to improve the ASA platform by enabling anonymous reporting, (中略) Would you like to enable anonymous error reporting to help improve the product? [Y]es, [N]o, [A]sk later: 注意すべき点として、機器を設定初期化した場合でもイネーブルパスワードは初期化され ない事が挙げられる。イネーブルパスワードの初期化方法については、機器の製品ユーザー マニュアル等を参照されたい。 3.1.2 電子証明書の削除 機器内に以前に作成した電子証明書がある場合、以降の設定作業に影響を及ぼさないよう 削除する。 ciscoasa(config)# crypto key zeroize rsa WARNING: All RSA keys will be removed. WARNING: All device digital certificates issued using these keys will also be removed. Do you really want to remove these keys? [yes/no]: yes 機器内に作成済みの電子証明書が存在しない場合、以下のエラーメッセージが表示される。 この内容は無視して構わない。 ERROR: Signature RSA Keys not found in configuration. 3.1.3 DHCP 設定の削除 設定初期化された状態の機器のインターフェースの設定を行うには、デフォルトの DHCP 設 定を削除する必要がある。 ciscoasa(config)# no dhcpd address 192.168.1.5-192.168.1.36 inside 7 3.1.4 インターフェースの設定 例として以下のネットワーク構成を想定してのインターフェースの設定手順を示す。 vlan1 a.b.c.d/24 vlan2 E.F.G.H/29 ネットワーク構成に応じて適切に置き換えて設定すること。 ciscoasa(config)# interface Vlan1 ciscoasa(config-if)# ip address a.b.c.d 255.255.255.0 Waiting for the earlier webvpn instance to terminate... Previous instance shut down. Starting a new one. ciscoasa(config-if)# interface Vlan2 ciscoasa(config-if)# ip address E.F.G.H 255.255.255.248 3.1.5 ASDM 接続許可の設定 機器に対し ASDM での設定を行う為の接続許可の設定を行う。また、後の手順で電子証明書 をダウンロードするための WebVPN の設定も併せて行う。例として仮想インターフェース vlan1 と同一のネットワーク a.b.c.0/24 からの接続を許可する設定低順を示す。 ciscoasa(config)# http a.b.c.0 255.255.255.0 inside ciscoasa(config)# webvpn ciscoasa(config-webvpn)# enable inside INFO: WebVPN and DTLS are enabled on 'inside'. 以降、機器に ASDM での設定を行う。ASDM の導入方法、接続方法については製品ユーザーマ ニュアル等を参照されたい。 3.2 ローカル CA の設定 CA とは電子証明書を発行する機関を指す。今回は機器自身を CA とし、機器内部にて電子証 明書の発行を行う。ASDM での各設定の際、特に記載のない場合は都度 Apply ボタン押下にて 内容を決定、Save ボタン押下にて設定を保存するものする。また、入力項目については記載 のないものは空欄、未チェックのまま進める。 8 3.2.1 FQDN の設定 機器には正確な FQDN が設定されている必要がある。 [Configuration > Device Setup > Device Name/Password] にて下記の設定を行う。 3.2.2 Hostname: 任意に設定 Domain Name: 任意に設定 時刻の設定 電子証明書の有効期間の管理や正確なログ内容を出力するため、機器には正確な時刻が設 定されている必要がある。 [Configuration > Device Setup > System Time > Clock] にて下記の設定を行う。 3.2.3 Time Zone: (GMT+09:00) Tokyo Date: 任意に設定 Time: 任意に設定 ローカル CA の設定 [Configuration > Remote Access VPN > Certificate Management > Local Certificate Authority > CA Server] にて下記の設定を行う。 Enable Certificate Authority Server: チェック Passphrase: 任意に設定 Confirm Passphrase: 上項目と同じものを入力 設定項目中、 ”More Option”の中の”Database Storage Location”は各電子証明書を保存 する機器内のディレクトリを指定している。機器内に指定されたディレクトリが存在しない 場合、Apply ボタン押下時にエラーが表示される為、予めディレクトリを作成しておく必要が 有る。ディレクトリの作成方法については機器のユーザーマニュアル等を参照されたい。 3.3 電子証明書の作成 本項では CA である機器自身にて機器に設定する電子証明書(以下機器証明書)及び Android 9 端末に設定する電子証明書(以下端末証明書)を発行する手順について述べる。機器証明書、 端末証明書共に別の CA 等で発行した電子証明書を使用することも可能である。その内容につ いては機器のユーザーマニュアル等を参照されたい。 また、MDM(モバイルデバイス管理)ソフトウェアを用い電子証明書の管理、配布を簡便に 運用する方法もある。これについては後の項にて記す。 3.3.1 機器証明書の発行 [Configuration > Remote Access VPN > Certificate Management > Local Certificate Authority > Manage User Database] にて Add ボタンを押下し下記の設定を行う。 Username: 任意の文字列 Email ID: 空欄のまま Subject (DN String): ディスティングイッシュネームをカンマ区切りで入力 Allow Enrollment: チェック “Subject”の項には Common Name (CN)、Organization Name (O)や Country Name(C)など ディスティングイッシュネームをカンマ区切りで入力する。以下は一例である。 CN=vpntest.axseed.net,O=AXSEED Inc.,C=JP 入力を終えたら Add User ボタン押下にて内容を決定する。また View/Re-generate OTP ボ タン押下にて表示される“One Time Password (OTP)”の文字列は後に機器証明書のダウンロ ードに必要な為、控えておく。 3.3.2 端末証明書の発行 機器証明書と同様の手順にて必要なだけの端末証明書の発行を行う。“ Username”や “Subject”中の Common Name (CN)は VPN 接続時に用いるユーザー名にすると管理が容易であ る。 3.3.3 電子証明書のダウンロード 前項までの操作にて発行した機器証明書及び端末証明書を機器よりダウンロードする。こ れには機器へ wevVPN 機能を用いて https による接続を行う。適切なブラウザーにて下記のよ うな URL へアクセスする。 10 https://機器の IP アドレス/+CSCOCA+/login.html 表示された画面左側の“Username”に機器証明書の作成時に指定したものを、“One-Time Password”に事前に控えておいたワンタイムパスワード(以下 OTP)を入力する。これにより PKCS #12 ファイル形式の電子証明書ファイルがダウンロードされる。端末証明書を複数発行 した場合、それぞれ同様の手順を繰り返しダウンロードする。 3.3.4 電子証明書の登録 前項にてダウンロードした機器証明書及び端末証明書を機器の VPN 機能にて使用できるよ う登録する。 [Configuration > Remote Access VPN > Certificate Management > Identity Certificates] にて Add ボタンを押下し下記の設定を行う。 Trustpoint Name: 任意の文字列 Import the identity certificate from a file: チェック Description Passphrase: 電子証明書の OTP File to Import From: 電子証明書を指定 Add Certificate ボタン押下にて登録を完了する。端末証明書を複数発行した場合、それぞ れ同様の手順を繰り返し、登録を行う。 3.4 3.4.1 VPN の設定 アドレスプールの作成 Android 端末が VPN 接続を行い社内ネットワークへアクセスする為に割り当てられるネット ワークアドレスを設定する。 [Configuration > Remote Access VPN > Network (Client) Access > Address Assignment > Address Pools] にて Add ボタンを押下し下記の設定を行う。 Name: 任意の名前 Starting IP Address: アドレスプールの開始 IP アドレス Ending IP Address: アドレスプールの終了 IP アドレス Subnet Mask: アドレスプールのサブネットマスク 11 OK ボタン押下にて設定を完了する。 3.4.2 VPN ウィザードの実行 本項では ASDM のウィザード機能を用い VPN 設定を行う。ASDM 画面上部メニューバー [Wizard] より [VPN Wizards] > [IPsec (IKEv1) Remote Access VPN Wizard…] を選択する。 ウィザードの各ステップでは下記の通り設定を進める。 Step 1: VPN Tunnel Interface: outside Enable inbound IPsec...: チェック Step 2: VPN Client Type: Microsoft Windows client ... 選択 MS-CHAP-..., MS-CHAP-... チェック 12 Step 3: Authentication Method: Certificate 選択 Certificate Name: 「3.3.4 電子証明書の登録」にて機器証明書を登録した 際に設定した“Trustpoint Name”を指定 Tunnel Group: Tunnel Group Name: 任意の文字列 Step 4: Authenticate using the local user database Step 5: 13 選択 Android 端末が VPN 接続する際に使用するユーザー名及びパスワードを必要な数だ け設定する。VPN ウィザードを完了後も後述の手順で作成が可能である。 Step 6: Pool Name: 「3.4.1 アドレスプールの作成」にて設定した アドレスプールを選択 Step 7: Android 端末が VPN 接続した際に割り当てられる DNS、WINS サーバーやドメイン名等 14 を必要に応じて設定する。 Step 8: Interface: Inside Enable Perfect Forwarding Secrecy: チェック Diffie-Hellman Group: 1 Step 9: VPN ウィザードで設定した内容が表示されるので内容を確認する。Finish ボタン押 下にて設定が完了しウィザードが終了する。 3.4.3 Crypto Maps の設定 [Configuration > Remote Access VPN > Network (Client) Access > Advanced > IPsec > Crypto Maps] にて Add ボタンを押下し Tunnel Policy (Crypto Map) – Basic タブを開き下記の設定 を行う。 Interface: outside Policy Type: dynamic Priority: 1 同じ画面中の Select ボタン押下、さらに Add ボタンを押下し下記の設定を行う。 15 Set Name: TRANS_ESP_3DES_SHA Properties Mode: Transport ESP Encryption: 3DES ESP Authentication: SHA OK ボタン押下にて設定ダイアログを閉じ“TRANS_ESP_3DES_SHA”を選択し Assign ボタンを 押下する。画面が切り替わり OK ボタン押下にて設定が完了する。下図は OK ボタン押下直前 の設定画面の内容である。 3.4.4 Connection Profiles の設定 [Configuration > Remote Access VPN > Network (Client) Access > IPsec(IKEv1) Connection Profiles] にて VPN ウィザード Step 3 で入力した Tunnel Group Name を選択し Edit ボタン を押下、画面左側タブより Advanced > IPsec を選択し、下記の設定を行う。 16 Certificate Settings IKE Peer ID Validation: Do not check IKE Keepalive Disable keepalives 選択 OK ボタン押下にて設定を完了する。下図はその直後の設定画面の内容である。 17 3.4.5 Connection Profile Maps Policy の設定 [Configuration > Remote Access VPN > Network (Client) Access > Advanced > IPsec > Certificate to Connection Profile Maps > Policy] にて下記の設定を行う。 Use the configured rules to match a certificate...: チェック これにより全項目にチェックが入った状態となる。 3.4.6 Connection Profile Maps Rules の設定 Android 端末が VPN 接続を行う際、機器が端末証明書を検証しトンネルグループに関連付け る為の設定を行う。 [Configuration > Remote Access VPN > Network (Client) Access > Advanced > IPsec > Certificate to Connection Profile Maps > Rules] にて“Certificate to Connection Profile Maps”の Add ボタンを押下し下記の設定を行う。 Map: チェックし任意の文字列を入力 New Priority: 10 Mapped to Connection Profile: 「 3.3.4 電子証明書の登録」にて機器証明書を 登録した 際に設定した“Trustpoint Name”を 指定 続いて“Mapping Criteria”の Add ボタンを押下し下記の設定を行う。 Field: Subject 18 Component: Organization (O) Operator: Equals Value: 端末証明書を作成した際に指定したディスティングイッシュ ネーム Organisation (O)と同一の文字列を指定 上記は端末証明書検証設定の一例であり、他のディスティングイッシュネームを指定し関 連付けを行う設定も可能である。 19 4 Android 端末の設定 本項では Android 端末へ端末証明書を登録、VPN 設定を行う。Android 端末の設定メニュー 名等は機種や OS バージョンにより異なる場合がある。本項では例として Samsung 社の GalaxyS (SC-02B) OS 2.2 での設定方法を示す。 4.1 端末証明書の登録 microSD カードに端末証明書ファイルをコピーし端末に挿入する。この際端末証明書は microSD カードのルート直下に配置すること。続いて設定メニューより [位置情報とセキュリ ティ] > [認証情報ストレージ] > [証明書のインストール] をタップする。端末証明書ファ イルが複数存在する場合は証明書の選択を促されるので目的の端末証明書を選択する。端末 証明書の抽出パスワードとして発行時に控えた OTP を入力すること。 4.2 VPN 設定 設定メニューより [無線とネットワーク] > [VPN 設定] をタップする。VPN 設定メニュー が開くので [VPN の追加] > [L2TP/IPSec CRT VPN を追加] をタップし下記の設定を行う。 VPN 名: 任意の名前 VPN サーバーを設定: 機器に設定した接続可能な IP アドレス L2TP セキュリティ保護を有効にします: チェックしない L2TP セキュリティ保護の設定: 入力しない ユーザー証明書の設定: 前項で登録した端末証明書を指定 CA 証明書を設定: 前項で登録した端末証明書を指定 DNS 検索ドメイン: 設定しない 20 5 SPPM デバイス証明書連携 本項では日本ベリサイン株式会社(以下ベリサイン社)による電子証明書の発行と、AXSEED の MDM(モバイルデバイス管理) ソフトウェアである SPPM2.0 との連携機能について紹介する。 本稿ではこれまで機器内に CA を設置し自前で電子証明書を発行、管理する方法を記したが、 大規模なネットワーク利用においては電子証明書の管理、配布における運用上のコストは無 視できないものとなる。 5.1 特徴 SPPM2.0 では SPPM 管理画面にて端末証明書の発行と端末への配布等の設定を簡便に行うこ とが出来る。これはベリサイン社の「ベリサイン デバイス証明書発行サービス」と SPPM と を連携的に運用する事で実現される。SPPM 及び「デバイス証明書連携オプション」は Android のみならず iPhone 端末にも対応している。SPPM 管理画面上で電子証明書の発行、失効と端末 への一括配布が可能で、社内ネットワークとの VPN 接続、Wi-Fi アクセスポイント接続の際の 安全を確保できる。 具体的には以下の様な機能を実現できる。 VPN、Wi-Fi802.1/EAP、端末認証に利用可能なマルチパーパス電子証明書の発行 電子証明書の端末へのリモートインストール 電子証明書の失効設定 SPPM2.0 から離脱する等の端末の異常を検知し電子証明書を自動失効 電子証明書インストール状況の確認 SPPM 管理画面での電子証明書配布、インストールのログ確認 5.2 構成 SPPM デバイス証明書連携の構成図を以下に示す。 21 SPPMサーバ 社内ネットワーク 管理用PC ー ・SPPM管理画面から証明書発行設定 認証局 証明書発行依頼 証明書発行 VPN装置 証明書配布・インストール VPN or Wi-Fiアクセスポイ ント接続時に証明書認証 証明書インストール 済端末 Wi-Fiアクセスポイント 接続NG 証明書未インストー ル端末 22 5.3 自前での電子証明書管理との選択 数百、数千台の端末に対し電子証明書を手動で配布する事は時間的にコスト高となる。ま た運用上のミスも懸念され、端末証明書の管理も容易ではない。本稿で紹介してきた、機器 内に電子証明書認証局を設置し電子証明書の発行を行い個々に端末証明書を配布する手法は、 小規模な運用環境にて検証環境的に実装する場合に取られる選択と言える。 22 6 アロバビュー®での導入事例 本項では株式会社ルクレ(以下ルクレ社)ネットワークカメラ管理ソフトウェア製品であ るアロバビュー®と、本書に記載した手法で構築した VPN 環境を用いた事例を紹介する。 6.1 アロバビュー®とは アロバビュー®は監視カメラ(ネットワークカメラ)を一元的に管理運用するためのソフト ウェアである。 ルクレ社は 2006 年のネットワークカメラ創成期より開発・販売を開始。国の重要施設をは じめ、データセンター、工場などの大規模施設から、オフィス、店舗、集合住宅などの小中 規模施設まで、分野、規模を選ばず数多くの導入実績があり、ネットワークカメラ用ビュー ワ/録画ソフトウェア部門において、5 年連続で国内販売実績 No.1 を獲得している。 (テクノ・ システム・リサーチ社「2012 年版 ネットワークカメラ国内市場のマーケティング分析」調 べ) アロバビュー®では、ネットワークカメラのライブモニタリング、スケジュール録画/イベ ント録画、カメラ操作(パン、チルト、ズーム)などの機能を Windows OS 搭載 PC で利用で きる。最新バージョンでは、Android OS 搭載端末からも同様の機能を利用できるようになっ ており、施設外からのモニタリングなども容易に実現可能となっている。 写真: Android 端末上の Agent アプリ上でのリモートカメラ操作の画面 6.2 アロバビュー®サーバー環境の例 23 アロバビュー®サーバー環境の例として、ルクレ社内検証用環境のサーバー構成を以下に示 す。Hyper-V 3.0 を使用した仮想ホストである Windows サーバー上に 3 台の仮想ゲストが稼働 している。 CPU 仮想ホスト Intel® CPU Xeon® メモリ容量 OS 用途 32GB Windows Server - E5-2650 2012 Standard 2.00GHz (2 プロ セッサ) Recording 4VP(0% 予 約 、 Server 100%限度) Enterprise 4VP(0% 予 約 、 Server 100%限度) Agent Server 4VP(0% 予 約 、 4GB Windows 2008 R2 Standard 4GB 8GB 100%限度) 6.3 録画 Windows 2008 R2 複数サーバー Standard 間の連携 Windows 2008 R2 Android との通 Standard 信を仲介 VPN 環境でのアロバビュー®の使用 ルクレ社では本稿に記載した手法で構築した VPN を用い、以下に示す構成で展示会でのデ モに利用した。 3G回線網 Android 端末 L2TP/IPsec トンネリング ルーター(ASA5505) ルクレ社内 ネットワーク アロバビュー® サーバ群 Android 端末は docomo Optimus it L-05D を使用した。VPN は安定して接続でき、アプリも 問題なく動作。 フレームレートも 1 から 3fps 程度で確認できていたので、 お客様の反応も上々 だった。 24