レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。無効となっていませんか?このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない、検索ができないことがあります。OpenVPNを使った仮想プライベートネットワークを構築してみました。その際に、簡単にOpenVPNの認証の仕組みについて、解説が長くなってしまうので図だけを掲載してました。今回は、その図の簡単な解説を加えておきます。Networkの略で、日本語では仮想プライベートネットワークと訳されています。このVPNは通信相手の固定された専用通信回線(専用線)の代わりに多数の加入者で帯域共用する通信網を利用し、LAN間などを接続する技術もしくは電気通信事業者のサービスである。http://ja.wikipedia.org/wiki/Virtual_Private_Network一口にVPNにもいろいろなVPNがあります。中でもよく用いられるVPNが、インターネットVPNのことを単にVPNと称すことが多くなってきています。インターネットVPNとは、インターネットを経由して構築される仮想的なプライベートネットワーク(VPN)のことです。インターネットはいわゆる公衆網で、それをあたかも自分専用の専用回線であるかのように利用することで、プライベートネットワークの象徴でもある仮想のLAN(ローカルエリアネットワーク)を組むこともできます。このインターネットVPNを実現するにあたっては、かなりセキュリティ面で強固にしておく必要があります。その点で、初期に登場したIPSecを用いたVPN(IPSec-VPN)は、それなりに強固であったものの複雑で扱いづらい、あるいは高価な面がありました。一つは、名前のとおりSSLの暗号化を用いたVPNという広義のSSL-VPNの意味で、解説の必要もないほどのそのままの意味になります。この広義の意味で用いた場合、OpenVPNもSSL-VPNとされています。一つは、サーバーにSSL-VPN装置を設置し、SSL技術による暗号化を行いウェブブラウザを使いhttps経由で通信できるという狭義の意味でのSSL-VPNがあります。この場合、OpenVPNは別物とされています。(いずれもSSLでトンネルをはって通信することには変わらないです。VPNのソフトウェアとしておきます。パケット単位でデータの改竄防止や秘匿機能を提供するプロトコルである。認証の技術を用いてサーバー・クライアント双方の認証手続きをするのが非常に特徴的です。すべてのSSL/TLSハンドシェイクパケットにHMAC署名によるパケットの整合性をチェックです。2重、3重にチェックを行う点で、かなりセキュリティ強化を実現しています。認証の理解は不可欠です。認証について簡単に解説してみます。認証の仕組み認証の手続きで、もっとも簡単な手続きは、ユーザID、パスワードという組み合わせだと思います。これは、非常に手軽なのですが、ユーザID、パスワードさえわかれば、なりすましが簡単にできる点で非常にセキュリティの面で弱いという側面を持ちます。Security)のことを指すことが多いです。呼ばれることも多いです。いずれもプロトコルを指し、いわゆる手順です。ここでは、SSLで通したいと思います。簡単に図にした様子です。これをもとに簡単に解説してみたいと思います。前準備として、認証局からサーバー証明書を取得する必要があります。SSLを行うには、秘密鍵、証明書(公開鍵を含む)の2つが必要になります。証明書(SSLサーバー証明書)は、認証局が発行します。その際に必要なものが、CSRです。CSRは、サーバー簡単に作成することができます。このCSRを作成する際に、秘密鍵も作成されます。ここで作成した秘密鍵は、非常に大事なものですから、厳重に管理しておく必要があります。認証局へ、ここで作成したCSRを送付してサーバー証明書を受理します。一般的には、ショップ系など信用第一のウェブサイトには、パブリック認証局からのサーバー証明書が必要になるでしょう。このサーバー証明書が非常に高価なので、単純にSSL機能を使ってセキュリティアップを図りたい場合などは、プライベート認証局を自らのサーバー起こして利用することが多いです。サーバー証明書が「正しいですよ」と認定してくれる認証機関であり、実際にはウェブ上のサーバーとなります。逆に認証局の機能を自前で行うことをプライベート認証局と言います。Request略で、署名要求(書(ファイル))と呼ばれているもので、実際には電子情報になります。単純に読めるようなテキスト情報ではありませんが、ここには、公開鍵、サーバーに基本情報などが含まれています。その情報から認証局は、CSRに含まている公開鍵に署名したものを埋め込んだサーバー証明書(認証局の情報も含まている)を発行します。証明書を得たら、サーバーに組み込みます。サーバーへの組み込み方は本筋ではないので、ここでの解説は省略します。ここまでWebサーバーの準備ができたら、以降、いよいよSSLの認証手順になります。ユーザがWebサーバーへSSL接続(https)要求がきた場合、Webサーバーはサーバー証明書を返信します。受信したサーバー証明書から、その証明書に署名されている認証局(CA)のルート証明書(CA証明書)を取り出します。そのルート証明書(CA証明書)が、Webブラウザに組み込まれている(信頼できるサイト一覧の中)CA証明書と一致するか確認します。(これで、サーバー証明書の信頼性をチェックします)認証局(CA)のルート証明書からCA公開鍵を取得します。先に取り出した認証局(CA)のルート証明書(CA証明書)から認証局の(CA)公開鍵を取り出します。CA公開鍵とサーバー証明書からサーバー公開鍵を複合化します。先に取り出した認証局(CA)の(CA)公開鍵と受信しているサーバー証明書からサーバー公開鍵を複合化し取り出します。共通鍵作成のためのランダム数値を作成し、サーバー公開鍵によって暗号化しWebサーバーへ通知します。暗号化した通信を行うための一時的な鍵を作成するためのランダムな数値を作成し、Webサーバーへ通知します。この時の通知の際もサーバー公開鍵によって暗号されています。ランダム数値からサーバー用の共通鍵を作成します。先のランダム数値からWebサーバーとの暗号化した通信を行うための一時的な鍵を作成します。ランダム数値からサーバー用の共通鍵を作成します。受信した暗号化されたランダム数値をサーバーの秘密鍵で復元し、ユーザとの暗号化した通信を行うための一時的な鍵を作成します。いわゆるここまでが、SSL認証の手順になります。認証の技術を用いてサーバー・クライアント双方の認証手続きをするのが非常に特徴的です。すべてのSSL/TLSハンドシェイクパケットにHMAC署名によるパケットの整合性をチェックです。2重、3重にチェックを行う点で、かなりセキュリティ強化を実現しています。認証の理解は不可欠です。認証について簡単に解説してみます。認証手続きをサーバー、クライアント双方で行います。すべてのSSL/TLSハンドシェイクパケットにHMAC署名によるパケットの整合性をチェックです。掲載した図は、以下の図です。先のSSL認証手順との違いは、この図からもおわかりのとおり、認証局は自前のもの(プライベート認証局)を使っている点です。プライベート認証局にて、サーバー証明書を発行し、サーバーに組み込んだ状態からの図になっています。ここで必要な各ファイルは、すべて同じサーバーで作成しています。サーバー認証、接続してきたクライアントの認証を行い、お互いに認証できたら、暗号化通信が開始されます。そのハンドシェイクにTLS認証のための署名を行ってさらにセキュアな通信を行います。SSL認証の解説になってしまいました。SSL認証がしっかり理解できていれば、OpenVPNの認証は、それを2重、3重に組み合わせてセキュアにしたものですから、理解できるものと思います。適用となっていませんか?このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない、検索ができないことがあります。無効となっていませんか?このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない、検索ができないことがあります。メールアドレスが公開されることはありません。印の項目は、入力が必要な項目です。(SoftwareDesign別冊)に寄稿しました。「ログを読む技術」の再掲載になります。8月号を見逃された方は、是非、ご一読くださいませ。8月号に寄稿しました。「ログを読む技術」について寄稿しました。興味のある方は、是非、ご一読くださいませ。公式サイト(http://www.genymotion.com/)には、以下のように記述があります。仮想マシンへインストールし、色々と試してきました。