ポート セキュリティの設定
この章では、Catalyst 6500シリーズ スイッチにポート セキュリティを設定する方法について説明します。
(注) この章で使用しているコマンドの構文および使用方法の詳細については、『Catalyst 6500 Series Switch Command Reference』を参照してください。
(注) 802.1x認証の設定により、アクセスを許可されているポートから不正なデバイスがLAN接続するのを制限する手順については、「802.1x認証の設定」を参照してください。
(注) Authentication, Authorization, Accounting(AAA;認証、許可、アカウンティング)を設定して、Catalyst 6500シリーズ スイッチのCLI(コマンドライン インターフェイス)へのアクセスをモニタおよび制御する方法については、「AAAによるスイッチ アクセスの設定」を参照してください。
この章で説明する主な内容は、次のとおりです。
• 「ポート セキュリティの機能」
• 「ポート セキュリティ設定時の注意事項」
• 「スイッチにおけるポート セキュリティの設定」
ポート セキュリティの機能
イーサネット、ファスト イーサネット、またはギガビット イーサネット ポートへのアクセスを試みたステーションのMACアドレスが、そのポートに指定されているMACアドレスと異なる場合、ポート セキュリティ機能を使用してポートへのアクセスをブロックできます。また、ホストMACアドレスに基づく指定ホストに送信、または指定ホストから受信したトラフィックをフィルタリングすることができます。
ここでは、トラフィック フィルタリング方式について説明します。
• 「ホストMACアドレスに基づくトラフィックの許可」
• 「ホストMACアドレスに基づくトラフィックの制限」
• 「セキュア ポートでのユニキャスト フラッディング パケットのブロック」
ホストMACアドレスに基づくトラフィックの許可
1つのポートにつき、指定できるMACアドレスの総数は、グローバル リソースとしての1,024に、デフォルトのMACアドレス1つを加えた数です。1ポート上の総MACアドレス数が1,025を超えることはありません。
各ポートにMACアドレスの最大数を割り当てるかどうかは、ネットワーク構成によって決まります。有効な割り当ての例を以下に示します。
• 1ポートに1,025(1 + 1,024)個のアドレス、残りの各ポートに1アドレスずつ
• システム内の2ポートにそれぞれ513(1 + 512)個、残りの各ポートに1アドレスずつ
• 1ポートに901(1 + 900)個、次のポートに101(1 + 100)個、第3のポートに25(1 + 24)個、残りの各ポートに1アドレスずつ
ポートに最大MACアドレス数を割り当てたあとで、そのポートに手動でセキュアMACアドレスを指定するか、または接続装置のMACアドレスをポートに動的に設定させることができます。ポートに割り当てられた最大数のMACアドレスのうち、すべてを手動で設定するか、すべてを自動で設定するか、または一部を手動で設定し、残りを自動で設定することができます。手動または自動で設定したアドレスは、NVRAM(不揮発性RAM)に保存され、リセット後も維持されます。
ポートに最大MACアドレス数を割り当てたあとで、特定のポート上でアドレスの安全性が維持される期間を指定できます。エージング タイムが経過すると、そのポートのMACアドレスは非保護状態になります。デフォルトの設定では、ポート上のすべてのアドレスが無期限で保護されます。
セキュリティ違反が発生した場合に、ポートがシャットダウン モードまたは制限モードになるように設定できます。シャットダウン モード オプションを使用すると、ポートを無期限にディセーブルにするのか、一定期間だけディセーブルにするのかを指定できます。デフォルトの設定では、ポートは無期限にシャットダウンされます。制限モードを使用すると、セキュリティ違反が発生しても、ポートをイネーブルにしておき、非保護ホストから送られてきたパケットだけが廃棄されるように設定できます。
(注) 制限モードでセキュア ポートを設定していて、スイッチの別のポート上でセキュアMACアドレスとして設定済みのMACアドレスを持つポートにステーションを接続した場合、制限モードのポートはそのステーションからのトラフィックを制限するのではなく、シャットダウンしてしまいます。たとえば、ポート2/1のセキュアMACアドレスとしてMAC-1、ポート2/2のセキュアMACアドレスとしてMAC-2を設定し、さらに、ポート2/2が制限モードとして設定されているときに、MAC-1を指定してステーションとポート2/2を接続した場合、ポート2/2はMAC-1からのトラフィックを制限するのではなく、シャットダウンします。
セキュア ポートがパケットを受信すると、そのパケットの送信元MACアドレスと、ポートに手動または自動(学習により)設定された送信元セキュア アドレス リストが比較されます。ポートに接続された装置のMACアドレスと、セキュア アドレス リストが異なる場合、ポートは無期限にシャットダウン(デフォルトのモード)するか、指定された期間だけシャットダウンするか、または非保護ホストからの着信パケットを廃棄します。ポートの動作は、セキュリティ違反に対してどのように対処するか、その設定によって決まります。
セキュリティ違反が発生すると、そのポートのLINK LEDがオレンジに点灯し、SNMP(簡易ネットワーク管理プロトコル)マネージャにリンク ダウン トラップが送信されます。制限モードでポートを設定している場合は、SNMPトラップは送信されません。トラップが送信されるのは、セキュリティ違反時にシャットダウンするようにポートを設定している場合だけです。
ホストMACアドレスに基づくトラフィックの制限
ホストMACアドレスに基づいてトラフィックをフィルタリングし、特定の送信元MACアドレスを持つパケットを廃棄することができます。 set cam filter コマンドを使用してMACアドレス フィルタを指定すると、指定したホストMACアドレスからの着信トラフィックが廃棄されます。また、指定したホストを宛先とするパケットは転送されません。
(注) set cam filterコマンドでフィルタリングできるのは、ユニキャスト アドレスだけです。このコマンドでは、マルチキャスト アドレス用のトラフィックをフィルタリングすることはできません。
セキュア ポートでのユニキャスト フラッディング パケットのブロック
ユニキャスト フラッディング機能をディセーブルにすることで、セキュア イーサネット ポートでユニキャスト フラッディング パケットをブロックできます。ポートでユニキャスト フラッディング パケットをディセーブルにすると、ポートは、MACアドレスの最大許容数に達すると、ユニキャスト フラッディング パケットを廃棄します。
MACアドレス数が最大許容数以下に低下すると、ポートは自動的にユニキャスト フラッディング パケットの学習を再開します。学習されたMACアドレスのカウントは、設定されたMACアドレスが削除されるかTime to Live(TTL)カウンタに達すると減少します。
スイッチにおけるポート セキュリティの設定
ここでは、ポート セキュリティを設定する手順について説明します。
• 「ポート セキュリティのイネーブル化」
• 「セキュアMACアドレスの最大数の設定」
• 「ポート セキュリティ エージング タイムの設定」
• 「MACアドレスの削除」
• 「セキュア ポートでのユニキャスト フラッディング ブロックの設定」
• 「セキュリティ違反時の処置の指定」
• 「シャットダウン タイムアウトの設定」
• 「ポート セキュリティのディセーブル化」
• 「ホストMACアドレスに基づくトラフィックの制限」
• 「ポート セキュリティの表示」
ポート セキュリティのイネーブル化
ポート上でポート セキュリティをイネーブルにすると、そのポートと対応づけられたスタティックまたはダイナミックCAMエントリは削除されます。その時点ですでに設定されている永続CAMエントリは、安全とみなされます。
ポート セキュリティをイネーブルにするには、イネーブル モードで次の作業を行います。
|
|
|
ステップ 1 |
ポートを指定して、ポート セキュリティをイネーブルにします。必要な場合、セキュアMACアドレスを指定します。 |
set port security mod/port enable [ mac_addr ] |
ステップ 2 |
セキュア アドレス リストにMACアドレスを追加できます。 |
set port security mod/port mac_addr |
ステップ 3 |
設定を確認します。 |
show port [ mod [ / port ]] |
ポート上で、学習したMACアドレスを使用してポート セキュリティをイネーブルにし、設定を確認する例を示します。
Console> (enable) set port security 2/1 enable
Port 2/1 port security enabled with the learned mac address.
Trunking disabled for Port 2/1 due to Security Mode
Console> (enable) show port 2/1
Port Name Status Vlan Level Duplex Speed Type
----- ------------------ ---------- ---------- ------ ------ ----- ------------
2/1 connected 522 normal half 100 100BaseTX
Port Security Secure-Src-Addr Last-Src-Addr Shutdown Trap IfIndex
----- -------- ----------------- ----------------- -------- -------- -------
2/1 enabled 00-90-2b-03-34-08 00-90-2b-03-34-08 No disabled 1081
Port Broadcast-Limit Broadcast-Drop
-------- --------------- --------------
Port Align-Err FCS-Err Xmit-Err Rcv-Err UnderSize
----- ---------- ---------- ---------- ---------- ---------
Port Single-Col Multi-Coll Late-Coll Excess-Col Carri-Sen Runts Giants
----- ---------- ---------- ---------- ---------- --------- --------- ---------
--------------------------
Fri Jul 10 1998, 17:53:38
次に、ポート上でポート セキュリティをイネーブルにし、セキュアMACアドレスを手動で指定する例を示します。
Console> (enable) set port security 2/1 enable 00-90-2b-03-34-08
Port 2/1 port security enabled with 00-90-2b-03-34-08 as the secure mac address
Trunking disabled for Port 2/1 due to Security Mode
セキュアMACアドレスの最大数の設定
ポート上で保護するMACアドレスの数を設定できます。デフォルトの設定では、1ポートに少なくとも1個のMACアドレスを保護できます。このデフォルト値に加え、最大1,024個のMACアドレスからなるグローバル リソースをポート間で共有できます。一部のポートで1,024個のMACアドレスからなるグローバル リソース全体を使用しても、残りのポートではまだ、1ポートに最大1個のMACアドレスを使用して、ポート セキュリティをイネーブルにできます。
MACアドレスの最大数を少なくすると、システムによって指定された数のMACアドレスが削除され、削除したアドレスのリストが表示されます。
特定のポートで保護するMACアドレスの数を設定するには、イネーブル モードで次の作業を行います。
|
|
ポート上で保護するMACアドレスの数を設定します。 |
set port security mod/port maximum num_of_mac |
保護するMACアドレスの数を設定する例を示します。
Console> (enable) set port security 7/7 maximum 20
Maximum number of secure addresses set to 20 for port 7/7.
次に、MACアドレスの数を減らし、削除されたMACアドレスを表示する例を示します。
Console> (enable) set port security 7/7 maximum 18
Maximum number of secure addresses set to 18 for port 7/7
00-11-22-33-44-55 cleared from secure address list for port 7/7
00-11-22-33-44-66 cleared from secure address list for port 7/7
ポート セキュリティ エージング タイムの設定
ポートのエージング タイムによって、そのポート上の全アドレスの保護期間を指定します。このエージング タイムは、MACアドレスがそのポート上のトラフィックを開始したときからアクティブになります。MACアドレスに対応するエージング タイムが経過すると、ポート上のそのMACアドレスに対応するエントリがセキュア アドレス リストから削除されます。有効な範囲は1~1440分です。エージング タイムをゼロに設定すると、セキュア アドレスのエージングがディセーブルになります。
ポートにエージング タイムを設定するには、イネーブル モードで次の作業を行います。
|
|
ポート上の保護するアドレスにエージング タイムを設定します。 |
set port security mod/port age time |
ポート7/7にエージング タイムを設定する例を示します。
Console> (enable) set port security 7/7 age 600
Secure address age time set to 600 minutes for port 7/7.
MACアドレスの削除
clear port securityコマンドを使用して、ポート上のセキュア アドレス リストからMACアドレスを削除します。
(注) 使用中のMACアドレスにclearコマンドを実行した場合、そのMACアドレスが学習されて、再び保護される可能性があります。ポート セキュリティをディセーブルにしてから、MACアドレスを削除するようにしてください。
セキュアMACアドレス リストからすべてのMACアドレス、または特定のMACアドレスを削除するには、イネーブル モードで次の作業を行います。
|
|
セキュアMACアドレス リストから全部または特定のMACアドレスを削除します。 |
clear port security mod/port { mac_addr | all } |
ポート7/7上のセキュア アドレス リストからMACアドレスを1つ削除する例を示します。
Console> (enable) clear port security 7/7 00-11-22-33-44-55
00-11-22-33-44-55 cleared from secure address list for port 7/7
次に、ポート7/5~7からすべてのMACアドレスを削除する例を示します。
Console> (enable) clear port security 7/5-7 all
All addresses cleared from secure address list for ports 7/5-7
セキュア ポートでのユニキャスト フラッディング ブロックの設定
ユニキャスト フラッディング ブロックを設定するには、ユニキャスト フラッディング機能をディセーブルにします。
(注) MACアドレスの限度に達すると、ポートはユニキャスト フラッディングをディセーブルにします。
セキュア ポートでユニキャスト フラッディング ブロックを設定するには、イネーブル モードで次の作業を行います。
|
|
|
ステップ 1 |
所定のセキュア ポートでユニキャスト フラッディング ブロックをディセーブルにします。 |
set port security mod/port unicast-flood disable |
ステップ 2 |
ユニキャスト フラッディングの設定を確認します。 |
show port security mod/port |
ステップ 3 |
ユニキャスト フラッディング ブロックのステータスを確認します。 |
show port unicast-flood mod / port |
ポートでユニキャスト フラッディング パケットをディセーブルにするようスイッチを設定し、その設定を確認する例を示します。
Console> (enable) set port security 4/1 unicast-flood disable
Port 4/1 security flood mode set to disable.
Console> (enable) show port security 4/1
Port Security Violation Shutdown-Time Age-Time Max-Addr Trap IfIndex
----- -------- --------- ------------- -------- -------- -------- -------
4/1 disabled shutdown 0 0 1 disabled 50
Port Num-Addr Secure-Src-Addr Age-Left Last-Src-Addr Shutdown/Time-Left
----- -------- ----------------- -------- ----------------- ------------------
Port Flooding on Address Limit
---- -------------------------
Console> (enable) show port unicast-flood 4/1
(注) show port unicast-floodコマンドにより、ユニキャスト フラッディング ブロックの実行時のステータスが表示されます。出力では、ポートがアドレスの限度を超えているかどうかに応じて、ユニキャスト フラッディングがイネーブルまたはディセーブルのいずれになっているかが表示されます。
セキュリティ違反時の処置の指定
ポートには、セキュリティ違反に対する処理として、次の2つのモードを設定できます。
• シャットダウン ― ポートを無期限にまたは一定期間だけシャットダウンします。無期限シャットダウンがデフォルトのモードです。
• 制限 ― 非保護ホストから送られてきたすべてのパケットを廃棄しますが、ポートは引き続きイネーブルです。
セキュリティ違反の発生時にとるべき処置を指定するには、イネーブル モードで次の作業を行います。
|
|
ポートでの違反発生時の処置を指定します。 |
set port security mod/port violation { shutdown | restrict } |
ポート7/7で、非保護ホストから送られたすべてのパケットを廃棄するように指定する例を示します。
Console> (enable) set port security 7/7 violation restrict
Port security violation on port 7/7 will cause insecure packets to be dropped.
(注) ポートのセキュアMACアドレス数を1に制限して、他のホストがそのポートに接続しようとした場合、ポート セキュリティによって、他のホストからそのポートに接続することが禁止されると共に、VLAN(仮想LAN)エージング タイムの間、同じVLAN内のあらゆるポートへの接続が防止されます。デフォルトの設定では、VLANエージング タイムは5分です。セキュア ポートであるために、同一VLAN内のポートにホストが接続できない場合は、VLANエージング タイムが経過したあとで、もう一度ホストからポートに接続してください。
シャットダウン タイムアウトの設定
セキュリティ違反が発生した場合に、ポートをディセーブルにしておく時間を指定できます。デフォルトの設定では、ポートは無期限にシャットダウンされます。有効な範囲は1~1440分です。
この時間をゼロに設定すると、そのポートではシャットダウンがディセーブルになります。
(注) シャットダウン タイムが経過すると、ポートは再びイネーブルになり、ポート セキュリティ関連のすべての設定が維持されます。
シャットダウン タイムアウトを設定するには、イネーブル モードで次の作業を行います。
|
|
ポートにシャットダウン タイムアウトを設定します。 |
set port security mod/port shutdown time |
ポート7/7のシャットダウン タイムアウト値を600分に設定する例を示します。
Console> (enable) set port security 7/7 shutdown 600
Secure address shutdown time set to 600 minutes for port 7/7.
ポート セキュリティのディセーブル化
ポート セキュリティをディセーブルにするには、イネーブル モードで次の作業を行います。
|
|
|
ステップ 1 |
ポートを指定して、ポート セキュリティをディセーブルにします。 |
set port security mod/port disable |
ステップ 2 |
設定を確認します。 |
show port security [ mod / port ] |
ポート セキュリティをディセーブルにする例を示します。
Console> (enable) set port security 2/1 disable
Port 2/1 port security disabled.
Console> (enable) show port security 2/1
Port Security Violation Shutdown-Time Age-Time Max-Addr Trap IfIndex
----- -------- --------- ------------- -------- -------- -------- -------
3/24 disabled restrict 20 300 10 disabled 921
Port Num-Addr Secure-Src-Addr Age-Left Last-Src-Addr Shutdown/Time-Left
----- -------- ----------------- -------- ----------------- ------------------
3/24 1 00-e0-4f-ac-b4-00 - - - -
ホストMACアドレスに基づくトラフィックの制限
特定のMACアドレスのトラフィックを制限するには、イネーブル モードで次の作業を行います。
|
|
|
ステップ 1 |
指定したMACアドレスとの間の送信または受信トラフィックを制限します。 |
set cam { static | permanent } filter unicast_mac vlan |
ステップ 2 |
フィルタを削除します。 |
clear cam mac_address vlan |
ステップ 3 |
設定を確認します。 |
show cam { static | permanent } |
特定のMACアドレスに対するトラフィックを制限するフィルタを作成する例を示します。
Console> (enable) set cam static filter 00-02-03-04-05-06 1
Filter entry added to CAM table.
次に、フィルタを削除する例を示します。
Console> (enable) clear cam 00-02-03-04-05-06 1
次に、スタティックなCAMエントリを表示する例を示します。
VLAN Dest MAC/Route Des [CoS] Destination Ports or VCs / [Protocol Type]
---- ------------------ ----- -------------------------------------------
3 04-04-05-06-07-08 * FILTER
ポート セキュリティの表示
show port securityコマンドを使用すると、次の情報が表示されます。
• ポートのセキュアMACアドレス リスト
• ポートで使用できる最大セキュア アドレス数
• セキュアMACアドレスの総数
• エージング タイム
• 残っているエージング タイムおよびシャットダウンのタイムアウトまでの時間
• シャットダウン/セキュリティ モード
• ポート セキュリティ関連の統計情報
ポート セキュリティの設定情報および統計情報を表示するには、イネーブル モードで次の作業を行います。
|
|
|
ステップ 1 |
設定を表示します。 |
show port security [statistics] mod/port |
ステップ 2 |
ポート セキュリティの統計情報を表示します。 |
show port security statistics [system] [ mod/port ] |
ポート セキュリティの設定情報および統計情報を表示する例を示します。
Console> (enable) show port security 3/24
Port Security Violation Shutdown-Time Age-Time Max-Addr Trap IfIndex
----- -------- --------- ------------- -------- -------- -------- -------
3/24 enabled shutdown 300 60 10 disabled 921
Port Num-Addr Secure-Src-Addr Age-Left Last-Src-Addr Shutdown/Time-Left
----- -------- ----------------- -------- ----------------- ------------------
3/24 4 00-e0-4f-ac-b4-00 60 00-e0-4f-ac-b4-00 no -
Console> (enable) show port security statistics 3/24
Port Total-Addrs Maximum-Addrs
----- ----------- -------------
Port Total-Addrs Maximum-Addrs
----- ----------- -------------
次に、モジュールに関してポート セキュリティの統計情報を表示する例を示します。
Console> (enable) show port security statistics 7
Port Total-Addrs Maximum-Addrs
----- ----------- -------------
Total MAC address(es): 223
Total global address space used (out of 1024): 199
次に、システムに関してポート セキュリティの統計情報を表示する例を示します。
Console> (enable) show port security statistics system
Total global address space used (out of 1024): 0
Module does not support port security feature
Total MAC address(es): 48
Total global address space used (out of 1024): 0
Total MAC address(es): 223
Total global address space used (out of 1024): 199