# 運用・管理 / RADIUSサーバー

本製品はRADIUSサーバー機能（ローカルRADIUSサーバー）を内蔵しています。
ローカルRADIUSサーバーを利用すれば、別途RADIUSサーバーを用意することなく、本製品だけで下記機能向けの認証サーバーを構築できます。

- OpenVPNクライアント認証
- ISAKMP認証（マルチポイントGRE）
- 無線クライアント認証（WPAエンタープライズ）
- 無線クライアント認証（WPAエンタープライズ、MAC認証、Web認証）

また、本製品にはローカルCA機能が付属しているため、電子証明書を利用する場合でも別途認証局（CA）を用意する必要がありません。
ここでは、ローカルRADIUSサーバーの設定方法だけを述べます。
ローカルRADIUSサーバーを利用する側の機能については下記のページをご覧ください。

- 「VPN」/「OpenVPN」
- 「VPN」/「マルチポイントVPN」
- 「無線LANコントローラー（AWC対応）」/「概要」

また、ローカルCA機能については「運用・管理」/「ローカルCA」をご覧ください。

## 仕様

ローカルRADIUSサーバーの基本的な仕様を以下に示します。

- 認証方式と対象機能
  次に、ローカルRADIUSサーバーがサポートする認証方式とそれぞれの対象機能を示します。
  - ID/パスワード（プラグイン）
    - OpenVPNクライアント認証
  - EAP-TLS
    - 無線クライアント認証
  - EAP-PEAP
    - 無線クライアント認証
- アカウンティング機能はなし
  ローカルRADIUSサーバーは認証機能だけを提供します（デフォルトのUDPポートは1812）。ログイン、ログオフなどの利用状況を記録するアカウンティング機能はサポートしていません。
- ユーザー登録
  各ユーザーに対しては、ユーザー名、パスワードに加え、各機能で使用する属性を設定することができます（各種属性は「ユーザーグループ」単位で設定）。
  Note

  登録可能なユーザーの最大数については、リリースノートのサポートリミット一覧をご参照ください。

- RADIUSクライアント（NAS）登録
  ローカルRADIUSサーバーにアクセスできるのは、登録したIPアドレスを持ったRADIUSクライアント（NAS = Network Access Server）だけです。また、アクセス時には共有パスワードによる認証も行われます。
  Note

  登録可能なRADIUSクライアント（NAS）の最大数については、リリースノートのサポートリミット一覧をご参照ください。

- RADIUSパケットの検証機能
  ローカルRADIUSサーバー機能では、認証レスポンスの偽造による攻撃を防ぐため、RADIUSパケットの検証機能を実装しています。
  Note

  本製品をRADIUSサーバーとして使用する場合、RADIUSクライアントは Message-Authenticator に対応している製品の使用を推奨します。
  RADIUSパケット検証機能（nas message-authenticator）の検証モードが required の場合、Message-Authenticator を含まない認証方式で認証を行うと、次のようなINFOレベルのログが記録され認証に失敗します。

      radiusd[xxxx]: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      radiusd[xxxx]: BlastRADIUS check: Received packet without Message-Authenticator.
      radiusd[xxxx]: Setting "require_message_authenticator = false" for client xxx.xxx.xxx.xxx
      radiusd[xxxx]: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      radiusd[xxxx]: UPGRADE THE CLIENT AS YOUR NETWORK IS VULNERABLE TO THE BLASTRADIUS ATTACK.
      radiusd[xxxx]: Once the client is upgraded, set "require_message_authenticator = true" for  client xxx.xxx.xxx.xxx

  また、検証モードがデフォルトの auto の場合も、RADIUSクライアントの登録IPアドレス（nas）から最初に受信した Access-Request に Message-Authenticator 属性が含まれていた場合は内部的な検証モードが required に設定されるため、それ以降 Message-Authenticator を含まない認証方式で認証を行うと同様に失敗します。
  Message-Authenticator に対応していない認証方式を使用する場合は、検証モードを optional に設定することで認証が可能となります。
