#10 「多要素認証でVPNに接続する」をやってみた

特集

デジタルワークプレースの“そこが知りたい”を
エンジニアが試して解説

この特集の記事一覧へ

IIJ ネットワーク本部 エンタープライズサービス部 デジタルワークプレース推進課

川口 拓海

執筆・監修者ページ/掲載記事:1件

IIJでは、デジタルワークプレース実現の様々なベストプラクティスを公開しています。中でもご要望の多いパターンを、エンジニアが実際に試してみる本企画。今回はゼロトラストの課題を解決する「多要素認証でVPNに接続する」方法を取り上げます。IIJのエンジニアに、詳しい解説を聞きました。

目次
  1. VPNのセキュリティ対策
  2. 事前準備
  3. 設定してみる
  4. 動作を確認
  5. まとめと解説

VPNのセキュリティ対策

今回やってみるのは「多要素認証でVPNに接続する」ですね。

はい。テレワークの普及により需要が高まっているVPNですが、セキュリティに不安のあるお客様も少なくありません。そこで今回は、多要素認証によるVPN接続の一例をご紹介します。

従来のパスワード認証だけでは不十分ということでしょうか?

はい。単一要素の認証であるパスワード認証は、認証情報の流出や、ハッキングなどによる不正アクセスのリスクがあります。近年のVPN利用者の増加に伴って、リスクは更に高まっているといえます。多要素認証は単一要素の認証と比較して、リスクを大幅に軽減できます。

セキュリティ対策の重要度が高まっているのですね。

今回は、組織の端末からのみVPN接続を許可したい、というケースを想定します。「組織の端末」「個人の端末」を想定した各端末を用意し、動作の違いを確認します。
多要素認証を利用して「不正アクセスのリスクをどれだけ軽減できるか」「組織の端末からのみVPN接続を許可するには」といった観点で動作を見ていきます。

事前準備

今回は以下のサービスを利用します。

「組織の端末」「個人の端末」で、以下の設定が完了していることが前提です。

設定 組織の端末 個人の端末
Secure Accessクライアントをインストール済み
※フレックスモビリティで利用するクライアントアプリ
サインインオプションから、Windows Hello を設定済み
IIJ IDの認証で利用するデバイス証明書をインストール済み ×

多要素認証を実装するにあたり、XMLベースの標準規格であるSAML認証方式を利用します。
SAML認証を利用するには、通常IdP(※1)とSP(※2)の連携設定が必要です。フレックスモビリティIIJ ID、設定オプションを組み合わせると、連携設定済みの状態で提供されるので、設定の手間が省けます。

(※1)IdP(Identity Provider)とはユーザの認証情報を管理し、認証プロセスを管理するシステムのことです。ここでは、IIJ IDを指します。
(※2)SP(Service Provider)とはユーザがログインするサービスやシステムのことです。ここでは、フレックスモビリティを指します。

設定してみる

事前準備が完了したら、多要素認証でログインするための設定をします。

①認証プロファイル設定(フレックスモビリティ)
②セキュリティキー設定(IIJ ID)
③デバイス証明書設定(IIJ ID)
④ログインポリシー設定(IIJ ID)


【ポイントと注意事項】

フレックスモビリティの認証方式のデフォルトはNTLM認証です。「①認証プロファイル設定」でSAML認証用のプロファイルに変更します。プロファイルは、以下の単位で適用できます。

  • グローバル:すべての端末から、適用したプロファイルの認証を要求
  • デバイスグループ:デバイスグループに所属する端末から、適用したプロファイルの認証を要求
  • デバイス:端末ごとに、適用したプロファイルの認証を要求

今回はグローバルに設定します。図1のように任意の名前をつけたプロファイルを選択します。

図1:認証プロファイル設定

※設定の詳細はフレックスモビリティのマニュアルをご覧ください。

「②セキュリティキー設定」では、FIDO2認証で利用するセキュリティキーを設定します。ユーザによるセキュリティキーの登録可否や、1ユーザが登録可能なセキュリティキーの個数の変更などができます。

図2:セキュリティキー設定

「③デバイス証明書設定」では、デバイス証明書認証で利用する証明書を設定します。デバイス証明書を発行する認証局(CA)の選択、有効期限などが設定できます。

図3:デバイス証明書設定

※設定の詳細はIIJ IDのマニュアルをご覧ください。

最後に「④ログインポリシー設定」をします。VPN接続時に、ユーザに要求する認証方式を指定します。複数の認証方式が選択可能なので、必要な認証方式を組み合わせて多要素認証を実現できます。

図4:選択可能な認証方式

※認証方式によっては、IIJ IDで追加のオプション契約が必要な場合があります。

また、あらかじめ信頼するネットワークを登録することで、アクセス元のアドレスごとに要求する認証方式の条件を設定できます。

<例>
社内ネットワークからのアクセスは、パスワード認証を要求する。
それ以外の外部からのアクセスは、パスワード+メールワンタイムパスワード認証を要求する。

今回は外部からのアクセスを想定するため、信頼するネットワーク外からのアクセスの条件に「第1要素:FIDO2」、「第2要素:デバイス証明書」を設定します。

図5:ログインポリシー設定

動作を確認

「組織の端末」「個人の端末」で、同一ユーザが以下の操作を実行してみます。

①VPNの接続試行
②多要素認証によるサインイン、VPN接続の確立
 第1要素:FIDO2(Windows Hello)
 第2要素:デバイス証明書認証

組織の端末

組織の端末から、多要素認証を利用してVPN接続ができました。

(クリックすると拡大します)

個人の端末

個人の端末では登録したセキュリティキーとマッチしないため、第1要素の生体認証に失敗。VPN接続はできませんでした。

(クリックすると拡大します)

なお、Windows Helloではなく、USBタイプのFIDO認証器を利用したケースでは、個人端末からも第1要素のFIDO2認証に成功します。しかし、第2要素のデバイス証明書認証で失敗するため、個人端末からのVPN接続を防ぐことができます。

このように、厳格な本人認証に加えて「承認された端末からの接続であるか」といった端末認証など、複数の認証方式をうまく活用すると、不正アクセスやなりすましなどのリスクを大幅に軽減できます。

まとめと解説

従来のパスワード認証と比較して、より高いセキュリティを実現できますね。

多要素認証はパスワード+ワンタイムパスワードの組み合わせでも利用できます。ワンタイムパスワードの発行先を会社貸与のスマートフォン宛にすると、パスワード入力者が本人である可能性を引き上げることができます。

ユーザの利便性や管理者の運用面についてはいかがでしょうか。

今回ご紹介した認証情報の入力が不要な認証方式(FIDO2、デバイス証明書認証など)なら、ユーザにとってはパスワードを覚えたり、変更したりする手間がありません。
管理者にとっては、クラウドサービスであるフレックスモビリティIIJ IDを利用することで、設計・構築や運用・障害対応等の負荷を最小限に抑えることができます。一般的には認証連携の設定を含むシステム導入、運用負荷の増加といった点が課題となりますが、それらの課題を一括で解決できます。
従来のVPNではセキュリティ的に不十分と感じていた方は、こちらの組み合わせをご検討いただければと思います。