目的
Windows10とWindows Server2016を利用してEAP-TLSによるIEEE802.1x認証をする。
ちなみに無線でなく有線!!
簡単すぎる概要図はこんな感じ。
前提
・AD、ADCS、DHCP構築済み
・対象のWindows ServerにはNPS、AD、DHCP、ADCSを共存
・RADIUSの認証装置とするスイッチの設定は省略
・DHCPリレーとするルータの設定も省略
手順
1.証明書の設定
ユーザがログインした時に自動でユーザ証明書をインストール、更新するように証明書の自動配布設定をする。
■ユーザ証明書のテンプレート作成
mmc(Microsoft 管理コンソール)を起動して、『ファイル』→『スナップインの追加と削除』を選択して、『証明機関』と『証明書テンプレート』を追加する。
証明書テンプレートの中にある『ユーザー』を右クリック→『テンプレートの複製』を選択する。
新しいテンプレートのプロパティ画面が表示されるので以下のとおり設定する。
※変更しなくても問題ない箇所は省略
[要求処理]
デフォルトでは『秘密キーのエクスポートを許可する』が有効になっているが、セキュリティ向上のため無効とする。
[サブジェクト名]
『ActiveDirectoryの情報から構築する』にチェックをいれ、以下の設定にする。
サブジェクト名の形式:完全な識別名
代わりのサブジェクト名に次の情報を含める:ユーザ―プリンシパル名(UPN)
[セキュリティ]
ここでユーザ証明書を自動配布するための権限を追加する。
今回はIEEEというグループに自動配布するため、
グループIEEEを追加し、読み取り・自動登録・登録にチェックを入れる。
次に『証明機関』の証明書テンプレートを開いて、
右クリック→新規作成→発行する証明書テンプレートを選んで、さっき作成したテンプレートを発行する。
これでユーザ証明書の下準備はOK!!
■サーバ証明書のテンプレート作成
サーバ証明書についてもほぼ同様の手順でテンプレートを作成する。
基となるテンプレートは『RASおよびIASサーバー』にして、以下のとおり新規テンプレートを作成する。
※変更しなくても問題ない箇所は省略
[要求処理]
デフォルトでは『秘密キーのエクスポートを許可する』が有効になっているが、セキュリティ向上のため無効とする。
[サブジェクト名]
『ActiveDirectoryの情報から構築する』にチェックをいれ、以下の設定にする。
サブジェクト名の形式:共通
代わりのサブジェクト名に次の情報を含める:DNS名
[セキュリティ]
ここでユーザ証明書を自動配布するための権限を追加する。
NPSをインストールしたサーバに自動配布する設定にしたいため、
『RAS and IAS Servers』グループの権限を読み取り・登録・自動登録に変更する。
ユーザ証明書のときと同じようにして、サーバ証明書のテンプレートも発行する。
2.ADの設定
次にグループポリシーの設定を変更して、作成したユーザ証明書とサーバ証明書のテンプレートを自動配布する様設定を変更する。
ここは簡単に設定対象だけ記載。。。
[ユーザ証明書の自動配布]
『ユーザの構成』→『ポリシー』→『Windowsの設定』→『セキュリティの設定』→『公開キーのポリシー』→『証明書サービスクライアント-自動登録』を有効にする。
[サーバ証明書の自動配布]
『コンピュータの構成』→『ポリシー』→『Windowsの設定』→『セキュリティの設定』→『公開キーのポリシー』から『証明書サービスクライアント-自動登録』を有効にする。
3.NPSの設定
■接続要求ポリシーの作成
まずは、接続要求ポリシーを作成する。
接続要求ポリシーは一旦対象のNPSクライアント(スイッチ:以下SW)からのイーサネット通信は全部条件に入るよう以下のとおり作成。
[接続要求ポリシー]
・概要 - ポリシー名とかを適当につけて、有効にする
・概要 - NASポートの種類:イーサネット
・設定 - デフォルトのまま
これで対象のNPSクライアント(SW)に繋がっているPCは全部NPSの接続要求ポリシーに該当するので、次にネットワークポリシーを作成して接続可否を設定する。
■ネットワークポリシーの作成
今回は特定のADグループの人のみ認証許可する設定とするため、以下のとおりネットワークポリシーを作成する。
[ネットワークポリシー]
・概要 - ポリシー名とかを適当につけて、有効にする
・概要 - NASポートの種類:イーサネット、Windowsグループ:対象のグループ名(ここではIEEEとする)
・制約 - 認証方法(EAPの種類):『Microsoft:スマートカードまたはその他の証明書』を選択する。
・設定 - RADIUS属性(標準):今回はDHCPサーバと連携してIPを払い出すため、以下のattributeを設定
Framed-Protocol:PPP
Service-Type:Framed
Tunnel-Medium-Type:802
Tunnel-Medium-Type:802
Tunnel-Pvt-Group-ID:100※ここはDHCPで払い出すVLANID
Tunnel-Type:Virtual LANs(VLAN)
以上でNPS側の設定はおしまい。
長くなりそうなので端末側の設定等々については次回に続く。。