nKB

nKB

シンプルにいこうよ

Cisco Configuration

はじめに

Cisco機器の設定はCiscoサイトにあるコンフィグレーションガイドに載っている。

シスコ - 日本
サポート&ダウンロード
→ 製品&ダウンロード
 → 製品を選択
  → コンフィグレーションガイド


基準となるConfigを作る


Interface

・インターフェースコンフィグレーションモード

Switch(config)# interface <interface-id>  
Switch(config-if)#  


アクセスポートの設定

Switch(config-if)# switchport mode access  
Switch(config-if)# switchport access vlan <vlan-id>  
Switch(config-if)# spanning-tree portfast  

Point

  • 対向装置がサーバ、クライアントの場合、「portfast」を有効にする


トランクポートの設定

Switch(config-if)# description # <hostname> <interface>  
Switch(config-if)# switchport trunk allowed vlan <vlan-id>    
Switch(config-if)# switchport mode trunk                                
Switch(config-if)# switchport nonegotiate                              

Point

DTP(Dynamic Trunk Protocol):接続先に合わせ、スイッチポートをアクセスポートにするか、トランクボートにするか動的に決定するCisco独自のプロトコル

ストームコントロール

トランクポート・アクセスポートどちらでも設定可能

Catalyst 2960 等の場合

(config-if)# storm-control broadcast level bps 10m  
(config-if)# storm-control multicast level bps 10m  
(config-if)# storm-control action shutdown  
(config-if)# storm-control action trap  

Catalyst 4500 の場合

(config-if)# storm-control broadcast include multicast
(config-if)# storm-control broadcast level 10
(config-if)# storm-control action trap

Point

  • アクセスポートのときは「shutdown」を入れる
  • storm-controlが作動した際にトラップを上げる
  • ストームコントロールはBPDUとCDPは止めない。CDPがループし、CPUをひっ迫することがある。


ポートチャネル

Switch(config-if)# channel-group <port-channel ID> mode on  

[Point]
・Port-Channel側に設定を入れると物理インターフェースに反映される。
逆に物理インターフェースに設定してもPort-Channelには反映されないので注意が必要。

・スタック構成のCatalyst2960SでPort-channelが6個以上作れない

Switch(config)#interface Port-channel1
Switch(config-if)#exit
Switch(config)#interface Port-channel2
Switch(config-if)#exit
Switch(config)#interface Port-channel3
Switch(config-if)#exit
Switch(config)#interface Port-channel4
Switch(config-if)#exit
Switch(config)#interface Port-channel5
Switch(config-if)#exit
Switch(config)#interface Port-channel6
Switch(config-if)#exit
Switch(config)#interface Port-channel7
                                     ^
% Invalid input detected at '^' marker.

※仕様です。入らないなら入らないでもう少し気のきいたエラーを吐いてもらいたい。

Catalyst 2960 および 2960-S スイッチ ソフトウェア コンフィギュレーション ガイド Cisco IOS Release 15.0(2)SE 以降 - EtherChannel およびリンクステート トラッキングの設定 [Cisco Catalyst 2960 シリーズ スイッチ] - Cisco

→ スイッチ スタック上では、6 を超える数の EtherChannel を設定しないでください。


・対向装置がCDPをサポートしない装置の場合

Switch(config-if)# no cdp enable  


・err-diableポートを指定時間経過後、自動復帰させる

Switch(config-if)# errdisable recovery cause <errdisable cause>
Switch(config-if)# errdisable recovery interval 600

Point

  • errdisable causeは、自動復旧させたい原因を指定する。例 udld、link-flap、loopback、storm-control
  • 復旧までの時間を指定


VLAN・VTP

・トランスペアレントモードの設定

Switch(config)# vtp mode transparent  
  • VTPはスイッチネットワーク全体でVLAN情報の同期をとるCisco独自のプロトコル
    トラブルを避けるため、一般的には使われていない。


・vlan作成

Switch(config)# vlan 10  
Switch(config-vlan)# name test  


・vlan1は原則禁止にする

