Meraki MR と Windows Server Network Policy Server で PEAP を実現

ユーザ名とパスワードを使用して認証する方法を Protected Extensible Authentication Protocol (PEAP) と言います。セキュアな認証が無線のみで必要な場合は Meraki 認証で十分ですが、他のサービスのログインも同一のユーザ ID とパスワードで統一したい場合は Radius サーバを設けた方が便利です。その他にも Radius サーバを導入することによって便利なことがあります。Radius サーバではユーザ毎に所属している部署の定義も可能なので、各部署毎のポリシーを定義することができます。セグメンテーションをしっかりと実施したセキュアなネットワークを実現できます。Radius サーバは様々なベンダーが販売しており、代表的なものだと Cisco の Identity Service Engine (ISE)、Aruba の ClearPass、Windows Server の Network Policy Server (NPS) があります。NPS は ISE や ClearPass と比べると実施できることが少ないのですが、Windows Server を持っているのであれば NPS から始めるのがいいと思います。

設定

NPS を利用するためには、Windows Server で様々な設定が必要です。クリーンインストールされた Windows Server 2016 Datacenter で Radius 認証を使用できる環境を構築したいと思います。具体的に下記を設定する必要があります。

  1. コンピュータ名
  2. 静的な Internet Protocol アドレス
  3. Active Directory ドメインサービス
  4. Active Directory 証明書サービス
  5. NPS

Meraki 側はダッシュボードで Service Set Identifier (SSID) を設定するだけです。

Windows Server

1. コンピュータ名

スタート > システム > コンピューターの基本的な情報の表示 > 設定の変更 > システムのプロパティ > コンピュータ名にて変更のボタンをクリックし、コンピュータ名を変更します。今回は AD という名前にしました。変更後は再起動が必要になります。

windows_server_change_name.gif

2. 静的な Internet Protocol アドレス

AD の設定にて本サーバをドメインコントローラにしますが、そのためには静的な Internet Protocol (IP) アドレスを設定する必要があります。この Windows Server が認識しているネットワークインターフェイスは、スタート > ネットワーク接続で表示されます。ネットワークインターフェイスを右クリックし、プロパティ > インターネットプロトコルバージョン 4 (TCP/IPv4) > プロパティから IP アドレスを変更します。

windows_server_change_ip.gif

3. Active Directory ドメインサービス

Windows Server に新たなサービスを追加するためには、サーバーマネージャーを使用します。スタート > サーバーマネージャー > 役割と機能の追加を選択します。開始する前にインストールの種類サーバーの選択では次へのボタンをクリックし、サーバーの役割では Active Directory ドメインサービスを選択します。その後の機能AD DS でも次へのボタンをクリックし、Active Directory ドメインサービスのインストールを開始します。このステップを終えた後も再起動しなくてはいけません。

windows_server_role_add_ad.gif

再起動後、この Windows Server をドメインコントローラへ昇格させます。サーバーマネージャー > AD DS と遷移し、上に表示されている「AD で Active Directory ドメインサービスの構成が必要です」というメッセージをクリックします。配置構成では新しいフォレストを追加するを選択し、ドメインを入力します。私はドメインとして apicli.com を入力しましたが、ドメインを持っていない場合には xxx.local (xxx は好みで変更) を使用して問題ありません。ドメインコントローラーオプションではパスワードを設定します。他は、次へのボタンをクリックし、インストールします。インストール完了後はサーバが再起動します。

windows_server_ad_domain_controller.gif

これでやっと、PEAP で使用するユーザを作成することができます。サーバーマネージャ > ツール > Active Directory ユーザーとコンピューターでは、先ほど設定したドメインが左のペインに表示されているはずです。ドメイン > Users を右クリックし、新規作成 > ユーザーからウィザードに従って新規ユーザを作成します。今回は Windows Server を用いて PEAP を試したいだけなので Test というユーザを作成しました。次へのボタンをクリックしパスワードなどの情報を入力します。

windows_server_ad_create_user