- ローカルCA
  EAP-TLSの認証には認証局（CA）が発行する電子証明書が必要ですが、本製品には独自の証明書を発行するローカルCA機能が付属しているため、別途認証局（CA）を用意する必要がありません。ローカルCAおよびローカルRADIUSサーバーの証明書は自動的に発行されるため、必要な作業はCA証明書を配布してクライアントにインストールすることだけです。
  ローカルCA機能の詳細については「運用・管理」/「ローカルCA」をご覧ください。
  Note

  ローカルCAを再構築した場合は、機器の再起動が必要です。新しいルート証明書は再起動後から有効になります。

## 基本設定

ここではOpenVPNクライアント認証用のローカルRADIUSサーバーの設定と無線クライアント認証用のローカルRADIUSサーバーの設定方法について説明します。

### OpenVPNクライアント認証用のローカルRADIUSサーバーの設定

1. ローカルRADIUSサーバーの設定を開始するには、radius-server localコマンドを実行します。

       awplus(config)# radius-server local
       Created trustpoint "local".
       Generating 2048-bit key for local CA...
       Automatically authenticated trustpoint "local".
       Automatically enrolled the local server to trustpoint "local".
       awplus(config-radsrv)#

   radius-server localコマンドの初回実行時には、ローカルCA（ローカルなルート認証局）の初期設定（自署ルートCA証明書の発行など）やRADIUSサーバーの証明書発行などが自動的に行われ、またローカルホスト（127.0.0.1）をRADIUSクライアント（NAS）として自動登録します。具体的には、下記のコマンドが自動的に実行されます。

       !
       ! 以下はradius-server localの初回実行時に自動実行される内容です。
       !
       awplus(config)# crypto pki trustpoint local
       awplus(config)# end
       awplus# crypto pki enroll local
       awplus# configure terminal
       awplus(config)# radius-server local
       awplus(config-radsrv)# nas 127.0.0.1 key awplus-local-radius-server

2. ユーザーを登録します。
   OpenVPNクライアントにIPアドレスを割り当てる場合は、ユーザーごとに各種属性値を設定する必要があります。これはユーザーグループを使用して次のようにします。
   - groupコマンド（RADIUSサーバーモード）を使って、ユーザーグループを作成します。
     IPアドレスはクライアントごとに異なるため、通常はユーザーの数だけユーザーグループを作成することになります。
     ここでは「userA」、「userB」、「userC」の各ユーザーに対応する同名のユーザーグループを作成し、attributeコマンドで必要な属性値を指定しています。各属性値については、attributeコマンドのページをご参照ください。

         awplus(config-radsrv)# group userA
         awplus(config-radsrv-group)# attribute Framed-IP-Address 192.168.20.101
         awplus(config-radsrv-group)# attribute Framed-IP-Netmask 255.255.255.0
         awplus(config-radsrv-group)# attribute Framed-Route "192.168.10.0/24 192.168.20.1"
         awplus(config-radsrv-group)# attribute Framed-Route "192.168.30.0/24 192.168.20.1"
         awplus(config-radsrv-group)# exit
         awplus(config-radsrv)# group userB
         awplus(config-radsrv-group)# attribute Framed-IP-Address 192.168.20.102
         awplus(config-radsrv-group)# attribute Framed-IP-Netmask 255.255.255.0
         awplus(config-radsrv-group)# attribute Framed-Route "192.168.10.0/24 192.168.20.1"
         awplus(config-radsrv-group)# attribute Framed-Route "192.168.30.0/24 192.168.20.1"
         awplus(config-radsrv-group)# exit
         awplus(config-radsrv)# group userC
         awplus(config-radsrv-group)# attribute Framed-IP-Address 192.168.20.103
         awplus(config-radsrv-group)# attribute Framed-IP-Netmask 255.255.255.0
         awplus(config-radsrv-group)# attribute Framed-Route "192.168.10.0/24 192.168.20.1"
         awplus(config-radsrv-group)# attribute Framed-Route "192.168.30.0/24 192.168.20.1"
         awplus(config-radsrv-group)# exit

     Note

     Framed-Route属性は複数設定することができます。

   - userコマンドでユーザー「userA」、「userB」、「userC」を作成します。
     そのとき、groupパラメーターで属性を割り当てるためのユーザーグループ名も指定します。

         awplus(config-radsrv)# user userA password passwdA group userA
         awplus(config-radsrv)# user userB password passwdB group userB
         awplus(config-radsrv)# user userC password passwdC group userC

