OpenVPN&セキュリティ情報
2013-01-23
OpenVPN Connect iOS FAQ (3)
iOS用OpenVPN Connectの起動後に表示される画面からFAQが参照できます。そのFAQの日本語訳を掲載します。HTTPプロキシ経由でOpenVPNに接続するには?
iOSの「設定」で「OpenVPN」を選択すると、プロキシ設定が行えます。iOSキーチェインからクライアント証明書を使用するには?
iOSキーチェインを使って秘密鍵を保管することには、セキュリティ上の利点があります。iOSキーチェインはiOSデバイスに搭載されているハードウェアレベルのキーストアであり、iOSレベルのデバイスパスワードによって鍵を保護し、デバイスがroot化されていても鍵の流出を防ぐことができます。もし既にクライアント証明書と秘密鍵をPKCS#12ファイル(拡張子は .p12 または .pfx)としてまとめてあれば、そのファイルをメールかSafariを使ってiOSキーチェインにインポートできます。
もしPKCS#12ファイルがなければ、opensslコマンドを使って、証明書と秘密鍵のファイルをPKCS#12形式に変換できます(cert、key、caはそれぞれ、クライアント証明書、クライアントの秘密鍵、CAファイルのパスを指します)。
openssl pkcs12 -export -in cert -inkey key -certfile ca -name MyClient -out client.p12これで生成されたclient.p12ファイルを、メールやSafariを使ってインポートします。
PKCS#12ファイルがインポートできたら、.ovpnファイルからcertとkeyの2つのディレクティブを削除し、.ovpnファイルを再度インポートし直します。インポートされると、certおよびkeyディレクティブのないプロファイルは、メインビューにCertificateの行が表示され、iOSキーチェイン内の識別情報(iOSの場合、この識別情報とは、PKCS#12を使ってインポートされた証明書と鍵のペアになります)とリンクすることができるようになります。Certificateをタッチし、MyClient証明書を選択します。これで、通常通り接続できるようになります。
PKCS#12ファイルをインポートしようとしたら、パスワードを聞かれたのはなぜですか?
PKCS#12ファイルを生成するときには、ファイルを暗号化するために「エクスポート用パスワード」が問い合わせられます。iOSキーチェインにPKCS#12ファイルをインポートするときには、このパスワードを入力する必要があります。これは、秘密鍵が途中で盗まれることを防ぐための仕組みです。OpenVPNプロファイルのPKCS#12ファイルが、デスクトップ版OpenVPNと同じように使えないのはなぜですか?
iOS上でのPKCS#12ファイルと、デスクトップ版OpenVPNのPKCS#12ファイルは使い方が少し異なっています。デスクトップ版では、PKCS#12ファイルはOpenVPNプロファイルからバンドル、または参照されて使用されます。一方、iOSでは、PKCS#12の管理機能はiOSキーチェインに組み込まれています。これは、デバイスのハードウェア機能を用いてセキュリティを向上させることができるため、セキュリティの観点から見るとより良いアプローチといえます。しかし、これにより、OpenVPNプロファイルのインポートとは別の手順でiOSキーチェインにPKCS#12ファイルをインポートすることが必要になりました。iOSにおけるPKCS#12ファイルの使い方については、FAQの前述の項目「iOSキーチェインからクライアント証明書を使用するには?」を参照してください。
プロファイルでサーバーのフェイルオーバー用の設定を行う方法は?
接続する複数のOpenVPNサーバーをリストとして指定することができます。接続に失敗すると、OpenVPNは応答するサーバーが見つかるまで、リスト内のサーバーに順番に接続しようとします。たとえば、以下のエントリをプロファイルに指定すると、まずサーバーAにUDP/1194で接続しようとし、その後TCP/443で、それも失敗すればサーバーBで同じように接続を試行します。OpenVPNは接続が成功するか、Preferenceで指定されたタイムアウトに到達するまで接続を試行します。remote server-a.example.tld 1194 udp remote server-a.example.tld 443 tcp remote server-b.example.tld 1194 udp remote server-b.example.tld 443 tcp
Related Posts
Profile
- 山崎 太郎 (Taro Yamazaki)
- プラムシステムズ株式会社所属。 主にVPN(OpenVPN)やセキュリティ関連技術、Webアプリケーションを手がけています。
Page Views
Popular Posts
-
「VPNっていろいろあるけど、OpenVPNのメリットって何?」 という疑問は多くの方が持たれますよね。この点は公式サイトなどにもいろいろ書かれているのですが、実際に使ってきたユーザー側としてメリットと思う部分をまとめてみました。
-
現在ダウンロードできるOpenVPNでは、今まで認証局の構築で使用していたeasy-rsaが含まれなくなっています。 OpenVPN.netのダウンロードページ にも Note that easy-rsa is no longer bundled with OpenVPN...
-
Jan Just Keijser氏の記事「 Optimizing performance on gigabit networks 」については こちら でも概要を取り上げましたが、記事全体にいろいろなヒントが含まれていますので、全文の日本語訳を掲載しています。意訳している部分も...
-
OpenVPNでは、接続してきたクライアントのVPNアドレスは動的に割り振られます(その際に割り振られる際のアドレス範囲はOpenVPNサーバー側設定ファイルに基づきます)。特定のVPNクライアントに特定のVPNアドレスを割り振りたい場合、OpenVPNでは以下の2つの方法で設定...
-
では、いよいよiPhone構成ユーティリティでVoDの設定をしてみましょう。あ、 前の記事 での準備はきちんとやっておいてくださいね!
-
現時点においてはマニュアルやHowToにも記載されていない(ChangeLogにちょっとだけ出てきます)あまり知られていない機能なのですが、「設定ファイルで鍵ファイルや証明書ファイルのパスを記載する」という通常の方法とは別に、「鍵ファイルや証明書ファイル内のデータをそのまま設定フ...
-
前回 は2つのワンタイムパスワードの生成方法について取り上げました。今回はいよいよ実際の生成アルゴリズムを取り上げましょう。TOTPをベースに説明します(ただ、前回も解説したように、基本的なロジックはTOTPとHOTPで同じです)。 参考としてpythonのコードも併記してみま...
-
OpenVPNはLinuxをはじめとした幅広いプラットフォームで動作実績があるのが特徴の一つです。 今回は、最近の電子工作ブームでも話題のシングルボードPC 3機種をOpenVPNサーバーとしてセットアップし、OpenVPNのVPNパフォーマンスを測定してみましょう。 ...
-
前回 はワンタイムパスワードの基本的な仕組みについて説明しました。サーバー側とクライアント側で、それぞれ共通のルールに基づいてパスワードを生成させる必要があることを取り上げましたが、今回は OATH が規定しているその生成ルールについて具体的に説明します。 ワンタ...
-
OpenVPNを使用している方ならよくご存知だと思いますが、通常OpenVPNでは証明書認証を使用します。証明書認証はID/パスワード認証に比較すると安全性が高いとされます(もちろん、秘密鍵の管理方法に大きく依存します)が、証明書認証の概念を理解しにくいユーザーが秘密鍵や証明...
© yamata::memo 2013 . Powered by Bootstrap , WebLyb