古河電工ネットワーク機器の総合ブランド ファイテルネット
古河電工
FITELnetトップ製品ラインナップイベント&セミナーセールス&サポート
Routing to the Future FITELnet
お問い合わせはこちら
 
設定例
動的MACアドレスフィルタリング(MACアドレス認証)機能・基本設定例
概要
RADIUSサーバを本店側に設置して、本店・拠点それぞれのLANに接続する端末に対してMACアドレス認証を行う場合の設定例です。

【ポイントとなる設定】
aaa group server radius (基本設定モード)
  RADIUSサーバグループ設定モードに移行し、RADIUS問い合わせに関する各種設定を行います。
aaa authentication macfilter default group (インタフェース設定モード)
  この設定を追加したインタフェースでMACアドレス認証を有効化します。

【補足・注意点】
RADIUSサーバと直接接続されていない拠点側装置では、Loopbackインタフェースを設定して、これに割り当てたIPアドレスを送信元アドレスに指定してRADIUS問い合わせを行うことを推奨します。
(送信元アドレスで指定したインタフェースがダウン状態になると、RADIUSサーバグループ設定が無効化されてしまうため、Loopbackのように常時アップのインタフェースを使用してください)

【RADIUSサーバの設定ファイルの記述について】
ここではRADIUSサーバとしてFreeRadiusを使用した場合の各種設定ファイルの記述について解説します。

(1)clientsの記述
RADIUSクライアントとなる本装置のIPアドレスと共有シークレットの組み合わせを記述します。
クライアントのIPアドレスは、RADIUSサーバへ問い合わせるときに使用する送信元アドレスを記述してください。
(RADIUSサーバグループ設定の source-address を設定した場合はそのIPアドレスを指定します)

この構成例の場合は以下のように記述します。
# 本店側装置(192.168.1.1を送信元アドレスとして問い合わせ)
client 192.168.1.1 {
                secret = SECRET
                shortname = honten
}

# 拠点側装置(10.0.0.1を送信元アドレスとして問い合わせ)
client 10.0.0.1 {
                 secret = SECRET
                 shortname = kyoten
}
※shotnameは現在のFreeRadius ver 2.x系では使用されていないため省略可能

(2)usersの記述
本装置がMACアドレス認証機能でRADIUSサーバへの認証要求を送信するとき、ユーザ名とパスワードはいずれも「接続してきた端末のMACアドレスでコロン":"を省略したもの」となります。
(例)MACアドレス 00:01:02:03:04:05の端末では 000102030405 という文字列をユーザ名・パスワードにセットして認証要求が送信されます。

FreeRadiusのusersファイルで上記端末を許可する場合、以下のように記述します。
000102030405            Cleartext-Password := "000102030405"
また、以下のようにSession-Timeout属性をセットすることにより認証の有効時間(単位:秒)を指定することができます。
(省略した場合は認証の有効時間は無限となります)
000102030405            Cleartext-Password := "000102030405"
             Session-Timeout = 86400


本店側コマンド例
(!の行はコメントです。実際に入力する必要はありません。)
この設定を利用したい方は
!
!
! 特権ユーザモードに移行します。
!
Router> enable
Enter password: super ←パスワードを入力します(実際は何も表示されません)。