3. 他の機器にも本製品のRADIUSサーバーを利用させたいときは、それらの機器をRADIUSクライアント（NAS）として登録する必要があります。該当機器のIPアドレス（RADIUSパケットの始点IPアドレス）と、アクセス時の共有パスワードをnasコマンドで設定してください。ここでは、172.16.10.2と172.16.10.3を持つ機器をRADIUSクライアントとして登録しています。

       awplus(config-radsrv)# nas 172.16.10.2 key naspas2
       awplus(config-radsrv)# nas 172.16.10.3 key naspas3

4. 各種登録が終わったら、server enableコマンドでRADIUSサーバーを有効にします。

       awplus(config-radsrv)# server enable

基本設定は以上です。

### 無線クライアント認証用のローカルRADIUSサーバーの設定

1. ローカルRADIUSサーバーの設定を開始するには、radius-server localコマンドを実行します。

       awplus(config)# radius-server local
       Created trustpoint "local".
       Generating 2048-bit key for local CA...
       Automatically authenticated trustpoint "local".
       Automatically enrolled the local server to trustpoint "local".
       awplus(config-radsrv)#

   radius-server localコマンドの初回実行時には、ローカルCA（ローカルなルート認証局）の初期設定（自署ルートCA証明書の発行など）やRADIUSサーバーの証明書発行などが自動的に行われ、またローカルホスト（127.0.0.1）をRADIUSクライアント（NAS）として自動登録します。具体的には、下記のコマンドが自動的に実行されます。

       !
       ! 以下はradius-server localの初回実行時に自動実行される内容です。
       !
       awplus(config)# crypto pki trustpoint local
       awplus(config)# end
       awplus# crypto pki enroll local
       awplus# configure terminal
       awplus(config)# radius-server local
       awplus(config-radsrv)# nas 127.0.0.1 key awplus-local-radius-server

2. ユーザーを登録します。
   - 各ユーザーの認証結果だけを返したい場合は、userコマンドを使ってユーザー名とパスワードを指定します。ここでは、user1、user2、user3の3ユーザーを作成しています。

         awplus(config-radsrv)# user user1 password passwd1
         awplus(config-radsrv)# user user2 password passwd2
         awplus(config-radsrv)# user user3 password passwd3

   - 認証結果だけでなく、ダイナミックVLAN用の情報も返したい場合は、ユーザーごとに所属VAPを指定する必要があります。これはユーザーグループを使用して次のようにします。
     - groupコマンド（RADIUSサーバーモード）を使って、ユーザーグループvlan10usersとvlan20usersを作成します。RADIUSサーバー・ユーザーグループモードでは、vlanコマンドを使って、該当グループに割り当てるVLAN IDまたはVLAN名を指定します。

           awplus(config-radsrv)# group vlan10users
           awplus(config-radsrv-group)# vlan 10
           awplus(config-radsrv-group)# exit
           awplus(config-radsrv)# group vlan20users
           awplus(config-radsrv-group)# vlan 20
           awplus(config-radsrv-group)# exit

     - ユーザーuser11、user12をユーザーグループvlan10usersに、ユーザーuser21、user22をユーザーグループvlan20usersに所属させます。

           awplus(config-radsrv)# user user11 password passwd11 group vlan10users
           awplus(config-radsrv)# user user12 password passwd12 group vlan10users
           awplus(config-radsrv)# user user21 password passwd21 group vlan20users
           awplus(config-radsrv)# user user22 password passwd22 group vlan20users

3. 他の機器にも本製品のRADIUSサーバーを利用させたいときは、それらの機器をRADIUSクライアント（NAS）として登録する必要があります。該当機器のIPアドレス（RADIUSパケットの始点IPアドレス）と、アクセス時の共有パスワードをnasコマンドで設定してください。ここでは、172.16.10.2と172.16.10.3を持つ機器をRADIUSクライアントとして登録しています。

       awplus(config-radsrv)# nas 172.16.10.2 key naspas2
       awplus(config-radsrv)# nas 172.16.10.3 key naspas3

