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

ポートセキュリティとは

ポートへのアクセスを許可するMACアドレスを制限または識別する機能のことです。ポートに接続をすることが出来るセキュアなMACアドレスをあらかじめ設定しておき、その制限に違反したり、最大数を超えた場合ポートをダウンさせたり通信をブロックさせることが出来ます。

トポロジ

ポートセキュリティの構成

SWの設定1

インターフェイスでポートセキュリティを有効にします。

セキュアMACアドレスの最大数を設定します。

セキュリティ違反が検出されたときに実行されるアクションを設定します。

protect
 ポートで設定したMACアドレスの最大数に達するとセキュアMACアドレスを削除するか、最大値を増やすまで、不明な送信元アドレスを持つパケットはドロップされます。特に通知はされません。

strict
 ポートで設定したMACアドレスの最大数に達するとセキュアMACアドレスを削除するか、最大値を増やすまで、不明な送信元アドレスを持つパケットはドロップされます。syslogメッセージが記録され違反カウンタが増加します。

・shutdown
 違反が発生するとインターフェイスはエラーディセーブルになりポートLEDがオフになります。SNMPトラップが送信されsyslogメッセージが記録され、違反カウンタが増加します。

今回はshutdownを設定します。

セキュアMACアドレスを設定します。stickyは動的にMACアドレスを学習してMACアドレステーブルとrunning-configに追加されます。

動作確認

PC1とPC2を起動します。stickyを選択しているので動的にMACアドレスが学習され、PCのMACアドレスがrunning-configに追加されています。

PC3を起動します。制限の2を超えたのでインターフェイスがエラーディセーブル状態になりました。

設定2

セキュアMACアドレスを手動で指定します。

動作確認

SW1で指定したセキュアなMACアドレス以外の端末からの接続なためセキュリティ違反が発生して、syslogメッセージが出力されました。

設定3

違反モードをprotectで設定します。

動作確認

PC5を起動していた状態でPC6を起動します。最大数を超えたためPC6から通信はドロップされるのでping疎通が失敗します。

もちろんですがPC5からはping疎通が成功します。

設定4

こちらの設定はCMLの環境だと動作確認が難しいのですがCiscoConfigurationGuideに乗っていたので確認します。(ちなみにCMLだとmacアドレスの後にvlanコマンドを入れることが出来ませんでした)

下記の設定例では、スティッキーポートセキュリティを有効化して、データVLANと音声VLANのMACアドレスを手動で設定してセキュアMACアドレスの最大数をデータVLANで10、音声VLANで10の合計20に設定しています。

ポートセキュリティエージングの構成

ポートエージングを使用してセキュアMACアドレスのエージングタイムを設定できます。

switchport port-security aging timeコマンドを使用してエージングタイムを設定します。有効な範囲は0~1440(分)です。

switchport port-security aging staticコマンドを使用することでこのポートで静的に設定したセキュアMACアドレスのエージングを有効にします。

switchport port-security aging typeコマンドを使用してエージング方法を設定します。

absolute
 指定された時間が経過するとセキュアアドレスリストから削除されます。
inactivity
 指定された期間、セキュアな送信元アドレスからのデータトラフィックがない場合にのみ削除されます。

下記の設定例では10分経過するとセキュアマックアドレスがリストから削除されます。

下記の設定例では20分間セキュアなマックアドレスからの通信がない場合削除されます。

参考文献

Chapter: Configuring Port-Based Traffic Control