こんにちは!ネットワークの世界へようこそ。インフラエンジニアの主筆ライターがお届けする、今回の技術ブログのテーマは「ポートセキュリティ」です。
ネットワークの構築や運用を始めると、「オフィスのフロアに勝手に自分のルーターやハブを持ち込んで繋ぐ人がいる」「使っていない会議室のLANポートに、見知らぬ端末が挿さっていた」といった、ちょっとヒヤッとするシチュエーションに直面することがあります。
こうした「部外者の勝手な接続」からオフィスのネットワークを守るための門番が、今回解説するポートセキュリティ機能です。難しい専門用語やパケットの細かい構造はひとまず置いておいて、まずは身近な例えから一歩ずつ優しく紐解いていきましょう!
—
1. ポートセキュリティってなぁに?(現実世界の例え)
オフィスのネットワークスイッチ(L2スイッチ)を、大きな「マンションのオートロック付きエントランス」に想像してみてください。
スイッチの「ポート」とは、各部屋へ続く扉のようなものです。通常、どの部屋(ポート)に、どんな住人(PCなどの端末)が住んでいるのか、スイッチはMACアドレスという「名簿」を使って覚えています。
もし、この名簿に載っていない見知らぬよそ者が勝手にやってきて、空いている部屋の扉から侵入しようとしたらどうでしょうか? セキュリティがしっかりしたマンションなら、管理人がすぐに不審者を見つけて追い返したり、警報を鳴らしたりしますよね。
ポートセキュリティは、まさにスイッチのポートに「このポートに出入りしていいのは、登録された最大〇台の端末までですよ!」という厳しい人数制限をかけ、ルールを破る不審者が現れたときにどう対処するかを決める、とても頼もしい機能なのです。
—
2. 違反時の3つのアクション(Protect、Restrict、Shutdown)
ポートセキュリティで「許可された数以上のMACアドレスを持つ端末」が接続されると、スイッチはこれを「セキュリティ違反(Violation)」とみなします。このとき、スイッチが取る行動には以下の3つのモード(アクション)が用意されています。
実務の現場では、セキュリティの厳しさや、万が一の障害時の影響範囲を考えてこの3つを使い分けます。それぞれの動きを詳しく見ていきましょう!
① Protect(プロテクト)モード:静かに門前払い
許可されていない端末からの通信がやってきても、エラーメッセージ(ログ)を出さず、ただ黙ってその通信をゴミ箱にポイっと捨てる(破棄する)モードです。
- どんなとき使う?:「ログが大量に出て管理画面が埋まるのは嫌だけど、とにかく不正な通信は通したくない」という、比較的おとなしい対策をしたいときに向いています。
② Restrict(レストリクト)モード:門前払い + お巡りさんに通報
Protectモードと同じように不正な通信を破棄しますが、それだけではありません。「おい、今変な奴が侵入しようとしたぞ!」と管理者にログ(Syslog)を飛ばし、違反カウンターの数字をカウントアップします。
- どんなとき使う?:「誰かが不正に接続を試みた事実をすぐに検知して、ネットワーク管理者へアラートを上げたい」という、一般的なオフィス環境でよく選ばれるバランスの良いモードです。
③ Shutdown(シャットダウン)モード:即座に扉を完全に封鎖(デフォルト)
もっとも厳格で、実務でもデフォルト(最初から設定されている動作)としてよく使われるモードです。不正な端末を検知した瞬間、そのポート自体の電源をプツリと切り(エラーディセーブル状態)、通信を完全に遮断します。
- どんなとき使う?:「セキュリティ最優先! 不正な端末が接続されたら、管理者が来るまでそのポートは一切使えなくしてしまえ」という、高い安全性が求められる環境で使われます。
—
3. 実機設定のハンズオン:Ciscoスイッチでの設定例
それでは、実際にシスコシステムズ(Cisco)のCatalystスイッチを想定して、ポートセキュリティの設定方法を見ていきましょう。今回は、最も一般的な「Shutdownモード」を例に設定手順を解説します。
ここでは、スイッチの GigabitEthernet0/1 というポートに対して、以下のルールを適用します。
1. ポートセキュリティを有効にする。
2. 違反時のアクションを Shutdown にする。
3. 接続できるMACアドレスの最大数を「2台」までに制限する。
4. 接続されたMACアドレスを自動で学習・記憶させる。
! 1. 対象のポート(インターフェース)の設定モードに入ります
Switch(config)# interface GigabitEthernet0/1
! 2. このポートを「アクセスポート(一般端末用)」として定義します
Switch(config-if)# switchport mode access
! 3. ポートセキュリティ機能を有効化します
Switch(config-if)# switchport port-security
! 4. 違反時のアクションを Shutdown(ポート遮断)に設定します
Switch(config-if)# switchport port-security violation shutdown
! 5. 学習できるMACアドレスの最大数を「2」に制限します
Switch(config-if)# switchport port-security maximum 2
! 6. 接続された端末のMACアドレスを動的に学習して記憶させます
Switch(config-if)# switchport port-security mac-address sticky
設定はたったこれだけです!最後の mac-address sticky というコマンドは非常に便利で、実際にPCが接続された瞬間に、そのPCのMACアドレスを自動的に設定ファイルに書き込んで記憶(sticky=粘着)してくれます。
—
4. トラブルシューティング:もしポートがシャットダウンしてしまったら?
現場でよくあるのが、「社員が自分の私物PCを間違えて会社のLANポートに挿してしまい、ポートセキュリティが発動してポートがシャットダウン(エラーディセーブル)してしまった!」というお問合せです。
このとき、原因となった不正な端末をポートから取り外しても、一度切られたポートは勝手には復旧しません。 ネットワーク管理者が手動で、あるいは自動復帰の設定をしてあげる必要があります。
手動でポートを復旧させる手順
ポートを生け贄から救うには、一度インターフェースを「お休み(シャットダウン)」させてから、再び「起こす(ノーシャットダウン)」というおまじないをかけます。
! 1. 該当のポートに入ります
Switch(config)# interface GigabitEthernet0/1
! 2. 一度ポートを完全に落とします
Switch(config-if)# shutdown
! 3. 再びポートを起動させます(これでエラー状態がリセットされます)
Switch(config-if)# no shutdown
この操作を行うことで、スイッチの頭の中がリフレッシュされ、再び正しい端末の通信を受け付けられるようになります。
—
まとめ
今回は、ネットワークの基礎を守る「ポートセキュリティ」について解説しました。
- ポートセキュリティとは、ポートごとの接続台数(MACアドレス数)を制限して不正接続を防ぐ機能。
- 違反時のアクションには、静かに捨てる
Protect、ログを出すRestrict、ポートを止めるShutdownがある。 - 実務では
Shutdownがよく使われ、不正端末を排除した後に管理者がshutdown/no shutdownで復旧させる。
ネットワークの安全は、こうした足元固めの地道な設定の積み重ねによって成り立っています。ぜひ皆さんの検証環境や実務でも試してみてくださいね。それでは、また次回のネットワーク解説でお会いしましょう!
コメント