Switch(config)# vlan 1  
Switch(config-vlan)# shutdown  


管理VLAN

Switch(config)# interface Vlan2
Switch(config-if)# description # MGMT
Switch(config-if)# ip address <ip address> <subnet mask>
Switch(config-if)# no ip redirects  
Switch(config-if)# no ip proxy-arp
Switch(config-if)# no ip route-cache

Point

  • 管理VLANは1以外を使う。vlan1は使用しない
  • ICMPリダイレクトメッセージを無効化。有効になっていると攻撃者に機器の存在を察知されるため、無効が推奨
  • プロキシARPを無効化。プロキシARPは同一セグメントをルーターで分割している構成のネットワークのみ必要
  • CEFを無効化

SVI

interface Vlan<vlan id>
 description <comment>
 ip address 192.168.1.1 255.255.255.0
 no ip redirects
 no ip proxy-arp
 no ip route-cache
 no shutdown

Point

  • SVIを有効にするには「no shutdown」が必要

デフォルトゲートウェイ

Switch(config)# ip default-gateway <ip address>


STP

Switch(config)# spanning-tree mode rapid-pvst    
Switch(config)# spanning-tree portfast bpdufilter default
Switch(config)# spanning-tree extend system-id

Point

  • rapid-PVST(802.1w準拠)で設定する
  • BPDUフィルターをグローバルで有効化
  • 拡張システムIDを有効化する


HSRP

※冗長させる2台で設定する
Switch(config)# no ip redirects
Switch(config)# standby delay minimun 60
Switch(config)# standby ip <v-ip>
Switch(config)# standby priority
Switch(config)# standby preempt


スタック

Switch(config)# switch <stack-id> provision <model>  
Switch(config)# stack-mac persistent timer 0

Point

  • switch X provision はスタック構成にすると自動でConfigに入る
  • スタックマスターダウン時に、スレーブがMACアドレスを引き継ぐ

aaa(認証、認可、アカウンティング)

1 (config)# aaa new-model
2 (config)# aaa session-id common
3 (config)# aaa authentication login default local
4 (config)# aaa authentication dot1x default group radius
5 (config)# aaa authorization console
6 (config)# aaa authorization network default group radius
7 (config)# aaa authorization auth-proxy default group radius
8 (config)# aaa accounting dot1x default start-stop group radius
9 (config)# dot1x system-auth-control

解説
1 AAAを有効化する
2 同じセッションIDを使う
3 VTY/Consoleのログインは、ローカルパスワード認証を使う
4 dot1x認証にはRADIUSを使う
5 コンソールに対してもauthorizationを有効化する
6 PPP、SLIP、ARAP など、ネットワーク関連のすべてのサービス リクエストに対し、許可を実行
7 認証プロキシ(auth-proxy)認証に RADIUS を使用します。
8 接続開始と終了通知をRadiusサーバに通知する
9 dot1x認証をグローバルで有効化する

Point

  • aaa機能を有効化
  • 同一のセッションIDを使用するよう設定

ルーティング

OSPF

パッシブインターフェース

passive-interface <interface>

passive-interface で指定したインターフェースから
ルーティングプロトコルのルーティングアップデートやHelloパケットの送信しない

L3スイッチなどはポート数が多いことから
passive-interface defaultで全てのアップデートの送信を止め、
他のL3機器と繋がるインターフェースだけpassive-interfaceを有効にする

セキュリティ

・設定ファイルのパスワードは暗号化する

Switch(config)# service password-encryption  

・パケットが自身の経路を指定できるようにする機能の無効化
許可するとルーティングを無視した通信も可能となってしまう為、無効化する

Switch(config)# no ip source-route

DHCPスプーフィング対策
dhcpスヌーピングを有効化する。スヌーピングを設定するとDHCPパケットにOption82情報が付与される。

Switch(config)# ip dhcp snooping


時刻設定・NTP

・タイムスタンプ
デバッグ時、ログ表示時のタイムスタンプをミリ秒まで表示、および年表示を付加

