こんにちは、nakです。
初めてemailのアドレスをもらった (nak@某企業.co.jp) ときの名前を今も愛用しています。この時代のメールはモデム回線で企業から企業へとバケツリレー(uucpってわかる人はおじんだな)していた頃でしたのでメールアドレスを3文字にするって結構誇らしげだった記憶があります(笑)。
さて、今日はVPNのおさらいをしておきます。
VPNとは
VPNは日本語で書くと仮想閉域網です。
すなわち、VPNはインターネットを介してデバイスやエッジコンピュータやアプリケーションサーバがあたかも同一LAN上でつながっているように見せるための仕組みになります。
クラウドを活用するWisbrainにとってはセキュリティの担保が必須になりますのでVPNの機能と役割は理解しておく必要があります。
ひとえにセキュリティとして担保しなければいけないのは
- ① 認証(デバイス認証、サーバ認証)
- ② 機密性(暗号化、改竄防止)
- ③ 可用性(耐障害性、耐DoS攻撃)
- ④ 可監査性(認証履歴、アクセス履歴、障害履歴の検証、インシデント対策)
- ⑤ アクセス制御(ユーザ認証、アプリケーション認証、アクセス制御)
です。VPNそのものがこれらのすべてを担保しているわけではなく、VPNを介して通信するアプリケーションソフトウェア自身もその一端を担わなければ万全ではありません。
Wisbrainのセキュリティ
WisbrainはVPNだけに頼らず、Wisbrain AI, Wisbrain VMP, Wisbrain IoTを構成するソフトウェア自身もセキュリティを意識した実装を心がけています。
企業内で拠点間通信、テレワーク通信、クラウド通信のためにVPNを構築する場合、多くの企業は専用アプライアンスを設置していると思いますが、近年はソフトウェアベースのVPNが主流になりつつあります。
特にVPNの主流のプロトコルであるIPsecやSSL(今やTLSと言わないといけないですが)はオープンソースで構築できるので、その代表的なソフトウェアを紹介しておきます。
- StrongSwan IPsec
- OpenVPN TLS/DTLSライクな独自プロトコル
- SoftEther IPsec, SSL, MS-SSTP, OpenVPN何でも来いのマルチプロトコル
- OpenSSL 暗号アルゴリズム/ハッシュアルゴリズム/TLS/DTLSプロトコルスタック/X.509ライブラリ
StrongSwanは IPsec (IKEv2) の代表的なソフトウェアで広く活用されています。IPsec (IKEv2) の数少ない欠点はプロキシを越えられないことくらいです。
OpenVPNもフリーのVPNソフトウェアとして有名ですが、性能が気になるところです。SoftEtherは言わずと知れた純国産のオープンソースですね。商用版は Packetix として販売されています。
OpenSSLは言わずと知れたライブラリですね。ちょっとでも脆弱性が発覚すると全世界が大騒ぎするほど広く活用されています。WisbrainでもOpenSSLには大変お世話になっています。
ここに挙げたVPNソフトウェアは概ねクラウド側にサーバソフトをインストールし、ユーザ側にクライアントソフトをインストールすることでユーザ端末側からVPN接続を開始する運用になります。例えば、映像録画サーバがカメラから映像データを取得する場合、サーバからカメラに対してTCP接続を開始し、RTSPによって映像データの取得を要求することになりますが、カメラがLTE回線接続で動的IPアドレスであればキャリア内のNAT装置経由での通信になるため、サーバ側からVPN接続を開始することができないため、カメラ側からVPN接続を開始しておかなければいけないという条件があります。
WisbrainのVPNソフトウェアはクライアントとサーバの両方の機能を持っており、NAT配下なのかプロキシ配下なのか、はたまた固定グローバルIPアドレスなのか、もしかして同一AN上なのかを判断して、どっちからVPN接続を開始すれば最適かを決定する機能を持っています(勿論、NATの組み合わせや両方がプロキシ配下などの場合はトラバーサルして迂回中継する仕組みも有しています)。
とはいえ、WisbrainのVPNもまだまだやり残したことがあり、これから若手が頑張ってくれることを期待しています。
NATもプロキシもVPN通信する上ではやっかいな代物(NATの実装ってベンダ依存ですし)ですが、セキュリティを考えるとありがたい機能でもあります。まあ、NAT(正確にはNAPTもしくはIP Masquerade) のおかげでIPv4アドレスが枯渇しても延命できている点は称賛に値しますね。
個人的には過去に長く勤めていた会社がIPv6の開発(KAMEプロジェクト)を推進していたので、IPv6全盛とはならないのはちょっと残念な気分でもあります。
NAT/NAPTについてはまたの機会に説明しましょう。