計画は繊細に行動は大胆に!

Categories

Translate

Page view

2007/01/28

01 OpenVPNの概要


2年ほど前にSoftEtherというソフトウェアが流行りました。L2VPNという柔軟なネットワークを構築でき、また、FireWall越しに接続を出来る機能などが盛りこまれているため、企業などでは利用を禁止するようなところも続出していたようです。また、使いやす過ぎ、導入簡単すぎるため、多くの人によって利用されていたようです。私も個人的に利用しており、IPv6が流れるL2VPNに惹かれていました。


現在はというと、変遷の詳細は私は良く知らないのですが、Packetix VPNという製品に置き換わったようですね。ライセンスはというと、当時は誰でも利用が可能だったものが、費用が発生するようになっています。

少し話しは飛びますが、現在、家庭で以下のようなネットワークが出来上がってしまっています。


ただ、現在少し困っている事があります。何が困るのかというと、色々な機器でWebサービスを通じてアクセスするインタフェースを持っています。たとえば以下の感じです。

  • サーバ1上でWebサービス
  • HDDレコーダ上で遠隔録画
  • NWカメラで動画確認

と、色々とあるのですが、各機器にはDNATを利用して接続を行います。現在はインターネットからTCPの80番ポートにアクセスするとサーバ1に対してアクセスを振るということをしています。言い換えると他の2台の機器には別ポートでアクセスを行う必要があります。たとえば、TCP81番ポートでアクセスを行えば、HDDレコーダのTCPの80番に通信を振るといった感じです。もちろん、これでも各機器にはアクセス出来るのですが、第3者も同様にアクセス出来てしまいます。NWカメラの様子やHDDの録画状況を見られるというのは何とも落ち着きませんよね??(笑)
 そこで、インターネットから家に対してVPNを張り、安全な経路上で機器操作が出来ればと思いVPN構築を思い立ちました。

で、数年前に使い慣れたSoftEtherを・・・と思ったのですが、冒頭で述べた通りです。

さてさて、代用品を探さねば・・・ということで、自分のやりたい事をまとめました。

 

  • 安全なVPNが構築可能
    • Pre-Sharedキー(共通暗号)でも十分だと思ってます
    • CA立ててもいいですが、簡単な物がいいです。
  • サーバはLinuxで動作するもの
  • クライアントは出来るだけ色々なOSに対応していてほしい
    • 家にはWindowsとLinuxとMacOSが存在するので・・・
  • VPN上での想定通信
    • Web
      • レコーダ予約
      • NWカメラ映像見る
    • CIFS(Windowsファイル共有)
      • インターネットがあれば共有可能とする
    • SSH
      • サーバの遠隔保守
  • ネットワーク環境
    • 会社にFWがあるので超えたい(ォィォィ)
      • 色々と不便なので・・・
    • NAT環境下でも利用可能
  • ライセンス
    • お金を払う必要ないものを優先
      • 可能であればGPLベースのものが良い

世間で標準化が進んでいるIPSecやL2TPといった方式が使えれば、そちらでよかったのですが、
FWを超えるという概念はありません。そこで、SoftEtherを調べたときにも多少名前が挙がっていた
Tiny VPNも注目していましたが、このソフトはWIndowsファミリーがサーバになるとのことで、
見送りました。

結局、上記の要件を満たせるのはOpenVPNであるという結論に至りました。
以下はOpenVPNの特徴を簡単にまとめたものです。


■特徴

  • サポートしているプラットホームが非常に豊富です。拡張性も高く、何百、何千と接続を行える設計になっており、導入も簡単に出来るようになっています。DynamicDNSやNAT環境下も配慮されています。
  • 拡張できるVPNフレームワークを提供しているため、サイト特有のカスタマイズが簡単に出来るように設計されています。これは、すでに用途に合わせてカスタマイズしたパッケージをクライアントに提供したり、代わりの認証機能をプラグインモジュールを利用して作成すると言った事があげられます。
  • OpenVPNは管理インタフェースを提供しています。管理インタフェースはGUIやWebベースのものも開発されています。
  • WindowsCryptoAPIを利用することによりスマートカードに入っているプライベートキーと証明書を読む事が出来ます。
  • OpenSSLを利用した十分なセキュリティモデルを利用しています。
  • 移植が簡単に出来ます。現在はLinux, Solaris, OpenBSD, FreeBSD, NetBSD, Mac OS X, and Windows 2000/XP. で動作しています。複雑なカーネル部分ではなく、ユーザスペースプログラムとして実装されているため、移植作業は劇的に単純化されます。
  • 利用方法は非常に簡単で、1行コマンドをたたくだけです。
  • OpenVPNは厳しいテストが行われており、IPレイヤーで5分間の通信断があってもトラフィックは回復するようになっています。
  • 暗号化部分はOpenSSLモジュールで構成され、仮想ネットワークドライバはTun/Tapドライバを利用します。OpenSSLが最新の暗号化に対応した際にもOpenVPNは容易に利用する事が出来ます。
  • Pentium255MHzのRedhat7.2上で動作させ、TLS認証、暗号化をBlowfish,メッセージ認証をSha1環境下でFTPで速度計測を行うと、1.455MByteを達成します。
  • 多くのセキュリティパラメータを変更できます。

■ライセンス
 GPLv2で配布されています。誰でも自由に利用することが認められているので、気軽に試す事が出来ます。

というのが一様の特徴です。とりあえず、OpenVPNを利用したVPNの構築を行い、最終的には会社から自分の家のファイルサーバの文書にアクセスするという事を目的に進めたいと思います。



0 comments:

コメントを投稿