ポートセキュリティについて

ポートセキュリティとは

ポートセキュリティとは、インターフェース(ポート)に対してMACアドレスを基にしたセキュリティ機能を提供する機能です。ポートセキュリティを使用すると、特定のポートに接続できるデバイス(MACアドレス)を制限し、許可されたMACアドレス以外からの通信をブロックしたり、セキュリティ違反として対応することが可能です。この機能は、ネットワークへの不正なアクセスを防ぎ、セキュリティを強化するために使用されます。

ポートセキュリティの主な機能

  1. 特定のMACアドレスを許可:
    • 特定のポートに接続できるMACアドレスの数を制限し、許可されたデバイスのみが通信できるようにします。これにより、不正なデバイスがネットワークに接続しようとした場合に、即座に検出して対応することができます。
  2. 動的/静的MACアドレスの学習:
    • 動的にMACアドレスを学習させることができ、接続された最初のデバイスのMACアドレスを記憶します。また、特定のデバイスを静的に登録することも可能です。静的な登録では、管理者が手動でMACアドレスを設定します。
  3. セキュリティ違反の対応:
    • 許可されていないMACアドレスが検出された場合、以下のような対応を設定できます。
      • Protect(プロテクト): 不正なデバイスの通信をブロックするが、違反のログやアラートは出力しない。
      • Restrict(リストリクト): 不正なデバイスの通信をブロックし、違反をログに記録し、アラートを生成する。
      • Shutdown(シャットダウン): 該当するポートをErrdisable状態にして無効化する。違反のログが記録され、インターフェースが自動的にシャットダウンされます(デフォルト動作)。
  4. MACアドレスの「スティッキー」機能:
    • ポートに接続されたMACアドレスを自動的に学習し、それを保存する機能です。学習したMACアドレスはスイッチの設定に書き込まれるため、再起動後も学習したデバイスを保持できます。

ポートセキュリティの設定

基本構文

インターフェイスでポートセキュリティを有効にします。
Switch(config)#interface interface-id
Switch(config-if)#switchport port-security

セキュアMACアドレスの最大数を設定します。
Switch(config-if)#switchport port-security [maximum value [vlan {vlan-list | {access | voice}}]]

セキュリティ違反が検出されたときに実行されるアクションを設定します。
Switch(config-if)#switchport port-security violation protect | restrict | shutdown | shutdown vlan}

コマンド内容
protect不正なデバイスの通信をブロックするが、ログに記録したり通知を行わない。
restrict不正なデバイスの通信をブロックし、違反をログに記録し、アラートを生成する。
shutdown該当するポートをErrdisable状態にし、ポートを無効化する。
VLANを指定することでVLANごとにシャットダウンを行う。

セキュアMACアドレスを設定します。stickyは動的にMACアドレスを学習してMACアドレステーブルとrunning-configに追加されます。
Switch(config-if)#switchport port-security [mac-address mac-address [vlan { vlan-id | {access | voice}}]
Switch(config-if)#switchport port-security mac-address sticky

設定例

最大接続数を3に設定して、違反したらポートをシャットダウンさせる設定です。

設定完了後、クライアント3を接続させます。

接続後、ポートセキュリティが発動してGi0/0がshutdownされたことを示すログが出力されました。

オプション設定

ポートエージングを使用してセキュアMACアドレスのエージングタイムを設定できます。
Switch(config)#interface interface-id
Switch(config-if)#switchport port-security aging { static | time time | type { absolute | inactivity} }

コマンド内容
static静的に設定されたセキュア アドレスのエージングを有効にします。
time time ージング時間を指定します。有効な範囲は 0 ~ 1440 分です。
absoluteエージング タイプを絶対エージングとして設定します。
inactivityエージング タイプを非アクティビティ エージングに設定します。

参考文献

Chapter: Configuring Port-Based Traffic Control