Router#
!
!
! 基本設定モードに移行します。
!
Router# configure terminal
Router(config)#
!
!
! ホスト名を設定します。
!
Router(config)# hostname HONTEN
!
!
! LAN1インタフェースの設定を行います。
!
HONTEN(config)# interface lan 1
HONTEN(config-if lan 1)# ip address 192.168.0.1 255.255.255.0
HONTEN(config-if lan 1)# exit
!
!
! VLANIF1インタフェースの設定を行います。
! (LANポート4をポートVLANでVLANIF1に割り当て)
!
HONTEN(config)# line lan
HONTEN(config-line lan)# vlan 4 bridge-group 1
HONTEN(config-line lan)# vlan 4 port-vlan 10
HONTEN(config-line lan)# exit
HONTEN(config)# interface vlanif 1
HONTEN(config-if vlanif 1)# bridge-group lan 1
HONTEN(config-if vlanif 1)# vlan-id 10
HONTEN(config-if vlanif 1)# ip address 192.168.1.1 255.255.255.0
HONTEN(config-if vlanif 1)# exit
!
!
! PPPoE1の各種設定をします。
!
HONTEN(config)# interface pppoe 1
HONTEN(config-if pppoe 1)# pppoe server FLETS
HONTEN(config-if pppoe 1)# pppoe account abc012@***.***.ne.jp pass012
HONTEN(config-if pppoe 1)# pppoe type host
HONTEN(config-if pppoe 1)# ip address 192.0.2.1
HONTEN(config-if pppoe 1)# ip nat inside source list 1 interface
HONTEN(config-if pppoe 1)# exit
!
!
! access-list に、NAT変換対象とするアドレス(LAN側アドレス)を登録します。
!
HONTEN(config)# access-list 1 permit 192.168.0.0 0.0.0.255
!
!
! VPN機能を有効にします。
!
HONTEN(config)# vpn enable
!
!
! VPN通信動作中の詳細なログを残す設定にします。
!
HONTEN(config)# vpnlog enable
!
!
! 拠点用のPhase1ポリシーの設定を行ないます。
!
HONTEN(config)# crypto isakmp policy 1
HONTEN(config-isakmp)# negotiation-mode aggressive
HONTEN(config-isakmp)# authentication prekey
HONTEN(config-isakmp)# encryption aes 256
HONTEN(config-isakmp)# group 2
HONTEN(config-isakmp)# hash sha
HONTEN(config-isakmp)# key ascii secret-vpn
HONTEN(config-isakmp)# peer-identity host id-kyoten1
HONTEN(config-isakmp)# exit
!
!
! Phase2ポリシーの設定を行ないます。
!
HONTEN(config)# ipsec transform-set P2-POLICY esp-aes-256 esp-sha-hmac
!
!
! ipsec access-listの設定を行ないます。
!
HONTEN(config)# ipsec access-list 1 ipsec ip any any
HONTEN(config)# ipsec access-list 64 bypass ip any any
!
!
! 拠点用のcrypto mapの設定を行ないます。
!
HONTEN(config)# crypto map kyoten1 1
HONTEN(config-crypto-map)# match address 1
HONTEN(config-crypto-map)# set peer host id-kyoten1
HONTEN(config-crypto-map)# set transform-set P2-POLICY
HONTEN(config-crypto-map)# exit
!
!
! IPsec1インタフェースの設定を行います。
!
HONTEN(config)# interface ipsecif 1
HONTEN(config-if ipsecif 1)# crypto map kyoten1
HONTEN(config-if ipsecif 1)# exit
!
!
! ルート情報の設定によって、どの通信をIPsec対象とするか指定します。
!
HONTEN(config)# ip route 192.168.10.0 255.255.255.0 connected ipsecif 1
!       拠点のLANネットワークへの経路
HONTEN(config)# ip route 10.0.0.1 255.255.255.255 connected ipsecif 1
!       拠点からのRADIUS問い合わせの応答を返すための経路
!       拠点のLoopbackアドレス宛てのホスト経路を設定します。
HONTEN(config)# ip route 0.0.0.0 0.0.0.0 pppoe 1
!
!
! RADIUSサーバグループの設定をします。
!
HONTEN(config)# aaa group server radius RADIUS-1
!    MACアドレス認証を行う際に問い合わせるRADIUSサーバグループを設定します
HONTEN(config-sg-radius)# server-private 192.168.1.100 key SECRET
!    問い合わせ先RADIUSサーバのIPアドレスと共有シークレットを指定
!    server-private設定は最大3件まで設定可能
!
!    本店側はRADIUSサーバが直接接続されているのでsource-address指定は不要です
HONTEN(config-sg-radius)# exit
!
!
! LAN1インタフェースでMACアドレス認証を行う設定を追加します。
!
HONTEN(config)# interface lan 1
HONTEN(config-if lan 1)# aaa authentication macfilter default group RADIUS-1
!    このインタフェースでMACアドレス認証を行います
!    認証の問い合わせ先のRADIUSサーバグループを指定します
HONTEN(config-if lan 1)#exit
!
!
! 特権ユーザモードに戻ります。
!
HONTEN(config)# end
!
!
! 設定を保存します。
!
HONTEN# save SIDE-A.cfg
% saving working-config
% finished saving

