IPsecとかL2TPって何??

今日は朝から家族旅行で利用するレンタカーを決めるのになかなか時間を割いてしまった。ほんまに世の中わかりにくいこと多いなー。ついていけないわ。。

JAF経由でレンタカー会社からレンタカー借りると割引がついて安くレンタカー借りれることがわかったっていう些細なことを学べた。

ただ、これだけの1時間という労力を割いて、本当に割引額が見合っているのかは頭をよぎったけど考えないことにしたよね。😂

 

さてさて、今日も応用処理技術者試験のお勉強をしていたのですが、ある問題でわけのわからない単語がずらりと出てきたので、自分の勉強の備忘録として本記事を投稿したいと思います。

 

問題は以下

https://www.ap-siken.com/kakomon/29_haru/q45.html

 

いままで、トンネリングとかPPPとか聞いたことはあったけど・・・

難しそうで調べることを避けてきたなあ・・・と思いつつ、とうとう追い詰められた感((((;゚Д゚)))))))

 

というわけで今回「L2TP」、「IPsec」が何かについて学んでいこうと思ふ。

 

の前にPPPやトンネリングとは何?ってところから(ざっくり)。

PPP(Point-to-Point Protocol):電話回線(ISDNダイアルアップ接続)などを用いて2つのノード間を1対1で接続するプロトコル

 いろいろ調べたけど、要するにVPN通信を行う際のL2層におけるセキュアな通信っぽい。イーサネットは複数と通信できるが、通信相手との認証機能なんかがない。

 

トンネリング:ある通信プロトコルの環境の上に、異なる通信プロトコルを透過的に流すこと。

 

ついでに、

 

PPPoE(PPP over Ethernet):

 

以下に参照したサイトを載せる

http://www.nkdesk.com/2012/12/15/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%AE%E5%8B%89%E5%BC%B7%E3%80%80no2/

 

さて、いよいよL2TPIPsecについて。

 

まず、上記2つのプロトコルはインターネットVPNを構築するためのプロトコル。(IP-VPNでは利用されない)違いはこれら2つがどの段階のプロトコルカプセル化しトンネリングしているか。

インターネットVPN:拠点間の通信にインターネットを含む。セキュリティ低い。

IP-VPN:拠点間の通信にはIPSの閉域網を利用。レイヤ3で利用するプロトコルはIPのみ。セキュリティ高い。

参考:https://tech.nikkeibp.co.jp/it/atcl/column/17/011900625/011900003/

 

IPsec・・・ネットワーク層で(IPを)カプセル化するプロトコル

L2TP・・・データリンク層で(PPPを)カプセル化するプロトコル

 

データリンク層カプセル化し、トンネリングするものを「レイヤ2トンネリング」と呼ぶらしい。L2TPの他にも、PPTP、L2Fといったプロトコルが存在し、どれもインターネットVPNをPPPで実現するためのプロトコルである。したがってカプセル化対象はどのプロトコルもPPPである。

これらの違いはカプセル化後のインターネット通信方法とカプセル化に用いるヘッダである。

 

PPTP(Point-to-Point Tunneling Protocol):

・通信方法

 1.TCPによる制御コネクション確立(PAC(PPTP Access Concentrator) => PNS)

 2.GREによるPPTPトンネル確立(カプセル化

 3.PNS(PPTP Network Server)側でPPPを復号化しPPPセッション開始(ユーザ認証)

 4.PNSから目的ノードにパケットが送信される

・PPPをカプセル化するヘッダ

 => |IPヘッダ|GRE|PPP|DATA(|TCP/IPEthernet|etc)|

※ここで重要なことはPPTPのセキュリティには、パケット自体の「暗号化」とPPTPリクエスト(PAC)の「認証」によりセキュリティを担保しているということ。

以下とてもわかりやすい記事があったので参考にさせていただきました。

http://ayufishing.blog.fc2.com/blog-entry-13.html

https://www.infraexpert.com/info/5.4adsl.htm

 

L2F(Layer 2 Forwarding):

・通信方法

 1.UDPによる制御コネクション確立

 2.L2FヘッダによるL2Fトンネル確立(カプセル化

 3,4.PPTPと同様

・PPPをカプセル化するヘッダ

 => |IP|UDP|L2F|PPP|DATA(|TCP/IPEthernet|etc)|

※「暗号化」機能がないため、後述する「IPsec」と併用するのが一般的

 

L2TP(Layer 2 Tunneling Protocol):

・通信方法

 1.UDPによる制御コネクション確立(LAC<任意ポート> => LNS<1701>)

 2.L2TPヘッダによるL2Fトンネル確立(カプセル化

 3,4.PPTPと同様

・PPPをカプセル化するヘッダ

 => |IP|UDPL2TP|PPP|DATA(|TCP/IPEthernet|etc)|

※「暗号化」機能がないため、後述する「IPsec」と併用するのが一般的

 

なるほどなるほど。とりあえずPPPにおける認証が肝となっていて、それをインターネットに適用するために様々な工夫を凝らして生まれたのがこれらレイヤー2トンネリングというわけだ。(あってるかな??(・・?))

 

では続いてIPsecとはいったいなんなのか?なんとなく上記をまとめていたら、「L3でのIPプロトコルをセキュアに通信できるように暗号化できるカプセル化したものかな」っていう推測をしつつ調べてみた。

 

IPsec

・ホストから送信されるあらゆる通信を、IPレベルで暗号化

共通鍵暗号方式

・事前の鍵交換はIKE(Internet Key Exchange)プロトコルで行う

・具体的な暗号化アルゴリズムは特定していない(ただし、最低限通信する双方はDESという暗号化アルゴリズムが利用可能であるのが前提)

 

IPsecとは暗号化通信を実現する複数プロトコルの総称である。

・IKE

・ESP(Encapsulationg Security Payload)

・AH(Authentication Header)

 

まずIPsecで利用する暗号鍵の交換を行う。この時の鍵交換をセキュアに行う鍵交換プロトコルとしてIPsecでは「IKE」 を採用している。

IKEはDiffie-Hellmanという鍵生成手法を用いて、第三者には盗聴できない形で通信相手同士が同じ共通鍵を生成・共有できる仕組みである。

その後IKEを利用し、IPsecでの暗号化方式の決定と共通鍵の受け渡しを行う。

 

そして、その後通信は2種類のモードと2種類の暗号化通信のいずれかの組み合わせにより通信を行う。

 

疲れてきたので、詳しくは以下のサイトを参照していただければ幸いです。(゚∀゚)

https://www.atmarkit.co.jp/ait/articles/0303/21/news004_3.html

https://www.atmarkit.co.jp/ait/articles/0011/27/news001_3.html