OpenVPN&セキュリティ情報
2013-02-19
チュートリアル:iPhoneでOpenVPNを使ってみよう!
OpenVPN Connect for iOSがリリースされましたので、それを記念(?)して、OpenVPNサーバーにiPhoneから接続する手順をまとめてみましょう。まずは準備から。
iOSから接続できるためのOpenVPNサーバーの条件
iOSから接続できるOpenVPNサーバーは以下の条件を満たしている必要があります。この条件さえ満たしていれば、クライアントはPCとiOS(Androidも)が混在していてももちろん問題ありません。- 仮想NICドライバとしてTUNデバイスを使用していること(TAPデバイスは不可)
- 証明書認証を使用していること(ID/パスワード認証等は不可)
OpenVPN設定ファイルの準備
クライアント(iOS)にインポートするOpenVPN設定ファイルを作成します。といってもOpenVPN Connect for iOS独自形式というわけではなく、PCで使用する通常のテキストファイル形式のものと同じです。ただし、CA証明書、クライアントの秘密鍵/証明書は別ファイルにするのではなく、設定ファイルに埋め込んでしまうのが簡単です。この方法についてはこちらの記事でも取り上げましたが、現在は
[INLINE]
を使わずに直接書き込んでしまうことができます。たとえばこんな感じです。<ca> -----BEGIN CERTIFICATE----- MIID0TCCAzqgAwIBAgIJAPqGBlghO9ltMA0GCSqGSIb3DQEBBQUAMIGiMQswCQYD HYhsg2k288s7s6TTSgkSGGKSuaAGlajsbPOisulASuhsla382lLASI8sSSyqMBMG ...(省略)... VQQDEwhjaGFuZ2VtZTERMA8GAREwDwYDVQQLEwhjaGFuZ2VtZTERMA8GA1UEAxMI YkkWu76TYGhSGhOg7ATRSGMVwlHO -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- MIIEMjCCA5ugAwIBAgIBBDANBgkqhkiG9w0BAQUFADCBqTELMAkGA1UEBhMCSlAx ETAPBgNVBAgTCEthbmFnYXdhMREwDwYDVQQHEwhLYXdhc2FraTEaMBgGA1UEChMR ...(省略)... 2MUHlnZv9MosDWNoU7rDnQAIC7lGG9fwzG6qYchJpjzEFk8x3lmvQyVeAI7HK9GZ STWHPtw7RrG7HmevMNdbRcQAPjvfjw== -----END CERTIFICATE----- </cert> <key> -----BEGIN RSA PRIVATE KEY----- MIICXgIBAAKBgQC/hJVwJ/E1Uze70vTIG5z3oeDRpf3zD49VZJkNndd1l/n1r6KN KW/yF7HLSjnIrnTFs9/WzQ8Jq2mPYrdCLMDZ66SMmo+ruBEWiPzmmHb7kWUfLdt5 ...(省略)... vkw6z3xcYuOqym5Rfe4RnQJAJnCI8BPztVDWFYNYHYYGi+bQRBxGeZB63xxZ3LuX XGQRRcMyX3RpBy94JlPU9qo+KfGDDLVWXHdRcoObZSzvFA== -----END RSA PRIVATE KEY----- </key>
OpenVPN設定ファイルはPC上で作成します。この設定ファイルの拡張子は「.ovpn」としておいてください。さて、設定ファイルが準備できたら、いよいよiPhoneにインポートです。
OpenVPN設定ファイルのインポート
OpenVPN設定ファイルをiPhoneにインポートするにはいくつかの方法がありますが、iTunes経由で行うのが手軽だと思います。その手順を解説しましょう。まず、 OpenVPN Connect for iOSをインストールしておいてください。
次に、iTunesを起動し、同期するためにデバイスと接続してください。接続したら、左のツリーからデバイスを選択し、ウィンドウ右側のペインで「App」を選択します。
これでiTunesでの作業は終了です。あとはiPhone本体での操作になります。
iPhone本体でのインポート
iPhoneでOpenVPN Connectを起動します。インポートするプロファイルがない場合は、起動画面はこのようになります。プロファイルをインポートするための方法が説明されています。インポートするプロファイルが存在する場合(前述の手順を行なっている場合)は、インポートするための画面が表示されます。
インポートできるプロファイルが表示されます。今回はテストサーバー(192.168.0.8)に接続するプロファイルを作ってインポートしたので、そのプロファイルが表示されています。
ここで「+」マークをタップすると、プロファイルをインポートできます。インポートはこれだけです。簡単!
いよいよ接続!
インポートが完了すると、OpenVPN Connectの起動画面はこのようになります。「Disconnected」の下にあるスイッチをタップすると、接続が開始されます。
「Connected」と表示されれば、無事に接続完了! iPhoneの通知領域にも「VPN」アイコンが表示されています。接続完了後にスイッチをもう一度タップすれば、接続が切断されます。
なお、「Connecting」「Connected」と表示されている右側の「>」をタップすると、OpenVPNログが表示されます。これはトラブルシュートにも便利ですね。
いかがでしょうか? 設定ファイルさえ作れれば、あとは意外に簡単ですよね? もちろん、iPadでも同様に使えます。
これでOpenVPNの活用の幅が広がりますね!
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の設定をしてみましょう。あ、 前の記事 での準備はきちんとやっておいてくださいね!
-
前回 は2つのワンタイムパスワードの生成方法について取り上げました。今回はいよいよ実際の生成アルゴリズムを取り上げましょう。TOTPをベースに説明します(ただ、前回も解説したように、基本的なロジックはTOTPとHOTPで同じです)。 参考としてpythonのコードも併記してみま...
-
現時点においてはマニュアルやHowToにも記載されていない(ChangeLogにちょっとだけ出てきます)あまり知られていない機能なのですが、「設定ファイルで鍵ファイルや証明書ファイルのパスを記載する」という通常の方法とは別に、「鍵ファイルや証明書ファイル内のデータをそのまま設定フ...
-
OpenVPNはLinuxをはじめとした幅広いプラットフォームで動作実績があるのが特徴の一つです。 今回は、最近の電子工作ブームでも話題のシングルボードPC 3機種をOpenVPNサーバーとしてセットアップし、OpenVPNのVPNパフォーマンスを測定してみましょう。 ...
-
前回 はワンタイムパスワードの基本的な仕組みについて説明しました。サーバー側とクライアント側で、それぞれ共通のルールに基づいてパスワードを生成させる必要があることを取り上げましたが、今回は OATH が規定しているその生成ルールについて具体的に説明します。 ワンタ...
-
OpenVPNを使用している方ならよくご存知だと思いますが、通常OpenVPNでは証明書認証を使用します。証明書認証はID/パスワード認証に比較すると安全性が高いとされます(もちろん、秘密鍵の管理方法に大きく依存します)が、証明書認証の概念を理解しにくいユーザーが秘密鍵や証明...
© yamata::memo 2013 . Powered by Bootstrap , WebLyb