STAGE 05 / ポートセキュリティとACL

PT演習 5-2:ポートセキュリティと標準ACLで通信を制御する

考えてみよう

ポートセキュリティで「決まった機器しかつなげない」ようにし、ACLで「決まった相手としか通信できない」ようにできたら、ネットワークの安全性はどう変わるでしょうか?

ポートセキュリティは「物理ポートの入口」を、ACLは「通信そのものの許可・拒否」を制御します。守っている対象のレイヤーが違う、という点を意識しながら読み進めてください。

この演習でできるようになること

使用トポロジ

スイッチ1台に、PCを2台(PC0・PC1)とルーター1台を接続した構成です。PC0はスイッチのFastEthernet0/1に、PC1はFastEthernet0/2に接続し、ルーターはFastEthernet0/3経由で別ネットワーク(サーバーPC2を想定)に接続します。

PC1を無許可のPCに差し替えるとFa0/1がerr-disabledになり、show port-securityでSecure-shutdownと表示される様子
PC1を無許可のPCに差し替えるとFa0/1がerr-disabledになり、show port-securityでSecure-shutdownと表示される様子

準備

  1. Switch 2960 を1台、PC-PT を3台(PC0、PC1、PC2)、Router 2911 を1台配置します。
  2. PC0とスイッチ、PC1とスイッチはそれぞれストレートケーブルで接続します。
  3. スイッチとルーターもストレートケーブル(スイッチ⇔ルーターは異なる機器種別のため)で接続します。
  4. ルーターの先にPC2を接続し、別ネットワーク(例:192.168.2.0/24)のセグメントを用意します。

手順

まずPC0が接続されているポートにポートセキュリティを設定します。

Switch> enable
Switch# configure terminal
Switch(config)# interface FastEthernet0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport port-security
Switch(config-if)# switchport port-security maximum 1
Switch(config-if)# switchport port-security mac-address sticky
Switch(config-if)# switchport port-security violation shutdown
Switch(config-if)# exit

maximum 1 でこのポートに許可するMACアドレスを1台に限定し、mac-address sticky でPC0のMACアドレスを自動的に学習・固定します。violation shutdown はデフォルトのモードで、違反時にポートをerr-disabledにします。

次に、PC0をいったん外して別のPC(例えばPC1を一時的に差し替える想定、あるいはPacket Tracerの「デスクトップ > MACアドレス変更」で疑似的に別端末を再現)をFastEthernet0/1に接続し、違反を発生させます。ポートの状態を確認しましょう。

Switch# show port-security interface FastEthernet0/1
Port Security              : Enabled
Port Status                : Secure-shutdown
Violation Count            : 1

Secure-shutdown と表示されていれば、意図どおり違反が検知されてポートが無効化されています。復旧させるには次のコマンドを実行します。

Switch(config)# interface FastEthernet0/1
Switch(config-if)# shutdown
Switch(config-if)# no shutdown

続いて、ルーターに標準ACLを設定し、PC1が所属するネットワーク(例:192.168.1.0/24のうちPC1側)からサーバー方向(PC2)への通信だけを拒否してみます。

Router> enable
Router# configure terminal
Router(config)# access-list 10 deny 192.168.1.0 0.0.0.255
Router(config)# access-list 10 permit any
Router(config)# interface FastEthernet0/1
Router(config-if)# ip access-group 10 out

標準ACLは送信元アドレスしか判断できないため、宛先に近いインターフェースのout方向に適用するのが原則です。ここではPC2側のインターフェースのoutに適用しています。

確認

ポートセキュリティの学習結果は次のコマンドで確認します。

Switch# show port-security address
Vlan    Mac Address       Type                          Ports
----    -----------       ----                          -----
   1    0050.0001.0001    SecureSticky                  Fa0/1

ACLの動作は、PC0(正規のPC0であれば192.168.1.0/24に所属していないシナリオ、または別ネットワークのPCから)からPC2へのpingで確認します。

C:\> ping 192.168.2.10

Request timed out.
Request timed out.

192.168.1.0/24からのpingが拒否されていれば成功です。逆に、ACLの対象外のネットワークからのpingは正常に通ることも確認しておきましょう。

合格チェックリスト

つまずきポイント

確認問題

FastEthernet0/1に switchport port-security violation shutdown を設定した状態で、maximum台数を超えるMACアドレスからのフレームを受信しました。ポートはどうなり、復旧にはどんな操作が必要でしょうか?

答えを見る

ポートはerr-disabled(Secure-shutdown)状態になり、通信が完全に停止します。復旧するには該当インターフェースで shutdown を実行した後に no shutdown を実行する必要があります。

ゆみちゃん
ゆみ

ポートセキュリティで「誰をつなげるか」、ACLで「誰と通信させるか」を制御する、レイヤーの違う2つの防御を実機で体験できたね。err-disabledになったときに慌てずshutdownno shutdownで直せるようになれば安心だよ。次はワイヤレス、無線LANの世界に入っていくよ。