EAP-TLS
EAPの認証方式の1つ。TLSの仕組みを使い、サーバはサーバ証明書で、クライアントはクライアント証明書で、互いに認証し合う。パスワードを使わない。
イマシルちゃんの解説
ふつうのWebサイトのHTTPSでは、「このサイトは本物だよ」ってサーバだけが証明書を見せるよね。
EAP-TLSでは、サーバだけじゃなくて、つなぎに来たパソコンやスマホのほうも、自分の証明書を見せるんだ。
お互いに身分証明書を見せ合うから、とっても安全!
パスワードを入力しないから、パスワードを盗まれる心配もないんだよ。
その代わり、全員分の証明書を用意するのが、ちょっと大変なんだ。
より深い解説
定義
EAP-TLSは、RFC 5216で定められたEAPの認証方式(EAPメソッド)である。EAPのメッセージの中でTLSのハンドシェイクを行い、認証サーバ(RADIUSサーバなど)とクライアント(サプリカント)が、デジタル証明書によって相互認証する。IEEE 802.1Xによる無線LANや有線LANの認証で、最も安全な方式の1つとして使われる。
認証の流れ(IEEE 802.1Xの場合)
- 端末(サプリカント)が、アクセスポイント(オーセンティケータ)に接続し、EAPの認証を開始する
- アクセスポイントは、端末と認証サーバの間のEAPのメッセージを中継する(端末との間はEAPOL、サーバとの間はRADIUS)
- 認証サーバがサーバ証明書を送り、端末は信頼する認証局の証明書で検証する
- 端末がクライアント証明書を送り、その秘密鍵で署名したデータで、証明書の持ち主であることを示す。認証サーバが検証する
- 双方の認証に成功すると、TLSのハンドシェイクで作った情報から、無線LANの暗号化に使う鍵の素(マスターキー)が生成され、アクセスポイントに渡される
長所と短所
| 長所 | 短所 |
|---|---|
| パスワードを使わないので、パスワードの漏えいや推測の攻撃を受けない | すべての端末にクライアント証明書を配布・管理する必要がある |
| サーバも認証するので、偽のアクセスポイントに接続しにくい | 証明書の発行・失効・更新の仕組み(PKI)が必要 |
| 端末ごとの証明書で、端末単位のアクセス制御ができる | 証明書の有効期限切れで、急に接続できなくなることがある |
主なEAPの方式の比較
| 方式 | サーバの認証 | クライアントの認証 | クライアント証明書 |
|---|---|---|---|
| EAP-TLS | サーバ証明書 | クライアント証明書 | 必要 |
| PEAP | サーバ証明書 | ID・パスワード(TLSのトンネルの中) | 不要 |
| EAP-TTLS | サーバ証明書 | ID・パスワードなど(TLSのトンネルの中) | 不要 |
| EAP-FAST | PAC(事前に配布する共有の資格情報)で作るトンネル | ID・パスワードなど | 不要 |
| EAP-MD5 | なし | パスワード(チャレンジレスポンス) | 不要 |
EAP-FASTは、シスコ社が開発した方式で、証明書の代わりに PAC(Protected Access Credential)という資格情報を使ってトンネルを作る。EAP-MD5は、サーバを認証できず、暗号化の鍵も作れないため、無線LANでは使われない。
端末の管理との組み合わせ
EAP-TLSでは、会社が管理する端末にだけクライアント証明書を入れておけば、「会社の端末」以外を社内ネットワークにつながせない、という制御ができる。証明書の配布には、MDM(モバイルデバイス管理)や、ドメインの管理機能を使って自動化するのが一般的である。