Switch(config)# service timestamps debug datetime msec localtime show-timezone year  
Switch(config)# service timestamps log datetime msec localtime show-timezone year  


タイムゾーンを設定
UTCとの差を設定する(日本は+9HなのでJST 9を指定)

Switch(config)# clock timezone JST 9  


・時刻同期の設定

Switch(config)# ntp source <loopback-address>  
Switch(config)# ntp server <ntp server ip-address>  

Point
sourceは、ループバックアドレスまたは管理VLANを指定する


SNMP

Switch(config)# snmp-server community <community name> RO <acl>
Switch(config)# snmp-server trap-source <loopback address>
Switch(config)# snmp-server enable traps [option] 
Switch(config)# snmp-server location <location>
Switch(config)# snmp-server host <ip address> version 2c <communiti name>
Switch(config)# snmp ifmib ifindex persist  

Point

※オプションを指定しない場合、設定対象の機器で使用できる全てのトラップが対象となる。
SNMP-Server Enabled Traps を設定した場合に送信されるトラップ

ログイン設定

・特権EXECモードに移行する時のパスワード設定

Switch(config)# enable secret <password>

・ユーザ作成

Switch(config)# username <username> password <password>

・コンソールログイン

Switch(config)# line console 0  
Switch(config-line)# password <password>
Switch(config-line)# login
Switch(config-line)# logging synchronous    
Switch(config-line)# exec prompt timestamp

Point

  • コマンド入力時に機器のログでコマンド入力を妨害されないようにする
  • showコマンド入力時にCPU使用率と時刻を表示させる


telnet/sshログイン

Switch(config)# line vty 0 15
Switch(config-line)# password <password>
Switch(config-line)# login
Switch(config-line)# access-class <acl name>  
Switch(config-line)# logging synchronous    
Switch(config-line)# exec prompt timestamp

※telnetとsshを分ける場合
Switch(config)# line vty 0 4
Switch(config-line)# transport input telnet

Switch(config)# line vty 5 15
Switch(config-line)# transport input ssh

Point

  • 仮想インターフェイスをtenlet用、ssh用で分けておく
  • アクセスリストを設定。別途aclの設定が必要
  • コマンド入力時に機器のログでコマンド入力を妨害されないようにする
  • showコマンド入力時にCPU使用率と時刻を表示させる


バナー

・ログイン後にバナーを表示

(config)# banner exec ^  
(config)# /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_  
(config)#    Machine Type : <Machine Type> 
(config)#    HostName     :  <hostname>
(config)#    Location     :  <Location>
(config)# /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
(config)# ^

Point
Machine Typeは、型名を入力。例 WS-C2960X-24TS-L


ログ

Switch(config)# logging <syslog server>  
Switch(config)# logging source-interface <管理VLAN>  
Switch(config)# logging trap debugging  
Switch(config)# logging buffered 512000  

Point

  • デフォルト値(4096byte)は小さいので変更する。Cisco推奨値は「512000」


SSH

Switch(config)# ip ssh time-out 15
Switch(config)# ip ssh version 2

Point

・鍵の生成

Switch(config)# crypto key generate rsa modulus 2048

Cisco IOS セキュリティ コマンド リファレンス:コマンド A ~ C、Cisco IOS XE Release 3SE(Catalyst 3850 スイッチ) - crypto key generate rsa [Cisco Catalyst 3850 シリーズ スイッチ] - Cisco


その他

・スイッチでHTTP/HTTPSサーバ機能を無効化
Ciscoではhttpを無効化することを推奨。Webコンソールを使わない場合はhttpsも無効化しておく

Switch(config)# no ip http server
Switch(config)# no ip http secure-server

・VTPモードをトランスペアレント(透過)に設定
セキュリティや管理上の理由からVTPモードはトランスペアレントにするのが推奨されている

Switch(config)# vtp mode transparent

・入力文字列をDNS検索しないようにする
コマンド以外の文字列を入力した場合、DNS検索してしまうのを防ぐ。
DNS検索すると数十秒操作不能となる。

no ip domain-lookup


-EOF-