IPSecとIEEE 802.1X

October 09, 2017

ネスぺ試験ネタです。

IPSecとIEEE802.1Xが時々ごっちゃになるから自分なりに整理したいと思います。

まず目的がそれぞれ違います。IPSecは安全な通信を実現する、つまり、盗聴や改ざんなどの攻撃に対する対策を施した安全な通信路を提供するのが目的です。それに対して、IEEE802.1Xは端末の認証を実現する、つまりネットワークに接続してきたPCやスマホなどの端末を認証し、その結果問題ないことがわかればネットワークへの接続を許可するものです。

身近な具体例で言うと、IPSecはインターネットVPN(VPN=Virtual Private Network、つまり仮想的なプライベートネットワーク)で使われます。例えば、NTTのフレッツ光のルータPR-500KIはVPNに対応しており、IPSecのプロトコルによって外出先から安全に自宅のプライベートネットワークに接続することができます。プライベートネットワークは通常、外出先から直接アクセスすることができませんが、IPSecの設定をルータ、およびPC、スマホなどの端末に行えば、外出先からでも安全にアクセスすることが可能になります。例えば、SSHでプライベートサーバにログインしたり、ローカルのgitリポジトリにアクセスしたり、共有フォルダにアクセスすることもできるでしょう。

一方、IEEE802.1Xは、無線LANアクセスポイントで使われています。無線LANアクセスポイント毎に対応する規格が違いますので全部対応しているわけではありませんが、一般的になってきているWPA2という規格に対応しているルータなら、IEEE802.1X認証を使用できます。この技術のおかげで、自分の無線LANネットワークに部外者が侵入することを防いでくれているわけです。ちなみにWPA2は認証方式だけを決める規格ではなく、通信データの暗号化に利用する暗号化アルゴリズムについても規定しています。WPA2の場合は、暗号化アルゴリズムとしてAESを利用します。

どちらもセキュリティに関連しているのでごっちゃになりやすいのですが、このように具体的な適用例と結びつけて覚えておけば、混乱しなくてすみそうです。

後、これらが混乱しやすい間接的な要因として、使われている技術の名前があると思ってます。ESPとEAPです。どっちがどっちの技術かよくわからなくことがあるのですが、ESPはIPsecを構成するプロトコルの一つで、パケットのペイロード部の暗号化を行うためのものです。一方、EAPは認証のための情報をやり取りするためのプロトコルで、IEEE802.1Xの認証で使われるものです。EAPにはいくつか方式があり、PEAP(クライアント認証はユーザ・パスワード、サーバ認証はデジタル証明書で行う)、EAP-TLS(クライアント、サーバどちらもデジタル証明書で行う)などがあります。ESPのSはSecurityのSなので暗号化、EAPのAはAuthenticationのAなので認証、と覚えればいいですかね。