HONTEN#
!
!
! 設定を有効にするために再起動します。
!
HONTEN# reset
Are you OK to cold start?(y/n) y
拠点側コマンド例
(!の行はコメントです。実際に入力する必要はありません。)
この設定を利用したい方は
!
!
! 特権ユーザモードに移行します。
!
Router> enable
Enter password: super ←パスワードを入力します(実際は何も表示されません)。

Router#
!
!
! 基本設定モードに移行します。
!
Router# configure terminal
Router(config)#
!
!
! ホスト名を設定します。
!
Router(config)# hostname KYOTEN
!
!
! LAN1インタフェースの設定を行います。
!
KYOTEN(config)# interface lan 1
KYOTEN(config-if lan 1)# ip address 192.168.10.1 255.255.255.0
KYOTEN(config-if lan 1)# exit
!
!
! Loopback1インタフェースの設定を行います。
!
KYOTEN(config)# interface loopback 1
KYOTEN(config-if loopback 1)# ip address 10.0.0.1
KYOTEN(config-if loopback 1)# exit
!
!
! PPPoE1の各種設定をします。
!
KYOTEN(config)# interface pppoe 1
KYOTEN(config-if pppoe 1)# pppoe server FLETS
KYOTEN(config-if pppoe 1)# pppoe account abc345@***.***.ne.jp pass345
KYOTEN(config-if pppoe 1)# pppoe type host
KYOTEN(config-if pppoe 1)# ip nat inside source list 1 interface
KYOTEN(config-if pppoe 1)# exit
!
!
! access-list に、NAT変換対象とするアドレス(LAN側アドレス)を登録します。
!
KYOTEN(config)# access-list 1 permit 192.168.10.0 0.0.0.255
!
!
! VPN機能を有効にします。
!
KYOTEN(config)# vpn enable
!
!
! VPN通信動作中の詳細なログを残す設定にします。
!
KYOTEN(config)# vpnlog enable
!
!
! Phase1ポリシーの設定を行ないます。
!
KYOTEN(config)# crypto isakmp policy 1
KYOTEN(config-isakmp)# negotiation-mode aggressive
KYOTEN(config-isakmp)# authentication prekey
KYOTEN(config-isakmp)# encryption aes 256
KYOTEN(config-isakmp)# group 2
KYOTEN(config-isakmp)# hash sha
KYOTEN(config-isakmp)# key ascii secret-vpn
KYOTEN(config-isakmp)# my-identity id-kyoten1
KYOTEN(config-isakmp)# peer-identity address 192.0.2.1
KYOTEN(config-isakmp)# exit
!
!
! Phase2ポリシーの設定を行ないます。
!
KYOTEN(config)# ipsec transform-set P2-POLICY esp-aes-256 esp-sha-hmac
!
!
! VPNセレクタの設定を行ないます。
!
KYOTEN(config)# ipsec access-list 1 ipsec ip any any
KYOTEN(config)# ipsec access-list 64 bypass ip any any
!
KYOTEN(config)# crypto map center 1
KYOTEN(config-crypto-map)# match address 1
KYOTEN(config-crypto-map)# set peer address 192.0.2.1
KYOTEN(config-crypto-map)# set security-association always-up
KYOTEN(config-crypto-map)# set transform-set P2-POLICY
KYOTEN(config-crypto-map)# exit
!
!
! IPsec1インタフェースの設定を行います。
!
KYOTEN(config)# interface ipsecif 1
KYOTEN(config-if ipsecif 1)# crypto map center
KYOTEN(config-if ipsecif 1)# exit
!
!
! ルート情報の設定によって、どの通信をIPsec対象とするか指定します。
!
KYOTEN(config)# ip route 192.168.0.0 255.255.255.0 connected ipsecif 1
KYOTEN(config)# ip route 192.168.0.0 255.255.255.0 connected null 0 100
!       本店のLANネットワークへの経路
!       ipsecif向きルートよりも低い優先度(distance値100)で廃棄向きルートを
!       登録することで、IPsecインターフェースがダウンしたときに本店宛の
!       通信が平文で出ていかないようになります。
KYOTEN(config)# ip route 192.168.1.0 255.255.255.0 connected ipsecif 1
KYOTEN(config)# ip route 192.168.1.0 255.255.255.0 connected null 0 100
!       本店のRADIUSサーバが設置されているネットワークへの経路
KYOTEN(config)# ip route 0.0.0.0 0.0.0.0 pppoe 1
!
!
! RADIUSサーバグループの設定をします。
!
KYOTEN(config)# aaa group server radius RADIUS-1
!    MACアドレス認証を行う際に問い合わせるRADIUSサーバグループを設定します
KYOTEN(config-sg-radius)# server-private 192.168.1.100 key SECRET
!    問い合わせ先RADIUSサーバのIPアドレスと共有シークレットを指定
!    server-private設定は最大3件まで設定可能
KYOTEN(config-sg-radius)# source-address 10.0.0.1
!    RADIUS問い合わせを行うときの送信元アドレス(Loopback1のアドレス)を指定
KYOTEN(config-sg-radius)# exit
!
!
! LAN1インタフェースでMACアドレス認証を行う設定を追加します。
!
KYOTEN(config)# interface lan 1
KYOTEN(config-if lan 1)# aaa authentication macfilter default group RADIUS-1
!    このインタフェースでMACアドレス認証を行います
!    認証の問い合わせ先のRADIUSサーバグループを指定します
KYOTEN(config-if lan 1)# exit
!
!
! 特権ユーザモードに戻ります。
!
KYOTEN(config)# end
!
!
! 設定を保存します。
!
KYOTEN# save SIDE-A.cfg
% saving working-config
% finished saving

