今回は、リモートアクセスとActive Directoryに関連する話として、着信許可設定とRADIUSサーバ機能の利用について、かいつまんで解説しよう。

リモートアクセスに用いる手段としては、以下のものが考えられる。

  1. アナログモデムまたはISDNを用いるダイヤルアップ接続
  2. PPTP(Point-to-Point Tunneling Protocol)を用いるインターネットVPN
  3. IPsec(IP security)を用いるインターネットVPN
  4. SSTP(Secure Socket Tunneling Protocol)を用いるインターネットVPN

「1.」は、速度性能を考慮すると、もはや現実的な選択肢とはいいがたいので除外する。また、「3.」は拠点間接続には良いが、クライアント側のIPアドレスを固定できないリモートアクセスVPNには、いまひとつ向いていない。

そうした事情を考慮すると、現実的な選択肢は対応OSが多い上に導入が容易な「2.」か、NAT/IPマスカレードによって通信が阻害されない「4.」ということになる。このうち「2.」のPPTPではユーザー認証のためにユーザー名とパスワードを指定する必要があり、そこでActive Directoryのユーザーアカウントが関わってくる。ちなみに「4.」のSSTPでは、SSL(Secure Sockey Layer)を使用するために、クライアントPCにデジタル証明書を配布する手間がかかる。

ユーザーに対する着信の許可

PPTPのユーザー認証には、ローカルアカウントもActive Directoryの管理下にあるアカウントも使用できる。しかし、せっかくActive Directoryを導入しているのであれば、それを使うのが自然だ。リモートアクセス用に別途、ユーザーアカウントを作成・管理するのでは、何のためのActive Directoryか分からなくなる。

いずれにしても、ユーザーアカウントのプロパティとして着信許可を行うかどうかという項目があり、セキュリティを重視して、既定値では着信許可を無効にしている。そこで、ユーザーアカウントのプロパティ画面で[ダイヤルイン]タブに移動して、[リモートアクセス許可]内の[アクセスを許可]を選択すればよい。これで、当該ユーザーアカウントを使った着信受付が可能になる。

ユーザーアカウントのプロパティ画面で[ダイヤルイン]タブに移動して、[リモートアクセス許可]を[アクセスを許可]に設定する

しかし、リモートアクセスを利用するユーザーが増えてくると、いちいち着信許可設定を変更するのは煩雑だ。その場合、[ルーティングとリモートアクセス]管理ツールでリモートアクセスポリシーの設定を行い、指定した条件に合致するユーザーアカウントに対して一括して、着信を許可する方法を用いるのが良いだろう。

IAS/NPSとActive Directory

Active Directoryのユーザーアカウントを使ってリモートアクセスを行う場合、着信を受け付けるコンピュータ(アクセスサーバ)はドメインのユーザーアカウント情報にアクセスできなければならない。しかし、だからといってドメインコントローラをインターネットから直接アクセスできる場所に配置するのは、セキュリティを考慮すると不安がある。

そこで登場するのがRADIUS(Remote Authentication Dial In User Service)だ。RADIUSは、インターネットとLANの境界に配置したアクセスサーバと、LAN内部に配置したドメインコントローラの間で、認証に必要な情報を中継する機能を提供する。つまり、アクセスサーバが着信を受け付けると、その際に使用するユーザーアカウントとパスワードの情報を、アクセスサーバとドメインコントローラの間で行き来させることができるため、アクセスサーバをドメインコントローラにする必要がなくなる。

このRADIUSを使って認証を行う機能を、Windows Server 2003ではインターネット認証サービス(IAS : Internet Authentication Service)、Windows Server 2008ではNPS(Network Policy Server)と呼んでいる。名称こそ異なるものの、RADIUSを使用する点は共通しているので、本稿の話に限っていえば、同じようなものだと考えてよい。

この、IAS/NPSを導入してWindowsサーバをRADIUSサーバとして動作させるには、以下の手順で作業を行う。

  1. ドメインコントローラになっているWindowsサーバに、IAS/NPSを組み込んで、RADIUSを動作させる(このサーバのことをIASサーバ、あるいはNPSサーバと呼ぶ)
  2. IAS/NPSをActive Directoryに登録する
  3. IAS/NPSに、着信受け付けに使用するアクセスサーバ(NASクライアント)を登録する
  4. IAS/NPSで、リモートアクセスポリシーの設定を行う
  5. アクセスサーバで、認証に使用するサーバとしてIAS/NPSサーバを指定する
  6. Active Directoryのビルトイングループ[RAS and IAS Servers]に、IASサーバになっているコンピュータを登録する(これで、登録したコンピュータはドメインのユーザー情報にアクセスできるようになる)

IAS/NPSを導入する方法は、Windowsサーバのバージョンによって異なる。

  • Windows Server 2003 : [コントロールパネル]の[プログラムの追加と削除]を使用して、[インターネット認証サービス]を追加する
  • Windows Server 2008 : [サーバーマネージャ]で、役割[ネットワークポリシーとアクセスサービス]以下の役割サービスとして[ネットワークポリシーサーバー]を追加する

こうして登録したIAS/NPSをActive Directoryに登録する作業も、Windowsサーバのバージョンによって異なる。

  • Windows Server 2003 : [インターネット認証サービス]管理ツールを起動して、[操作]メニューの[Active Directory にサーバーを登録]を選択する
  • Windows Server 2008 : [ネットワークポリシーとアクセスサービス]管理ツールで、[NPS(ローカル)]を選択して、[操作]-[Active Directoryにサーバーを登録]、あるいは右クリックして[Active Directoryにサーバーを登録]を選択する

Windows Server 2003では、[インターネット認証サービス]管理ツールで[操作]-[Active Directoryにサーバーを登録]を選択すると、IASサーバをActive Directoryに登録できる

Windows Server 2008では、[ネットワークポリシーとアクセスサービス]管理ツールで、[NPS(ローカル)]を選択して、同様の操作を行う

なお、RADIUSサーバを使用する場合でも、認証に使用するユーザーアカウントに対して着信を許可する必要がある。ユーザーアカウントのプロパティ画面で個別に着信を許可する方法と、リモートアクセスポリシーを使って一括許可する方法を選択できる点は、RADIUSを使用しない場合と変わらない。

ちなみに、RADIUSサーバはリモートアクセスの認証以外にも、IEEE802.1Xを使った端末認証や、IEEE802.11iなどの無線LANセキュリティ規格でも使用している。