4. Active Directory 証明書サービス

Extensible Authentication Protocol (EAP) を使用するためには証明書を発行する必要があります。この手順を踏まないと、PEAP 認証時に下記のエラーが出力されます。

イベント ID: 6273
理由コード: 22
理由: サーバーで拡張認証プロトコル (EAP) の種類を処理できないため、クライアントを認証できませんでした。

Active Directory 証明書サービスをインストールするためには、ステップ 3 でインストールした手順と同様に、サーバマネージャー > 役割と機能の追加からサーバーの役割にて Active Directory 証明書サービスを選択し、ウィザードに従って設定を進めます。AD CS > 役割サービスでは EAP Transport Layer Security (EAP-TLS) のために証明書機関証明機関 Web 登録の両方を選択してください。

windows_server_role_ad_cs_add_service.png

インストールが完了すると、サーバマネージャーにて警告が表示されます。警告メッセージから開きウィザードに従い証明書を発行してください。構成する役割サービスの選択では証明機関証明機関 Web 登録を選択します。

windows_server_ad_cs_create_certificate.gif

5. NPS

NPS のインストールもサーバーマネージャーから実施します。特別な設定は必要ないので、ウィザードに従ってインストールを完了させてください。

Radius を使用するためには、どの機器 (MR) から Radius 認証を許可するのかという設定とユーザ認証のポリシーを定義する設定が必要になります。まずは、前者を設定します。サーバーマネージャー > ツール > ネットワークポリシーサーバ の左ペインRADIUS クライアントとサーバー > RADIUS クライアント から Radius で許可するデバイスを登録します。RADIUS クライアントを右クリックし、新規を選択すると機器を登録する窓が開かれます。アドレスには特定の MR が使用している IP アドレスを入力することもできますが、下画像のように MR が所属している VLAN のサブネットを登録すれば、そのサブネットに所属している全 MR を一括登録できます。

windows_server_npas_add_device.png

次に、ユーザを認証させるためのポリシーを作成します。今回は Domain Users 全体のポリシーを作成します。ネットワークポリシーサーバーの左ペイン > ポリシー > ネットワークポリシー を右クリック > 新規からウィザードに従ってポリシーを作成します。

windows_server_npas_add_policy.gif

条件の指定では以下の 3 つを追加します。

  • Windows グループ > グループの追加 > Domain Users
  • 認証の種類 > EAP
  • NAS ポートの種類 > ワイヤレス – IEEE 802.11

認証方法の構成では Microsoft: 保護された EAP (PEAP) を追加します。その他は、次へのボタンをクリックし、ポリシーの作成を完了させます。作成したポリシーの処理順序をデフォルトで登録されているポリシーよりも低く設定する必要があるので、作成したポリシーを右クリックし、上へ移動で処理順序を 1 にします。

windows_server_npas_change_policy_order.png

これで Windows 側の設定は終了です。

Meraki

Meraki 側はダッシュボードにて SSID を作成するのみです。

SSID

ワイヤレス > SSID より Test-EAP という SSID を作成します。

dashboard_create_ssid.png

さらに設定の変更をクリックし、接続条件では WPA2 エンタープライズ: マイRADIUS サーバを選択します。

dashboard_configure_ssid_auth.png

そうすると、下の方に RADIUS サーバという設定が表示されるので、設定したWindows サーバを追加します。シークレットはステップ 5 で設定した共有シークレットを入力します。

dashboard_configure_ssid_radius_server.png

Test というボタンをクリックすることによって、その場で動作確認が可能です。

dashboard_ssid_test_radius.gif

ステップ 3 で作成した Test というユーザ情報を用いて端末を接続させようとすると、接続時に下記のような画面が表示されるかもしれません。これはオレオレ証明書を使用しているので表示されていますが、許可をすると端末が無線に接続されます。

client_trust_certificate.png

逆に AD に登録しなかったユーザ (Test2) で認証させようとすると接続が失敗するので、PEAP が機能していることが分かります。

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.