KYOTEN#
!
!
! 設定を有効にするために再起動します。
!
KYOTEN# reset
Are you OK to cold start?(y/n) y
動作状況の確認

MACアドレス認証による接続端末の認証状況を表示します。

確認内容 画面表示例
MACアドレス認証による認証状況を表示


接続許可となった端末MACアドレスはAUTHORIZEDと表示されます。
UNAUTHORIZEDと表示された端末MACアドレスは不許可となった端末です。
(RADIUSサーバと通信ができず、問い合わせのリトライが満了した場合もUNAUTHORIZEDとなります)
HONTEN#show macfilter interface
MacAddress      AuthStatus     Elapsec     Timeout     NAS-Port
[LAN1]
0001.0203.0405  AUTHORIZED                 2251
0607.0809.0a0b  UNAUTHORIZED   25

RADIUSサーバへの問い合わせ動作の統計情報を表示します。

確認内容 画面表示例
RADIUS統計情報を表示



応答が返ったRADIUSサーバはStatusがupとなります。
(問い合わせに失敗して使用不可と判断されたサーバはdownと表示)









問い合わせに結果が許可となった場合はAuth-Acceptが、不許可となった場合はAuth-Rejectがカウントアップします。
HONTEN#show radius
[ Radius group : RADIUS-1 ]
Server                                   Status  Auth-port
---------------------------------------- ------- ---------
*192.168.1.100                            up      1812
  Radius retransmit count :    3
  Radius timeout          :    5 seconds
  Radius changeback time  :    0 minutes (00:00:00)
  Timeout/Last timeout    :          0/
  Radius send             :          2
    Auth-Request/error    :          2/         0
    Acct-Request/error    :          0/         0
      Type start/error    :          0/         0
      Type stop/error     :          0/         0
      Type on/error       :          0/         0
      Type off/error      :          0/         0
  Radius recv             :          2
    Auth-Accept/error     :          1/         0
    Auth-Reject/error     :          1/         0
    Acct-Response/error   :          0/         0
    Auth-Challenge/error  :          0/         0
認証済みMACアドレスの無効化

接続許可となっている端末MACアドレスは、clear macfilter interfaceコマンドにより手動で無効化できます。
認証状態が無効化された端末は、次に通信を行った時に再認証されます。
RADIUSサーバ側のusers設定で許可対象から外す変更を行った場合、Session-Timeout属性がセットされていないエントリだと認証済みの状態で残り続けるため、clear macfilter interfaceコマンドによる無効化が必要です。

実行内容 画面表示例
LAN1インタフェースに接続している端末
(MACアドレス00:01:02:03:04:05)の認証を無効化する
HONTEN#clear macfilter interface lan 1 0001.0203.0405

ページトップへ

All Rights Reserved, Copyright(C) FURUKAWA ELECTRIC CO., LTD. 2015