【Cisco】 セキュリティ設定2
DHCPスヌーピング
ネットワーク上で不正なDHCPサーバーからの応答を防ぐセキュリティ機能です。具体的には、スイッチがDHCPメッセージを監視し、許可されたDHCPサーバーからのものだけを許可することで、攻撃者が不正なDHCPサーバーを利用してクライアントに影響を与えることを防ぐ。(DHCPスプーフィング)
スイッチがスヌーピングバインディングDB(データベース)を使用して、クライアントのMACアドレス、IPアドレス、VLAN、および接続ポートの情報を記録する。このデータベースは、スイッチが不正なDHCP応答を検出し、防ぐのに役立つ。
仕組み
スイッチ上で信頼できるポートと信頼できないポートを設定。信頼できるポートは、正当なDHCPサーバーが接続されているポートで、ここからのDHCP応答が許可される。信頼できないポートは、クライアントが接続されているポートで、ここからのDHCP応答がブロックされる。
クライアントがDHCPリクエストを送信すると、スイッチがリクエストを受け取る。
スイッチは、DHCPリクエストを信頼できるポートに転送し、正当なDHCPサーバーが応答できるようにする。
DHCPサーバーが応答を送信すると、スイッチが応答を受け取り、クライアントに転送する。
DHCPスプーフィング
不正なDHCPサーバーが正当なDHCPサーバーになりすまし、クライアントに偽のIPアドレスやネットワーク設定情報を提供する攻撃手法。クライアントがDHCPリクエストを送信し、攻撃者は不正なDHCPサーバーを使用して、正当なDHCPサーバーよりも早くクライアントに対して偽のIPアドレスやネットワーク設定情報を提供。クライアントは、攻撃者が提供した偽の情報を使用してネットワークに接続することになり、攻撃者がそのトラフィックを傍受・改ざんできる状態になる。
設定例
有効化
有効化すると全てのポートが信頼されない状態になる。
Switch(config)# ip dhcp snooping
Switch(config)# ip dhcp snooping vlan <No> # vlan指定もできる
信頼できるポートの設定
Switch(config-if)# ip dhcp snooping trust
Switch(config-if)# no ip dhcp snooping trust # 信頼されない
設定の確認
Switch# show ip dhcp snooping
スヌーピングバインディングDBの設定確認
Switch# show ip dhcp snooping binding
ダイナミックARPインスペクション
ARPを利用した攻撃(ARPスプーフィング)を検出および防止するセキュリティ機能である。DAIは、スイッチでARPパケットを検証し、不正なものをブロックする。
ネットワーク上に、AデバイスとBデバイスが存在するとする。攻撃者がAとBの通信を傍受したい場合、攻撃者はAのIPアドレスと自分のMACアドレスを組み合わせた偽のARP応答を生成し、Bに送信する。Bは、この偽のARP応答を信じ、Aと通信する際に攻撃者のMACアドレスを使用する。この結果、攻撃者はAとB間の通信を傍受できる。
仕組み
DAIは、スイッチでARPリクエストとARP応答パケットを検証する。検証は、DHCPスヌーピングバインディングデータベース(DB)を使用して行われる。このDBは、IPアドレスとMACアドレスの正しい対応関係を格納している。
受信したARPパケットが、DHCPスヌーピングバインディングDB内の情報と一致する場合、そのARPパケットは正常であると判断され、通常通り転送される。
受信したARPパケットが、DB内の情報と一致しない場合、そのARPパケットは不正であると判断され、ブロックされる。これにより、ARPスプーフィング攻撃を防ぐことができる。
ARPスプーフィング
攻撃者がネットワーク上のデバイスのMACアドレスとIPアドレスの対応関係を偽装する攻撃である。攻撃者は、正規のデバイスのIPアドレスに対応する偽のMACアドレスを送信し、ネットワーク上の他のデバイスがその偽のMACアドレスを信じるようになる。
設定例
有効化
Switch(config)# ip arp inspection vlan 10
信頼できるポートの設定
Switch(config-if)# ip arp inspection trust
Switch(config-if)# no ip arp inspection trust # 信頼されない
設定の確認
Switch# show ip arp inspection
セキュリティのAAA
認証(Authentication): ユーザーが自分が主張する人物であることを証明するプロセス。通常は、ユーザー名とパスワードを使用して行われる。
承認(Authorization): 認証されたユーザーがネットワークリソースにアクセスできる範囲を決定するプロセス。この段階では、ユーザーの権限や制限が確認される。
アカウンティング(Accounting): ユーザーのネットワークリソースへのアクセスを記録および監視するプロセス。
RADIUS
Remote Authentication Dial-In User Service, ネットワークのAAAサービスを提供するプロトコル。RADIUSは、クライアントとサーバー間で認証、承認、アカウンティング情報を交換するために使用される。RADIUSは、パスワード情報を暗号化して送信するが、その他の情報は平文で送信される。
ポートは
UDPポート1812: 認証サービス用
UDPポート1813: アカウンティングサービス用
TACACS+
Terminal Access Controller Access-Control System Plusは、Ciscoが開発したネットワークのAAAサービスを提供するプロトコル。RADIUSとは異なり、TACACS+は認証、承認、アカウンティングの各要素を別々に扱い、すべての通信を暗号化する。これにより、TACACS+はRADIUSよりも高いセキュリティを提供する。
ポートは
TCPポート49: 認証、認可、アカウンティングサービス全てに使用
RADIUSおよびTACACS+サーバを使用したログイン認証の流れ
ユーザーがネットワークデバイス(スイッチ、ルーターなど)にログインしようとする。
ネットワークデバイスは、設定された認証方式(RADIUSまたはTACACS+)を使用して、リモート認証サーバーに認証リクエストを送信する。
リクエストには、ユーザー名、パスワード、およびその他の必要な情報が含まれ、RADIUSまたはTACACS+サーバーはリクエストを受信し、データベースと照合して認証を行う。
サーバーは認証の成否に応じて、応答を返す。成功の場合、アクセス許可情報(アクセスレベル、サービスなど)も含まれることがある。
ネットワークデバイスは、サーバーからの応答に基づいてユーザーのアクセスを許可または拒否する。
RADIUSおよびTACACS+サーバを使用することで、ネットワークデバイスへのアクセスを一元的に管理し、セキュリティを向上させることができる。
設定例
有効化
Switch(config)# aaa new-model
認証方式の設定
aaa authentication login default group tacacs+ local
# 実行(exec)モードへのアクセスにも同様の設定
aaa authorization exec default group tacacs+ local
group: 任意のRADIUSのグループ名、または任意のTACACS+のグループ名を使用する認証方法。
group radius: RADIUSサーバを使用する認証方法。事前にRADIUSクライアントの設定が必要。
group tacacs+: TACACS+サーバを使用する認証方法。事前にTACACS+クライアントの設定が必要。
enable: enable passwordを使用する認証方法。
line: line のpasswordを使用する認証方法。事前にlineのpasswordの設定が必要。
local: ローカルデータベースを使用する認証方法。事前にusernameコマンドの設定が必要。
local-case: 認証において、大文字と小文字を区別する認証方法。それ以外は「local」と同じ。
none: ログインに認証を使用しない。
IEEE 802.1X
LANに接続されたデバイスに対してアクセス制御を行うためのIEEE標準で、デバイスがネットワークにアクセスする前に認証を行うことで、不正なアクセスを防ぐことができる。
企業の無線LAN環境において、社員が正規のユーザ名とパスワードを使用して認証されるまで、ネットワークリソースへのアクセスが制限される。
主要なコンポーネント
サプリカント (Supplicant)
ネットワークにアクセスを試みるデバイス(クライアント)。サプリカントは、ネットワークアクセスを求めるリクエストを送信し、認証情報を提供。
オーセンティケータ (Authenticator)
ネットワークインフラストラクチャの一部であり、サプリカントからのアクセスリクエストを受け取り、認証サーバーに転送する役割を担う。通常、スイッチや無線アクセスポイントがオーセンティケータとして機能。
認証サーバ (Authentication Server)
サプリカントが提供した認証情報を検証し、アクセスが許可されるかどうかを決定するサーバー。認証サーバは、通常、RADIUSやTACACS+プロトコルを使用して遠隔地に配置。
関連記事
よろしければサポートお願いします!よりいい情報を発信します。