4. 各種登録が終わったら、server enableコマンドでRADIUSサーバーを有効にします。

       awplus(config-radsrv)# server enable

基本設定は以上です。
ローカルRADIUSサーバーの初期状態では、UDPポート1812番で認証サービスを提供します。認証用のポートを変更するには、server auth-portコマンドを使います。

    awplus(config-radsrv)# server auth-port 11812

ローカルRADIUSサーバーからユーザーを削除することなく、特定のユーザーを一時的に無効化するには、user rejectコマンドを使用します。
なお、userコマンドのrejectオプションを使えば、最初から無効状態でユーザーを登録することもできます。

    awplus(config-radsrv)# user user1 reject

無効状態のユーザーはつねに認証が拒否されます。再度有効化するにはuser rejectコマンドをno形式で実行してください。

    awplus(config-radsrv)# no user user1 reject

## 各種情報の確認

ローカルRADIUSサーバーの状態と統計情報を確認するには、show radius local-server statisticsコマンドを使います。

    awplus# show radius local-server statistics

ローカルRADIUSサーバーに登録してあるユーザーの情報は、show radius local-server userコマンドで確認します。

    awplus# show radius local-server user

ローカルRADIUSサーバーに登録してあるユーザーグループの情報は、show radius local-server groupコマンドで確認します。

    awplus# show radius local-server group

ローカルRADIUSサーバーに登録してあるRADIUSクライアント（NAS）の情報は、show radius local-server nasコマンドで確認します。

    awplus# show radius local-server nas

## ローカルRADIUSサーバーの利用

自装置のローカルRADIUSサーバーを使用するには、RADIUSクライアントの設定において、IPアドレス「127.0.0.1」、共有パスワード「awplus-local-radius-server」を指定します。たとえば、OpenVPNにおいて、ローカルRADIUSサーバーを使って認証を行う場合は、次のようにします。

    awplus(config)# radius-server host 127.0.0.1 key awplus-local-radius-server
    awplus(config)# aaa authentication openvpn default group radius

Note

インテリジェント・エッジ・セキュリティー（IES）利用時は、自装置のRADIUSサーバーを利用する場合であってもループバックアドレス（127.0.0.1）以外のIPアドレスを指定してください。
たとえば、ローカルRADIUSサーバーが動作している機器にIPアドレス「192.168.10.1」が設定されている場合、ローカルRADIUSサーバー、RADIUSクライアントをそれぞれ次のように設定します。
ローカルRADIUSサーバー
デフォルトのRADIUSクライアント（NAS）「127.0.0.1」を削除し、代わりに前記のIPアドレスをNASとして新規登録します（nasコマンド）。共有パスワードは適宜設定してください。

    awplus(config)# radius-server local
    awplus(config-radsrv)# no nas 127.0.0.1
    awplus(config-radsrv)# nas 192.168.10.1 key awplus-local-radius-server

RADIUSクライアント
radius-server hostコマンドでRADIUSサーバーを指定する際、前記のIPアドレスと共有パスワードを指定します。

    awplus(config)# radius-server host 192.168.10.1 key awplus-local-radius-server

他の機器から本製品のローカルRADIUSサーバーを使用する場合は、該当機器のRADIUSクライアントに対して下記の設定をしてください。なお、他の機器からアクセスさせる場合は、nasコマンドを使って、該当機器のIPアドレスと共有パスワードをあらかじめ登録しておく必要があります。

表 1
RADIUSサーバーのIPアドレス | 該当機器から到達可能な本製品のIPアドレス
RADIUSサーバーの共有パスワード | nasコマンドのkeyパラメーターで設定した文字列
認証用ポート番号 | server auth-portコマンドで設定した値。未設定時は初期値の1812
アカウンティング用ポート番号 | 使用しない（ローカルRADIUSサーバーはアカウンティング機能をサポートしていないため）