○番号付き標準ACL
アクセスリストを作って、
インターフェースVlan1に適用。
192.168.1.0/24からのアクセスは許可するけど、
192.168.1.10だけは拒否する設定。
(config)#access-list 1 deny 192.168.1.10 0.0.0.0 (←この順番が大事) (config)#access-list 1 permit 192.168.1.0 0.0.0.255 (config)#int vlan 1 (config-if)#ip address 192.168.1.1 255.255.255.0 (config-if)#ip access-group 1 in
コンフィグはこんな感じ
! interface Vlan1 ip address 192.168.1.1 255.255.255.0 ip access-group 1 in ! (~中略~) ! access-list 1 deny 192.168.1.10 access-list 1 permit 192.168.1.0 0.0.0.255
接続したPC側NICのIPアドレスを
192.168.1.11/24に設定して192.168.1.1へping
→成功
192.168.1.10/24に設定して192.168.1.1へping
→失敗
●その他キーワード
・インバウンド、アウトバウンド
・ステートメントの順番
・暗黙のdeny
・ワイルドカードマスク
○番号付き拡張ACL
IPアドレスだけじゃなく、
プロトコルとかでも細かく設定できる。
pingは通さず、telnetは通す設定にする。
とりあえず、telnetの設定。
(config)#int vlan 1 (config-if)#ip address 192.168.1.1 255.255.255.0 (config-if)#exit (config)#line vty 0 4 (config-line)#transport input telnet (config-line)#pas pass
telnetでアクセスできることを確認。
ここで、アクセスリストを設定。
(config)#access-list 100 permit tcp 192.168.1.0 0.0.0.255 any eq 23 (config)#int vlan 1 (config-if)#ip access-group 100 in
コンフィグを確認
! interface Vlan1 ip address 192.168.1.1 255.255.255.0 ip access-group 100 in ! (~中略~) ! access-list 100 permit tcp 192.168.1.0 0.0.0.255 any eq telnet ! (~中略~) ! line vty 0 4 password pass login transport input telnet !
PC側NICのIPアドレスを192.168.1.10/24にして、
ping→失敗
telnet→成功
↑はtelnetのみ許可した形。
その他のプロトコル:(icmp含む)は拒否。
その他のプロトコルを許可して、
icmpのみ拒否する場合は、
(config)#access-list 101 deny icmp 192.168.1.0 0.0.0.255 any (config)#access-list 101 permit ip 192.168.1.0 0.0.0.255 any
これでも、pingとtelnetの実行結果は↑↑とそれぞれ同じ。
(プロトコルに”any”は設定できなかったので、
とりあえずipにしといた。)
○名前付き拡張ACL
(※「名前付き標準ACL」もあるが割愛。番号付きと名前付きの違いを意識。)
↑↑と同じ内容の設定
(config)#ip access-list extended acl-name (config-ext-nacl)#permit tcp 192.168.1.0 0.0.0.255 any eq telnet (config-ext-nacl)#exit (config)#int vlan 1 (config-if)#ip access-group acl-name in
permit/dney 以降の書き方は、
基本的に番号付きと同じ。
コンフィグ
! interface Vlan1 ip address 192.168.1.1 255.255.255.0 ip access-group acl-name in ! (~中略~) ! ip access-list extended acl-name permit tcp 192.168.1.0 0.0.0.255 any eq telnet !
データの入り方が若干違う。
だけじゃなく、
シーケンスNo.の指定によって、
自由に優先度を変えられる。
(番号付きアクセスリストでは不可。)
(config)#ip access-list extended acl-name (config-ext-nacl)#deny icmp 192.168.1.0 0.0.0.255 any (config-ext-nacl)#5 permit ip 192.168.1.0 0.0.0.255 any
ってすると、後から足したip許可の方が優先されて、
pingもtelnetも通るようになる。
(シーケンスNo.を指定しない場合は、10, 20, ….と振られる。)
コンフィグ上でも、シーケンスNo.の順番に表示される。
! ip access-list extended acl-name permit ip 192.168.1.0 0.0.0.255 any deny icmp 192.168.1.0 0.0.0.255 any !
シーケンスNo.を確認したい場合は、
“show ip access-lists”コマンドを使う。
#show ip access-lists Extended IP access list 101 10 deny icmp 192.168.1.0 0.0.0.255 any (8 matches) 20 permit ip 192.168.1.0 0.0.0.255 any (600 matches) Extended IP access list acl-name 5 permit ip 192.168.1.0 0.0.0.255 any 10 deny icmp 192.168.1.0 0.0.0.255 any (8 matches)
また、削除の場合も便利。
名前付きACLでは、
削除したい行を指定すれば、その行だけ削除される。
(config)#ip access-list extended acl-name (config-ext-nacl)#no 5 (←シーケンス番号だけでも可) (config-ext-nacl)#exit (config)#do show ip access-lists Extended IP access list 101 10 deny icmp 192.168.1.0 0.0.0.255 any 20 permit ip 192.168.1.0 0.0.0.255 any Extended IP access list acl-name 10 deny icmp 192.168.1.0 0.0.0.255 any
番号付きACLでは、
1行でも削除しようとすると、ACL丸ごと削除される。
(config)#no access-list 101 20 (config)#do show ip access-lists Extended IP access list acl-name 10 deny icmp 192.168.1.0 0.0.0.255 any
(スマホ問題集付)徹底攻略Cisco CCNA Routing & Switching教科書 ICND2編[200-105J][200-125J]V3.0対応 |