BN Bootcamp for SE ASA Firewall

Slides:



Advertisements
Similar presentations
WINDOWS AZURE上での ACTIVE DIRECTORY構築入門 Windows Azure ハンズオン トレーニング.
Advertisements

1 ルータ・スイッチ 基礎教育 (基礎編). 2 Agenda ~基礎編~ シスコ機器との接続方法 IOS とメモリの種類 ルータの起動順序 IOS のアクセスレベル パスワードの設定 インターフェースの設定 show コマンド copy コマンド debug コマンド CDP ( Cisco Discovery.
Windows Azure ハンズオン トレーニング Windows Azure Web サイト入門.
ネットワークからみるPCC 寺内康之.
Curlの特徴.
ファイアウォール 基礎教育 (4日目).
Step.5 パケットダンプ Wiresharkでパケットをキャプチャする PC 1 PC 2 PC 3 PC 4 ネットワーク
揮発性情報 2003/05/25 伊原 秀明(Port139).
JXTA Shell (3) P2P特論 (ソフトウェア特論) 第6回 /
第1回.
CCP Express 3.1 リカバリ&初期化ガイド
(株)アライブネット RS事業部 企画開発G 小田 誠
3/4/ :37 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
前回の課題 IPv6アドレス IP ARP ICMP NAT インターネット層 2003年12月4日 情報ネットワーク論 新村太郎.
CCP Express 3.1 初期設定ガイド(WAN/LAN)
IGD Working Committee Update
ネットワーク層.
ネットワーク構成法 スケール 第6回 11月19日.
TCP (Transmission Control Protocol)
WindowsNTによるLAN構築 ポリテクセンター秋田 情報・通信系.
i-Pathルータのフロー情報を用いたDoS攻撃検知法
輪講: 詳解TCP/IP ACE B3 suzuk.
研究背景 クラウドコンピューティングサービスの普及 ユーザ数の増加に伴う問題 マルチテナント方式の採用 データセンタの需要が増加
HTTPプロトコルとJSP (1) データベース論 第3回.
HTTPプロトコル J2EE I 第7回 /
Telnet, rlogin などの仮想端末 ftp などのファイル転送 rpc, nfs
ファイアウォール 基礎教育 (1日目).
SAP & SQL Server テクニカルアーキテクチャ概要 マイクロソフト株式会社 SAP/Microsoft コンピテンスセンター
Provisioning on Multiple Network(NIC) env
ファイアウォール 基礎教育 (2日目).
ASA 新旧NAT詳解 (software ver 8.2 / 8.3)
サーバ負荷分散におけるOpenFlowを用いた省電力法
Copyright Yumiko OHTAKE
Linux リテラシ 2006 第4回 ネットワーク CIS RAT.
Cisco Catalyst 2960L Loop Detection のご紹介 2018 年 1 月.
大阪大学 大学院情報科学研究科 博士前期課程2年 宮原研究室 土居 聡
WLC HA-SKU解説と設定 シスコシステムズ合同会社 上岡 昌人 2014/03/7.
第11章 UDPユーザ・データグラム・プロトコル
TCP/UDP プロセス間の通信のためのプロトコル TCP:信頼性高、処理時間大 UDP:信頼性低、処理時間小 ftp SMTP HTTP
Cisco Router GUI設定 CCPE3.2 紹介 本資料に記載の各社社名、製品名は、各社の商標または登録商標です。
ASA 5506-X 統合セキュリティアプライアンス セットアップガイド
7. セキュリティネットワーク (ファイアウォール)
イーサネットフレームの構造とデータリンク層アドレス
i-Pathルータのフロー情報を用いたDoS攻撃検知法
第9章 Error and Control Messages (ICMP)
Cisco dCloud dCloud登録ルータ配下からのvWLCへのAP接続 シスコシステムズ合同会社 2016年7月.
CCP Express 3.3 アップグレード ガイド
インターネットにおける真に プライベートなネットワークの構築
マルチホーム事例 (大阪市立大学) 学術情報総合センター 大西克実.
Cisco dCloud dCloudへのルータの登録について シスコシステムズ合同会社 2016年7月.
UDPマルチキャストチャット    空川幸司.
Step.1 LinuxとIPコマンド ifconfig [-a] [インタフェース名] arp [-n]
ネットワークプログラミング (3回目) 05A1302 円田 優輝.
DS4000 EXP700 ESM ファームウエア更新手順 (ファームウエアレベル 9326)
Cisco Configuration Professional Express 3.3 アップデート
仮想ネットワークを考慮した SoftIRQ制御によるCPU割当ての手法
最低限インターネット ネットワークにつなぎましょ!
gate登録システム: 設計ポリシーから使い方まで
Db2 Warehouse on Cloud Db2 on Cloud フルマネージドサービス提案時の注意点
Step.8 ファイアウォール PC 3 PC 1 PC 2 許可したアクセス のみ通過させる アクセスする ファイアウォール
Cluster EG Face To Face meeting
CO-Client Opeartion 1.1 利用履歴データベースの設計 (スキーマ バージョン 対応)
岡村耕二 情報ネットワーク 岡村耕二 情報ネットワーク.
異種セグメント端末による 分散型仮想LAN構築機構の設計と実装
アプリケーションゲートウェイ実験 2001.10.5 鬼塚 優.
情報ネットワーク 岡村耕二.
Cisco Umbrella セミナー 第4回 Umbrella 設定概要.
ポートスキャン実習 2002年9月19日 修士1年 兼子 譲 牧之内研究室「インターネット実習」Webページ
プロトコル番号 長野 英彦.
HTTPプロトコルの詳細 M1 峯 肇史.
Presentation transcript:

BN Bootcamp for SE ASA Firewall Cisco Systems Borderless Network Systems Engineering 2018年9月18日

目次 ファイヤーウォールとは? ASA 概要 ASA Product Line Up 知っておきたい ASA Basic High Availability GUI Management Tool ASA ライセンス ASA Packet Flow

ファイアウォールとは?

ファイヤーウォールとは? ネットワークの境界上で、アクセス制御を行う。通信を監視し、 ポリシーを元に転送や破棄を行い保護。 許可されてない通信 パケットフィルタ アプリケーションゲートウェイ サーキットレベルゲートウェイ 許可された通信

なんの為に? 情報セキュリティーの保護 どのようなリスク 情報漏洩 サービス停止 マルウェア 改ざん etc..

攻撃手法 – 例

ASA 概要

ASA Overview ASA: Adaptive Security Appliance 基本機能: ソフトウェア 統合型セキュリティボックス 基本機能:  ファイアウォール(アクセス制御) VPN (安全な通信経路の確保) IPS (侵入検知&防御) Anti-X (未知のウィルスワーム/その他脅威への対策) ソフトウェア Version: 8.4(2) ASA-SM: 8.5.1 Image: asaXXX-X-k8.bin asaXXX-X-smp-k8.bin

Firewall 機能概要 Security Policy Firewall Mode Stateful Inspection Access List, NAT, Application Inspection, Connection Limits, Threat Detection, Botnet Traffic Filter etc.. Firewall Mode Routed (L3) Transparent (L2) Stateful Inspection Adaptive Security Algorithm により、Firewall を通過する全てのトラフィック は State などを検査され、許可/ドロップされる。

Firewall Mode (Routed vs Transparent) ASA の動作モードには以下の2つがある Routed Mode Layer3デバイスとして動作 デフォルトの動作モード Interfaceを3つ以上保持することが可能 Ex. Outside, Inside, DMZ Dynamic Routingも可能 Transparent Mode Layer2デバイスとして動作 既存Addressing体系を変更せずに導入可能 別セグメント 10.1.1.0/24 10.1.2.0/24 Routing 10.1.1.0/24 同一セグメント asa(config)# firewall transparent

ASA Product Line Up

Cisco Firewalls Multiservice Firewall and VPN Service Modules ASA 5585 SSP60 (15-30 Gbps, 350K conn/s) ASA 5585 SSP40 (10-20 Gbps, 240K conn/s) ASA 5585SSP20 (5-10 Gbps, 125K conn/s) ASA 5585 SSP10 (2-4 Gbps, 50K conn/s) Multiservice ASA 5580-40 (10-20 Gbps, 150K conn/s) ASA 5540 (650 Mbps, 25K conn/s) ASA 5520 (450 Mbps, 12K conn/s) ASA 5580-20 (5-10 Gbps, 90K conn/s) ASA 5510 (300 Mbps, 9K conn/s) ASA 5505 (150 Mbps, 4K conn/s) ASA 5550 (1.2 Gbps, 36K conn/s) Firewall and VPN ASA SM (16-20 Gbps, 300K conn/s) Service Modules FWSM (5.5 Gbps, 100K conn/s) Branch Office Internet Edge Teleworker Campus Data Center

知っておきたい ASA Basic

nameif nameif とは ACL/NAT などの設定は、Interface (GigabitEthernet 0/0) ではなく、interface name に紐づくので、 Interface Name が必要。 最大48文字 Internet GigabitEthernet 0/0 Outside DMZ GiabitEthernet 0/2 DMZ GigabitEthernet 0/1 Inside asa(config)# interface GigabitEthernet 0/1 asa(config-if)# nameif inside LAN

Interface Security Level 値が大きければ、より「Secure」なネットワークセグメントに属するInterface だという定義がなされる 通常、下記のように設定される インターネット(Outside)側I/F: 0 LAN(Inside)側I/F: 100 DMZ I/F: 1~99 Internet Outside Security Level: 0 DMZ DMZ Security Level: 50 Inside Security Level: 100 asa(config)# interface GigabitEthernet 0/1 asa(config-if)# security-level 100 LAN

Interface Security Level 原則許可 ACLで明示的に禁止可能 Security Level 低→高 原則拒否 Security Level高→低の TCP/UDP 戻りパケッ トは許可 Security Level 同じ デフォルト原則禁止 設定により原則通過に変更可能 Internet Outside Security Level: 0 Inside Security Level: 100 原則拒否 LAN 原則許可

Mutliple Context 仮想的に複数のFirewallを1つのH/W(ASA)で動作させること MAX250個作成可能(Software ver.8.4以降、それ以前はMAX50個) IPSの仮想化も同時に行うことが出来る(MAX4個) Policyが違う複数のFirewall / IPSを1つのH/Wで動作させることが出来るので、 物理的スペース、配線、管理面において優れている CPU等のリソース、Configurationを各Contextに分配/分割することが可能 Multiple ContextとVPNは同時に使用することが出来ないので注意 Routed, Transparent Context の混在不可 Dynamic Routing不可 営業Policy 人事Policy 技術Policy 仮想的に実現

Mutiple Context 概念 ASA System Space Security Context A B Security Context C 1つの仮想FWを Security Contextという Admin Context(必須) Admin というContextが必須 各ContextへはAdmin経由で アクセスすることも可能 System Spaceにて 各Contextを作成する

ASAファイヤーウォール機能

Access Control Lists (ACL) ACLはASAを経由するトラフィックを制御 (Permit/Deny) 低セキュリティーレベルから高セキュリティーレベルへのトラフィックには必ず 設定 ACLは各インターフェースのdirection毎に1つのAccess Groupを適用。 ACLの設定には access-list 及び access-group コマンドを使用。 inside outside access-list outside_in extended permit tcp any host 192.168.101.1 eq www access-group outside_in in interface outside

Global ACLs インターフェースに依存しないポリシー Version 8.3 より。 新規インストール時や、他ベンダーからの移行時に最適。 Global access-list インターフェス固有 access-list Default (implicit) deny ip any any ポリシー適用順序 Global ACLs are only for transient traffic, not traffic destined to-the-ASA Global ACLs accept IP v4 and v6 ACLs All transient traffic ACLs in ASA ver 8.3 use ‘real-IP’ addressing After applying global ACL, all transient traffic now subjected to the policy (even outbound traffic) access-list global_acl extended permit icmp any any access-group global_acl global © 2009, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

Object Grouping udp tcp Group Object-group Network/Host Protocol telnet Network/Host udp tcp pop3/smtp Group Object-group http Protocol Service ICMP Types unreachable echo-reply echo 注意 オブジェクトごとにグループ分け グループが可能なオブジェクト Network/Host Service Protocol

Object-group コマンド object-group network grp_id asal(config)# object-group network grp_id Assigns a name to a Network group and enables the Network subcommand mode asa(config)# object-group service grp_id tcp | udp | tcp-udp Assigns a name to a Service group and enables the Service subcommand mode asa(config)# object-group protocol grp_id Assigns a name to a Protocol group and enables the Protocol subcommand mode asa(config)# object-group icmp-type grp_id Assigns a name to an ICMP-type group and enables the ICMP-type subcommand mode asa(config)# object-group network MYHOSTS Assigns the name MYHOSTS to a Network group and enables the Network subcommand mode

ACLに適用したときのObject Group access-list obj_acl extended permit tcp any host 192.168.101.101 eq ssh access-list obj_acl extended permit tcp any host 192.168.101.101 eq www access-list obj_acl extended permit tcp any host 192.168.101.101 eq https access-list obj_acl extended permit udp any host 192.168.101.101 eq domain access-list obj_acl extended permit tcp any host 192.168.101.102 eq ssh access-list obj_acl extended permit tcp any host 192.168.101.102 eq www access-list obj_acl extended permit tcp any host 192.168.101.102 eq https access-list obj_acl extended permit udp any host 192.168.101.102 eq domain access-list obj_acl extended permit tcp any host 192.168.101.103 eq ssh access-list obj_acl extended permit tcp any host 192.168.101.103 eq www access-list obj_acl extended permit tcp any host 192.168.101.103 eq https access-list obj_acl extended permit udp any host 192.168.101.103 eq domain object-group service MYSERVICE service-object tcp destination eq ssh service-object tcp destination eq www service-object tcp destination eq https service-object udp destination eq domain object-group network HOSTS network-object 192.168.101.101 255.255.255.255 network-object 192.168.101.102 255.255.255.255 network-object 192.168.101.103 255.255.255.255 access-list obj_acl extended permit object-group MYSERVICE any object-group HOSTS

NAT Basic NAT: Network Address Translation 下図例 Src: 2.2.2.2 IPアドレスの変換を行う機能 内部ネットワークの秘匿、保護 グローバルIPアドレスの節約、有効利用 下図例 行き: HostからServerへのPacket Srcアドレスを変換 (1.1.1.1→2.2.2.2) 帰り: ServerからHostへのPacket Dstアドレスを変換 (2.2.2.2→1.1.1.1) Real IPとMapped IPという名称で、NAT前後のアドレスを表す(下記参照) 1.1.1.1(実際にHost上で設定されているアドレス)をReal IP 2.2.2.2(NAT後に使われるアドレス)をMapped IP Src: 2.2.2.2 Dst: 10.1.1.1 Src: 1.1.1.1 Dst: 10.1.1.1 Src: 10.1.1.1 Dst: 2.2.2.2 Src: 10.1.1.1 Dst: 1.1.1.1 Server Host

New NAT (s/w ver 8.3以降) Concept & Syntax変更 Security Levelに依存しない Access Control と別離した設計・設定が可能 Interfaceに依存しない ACLサポートを必要としない 各種 “object” という概念を用いることが可能 ex. Static NAT (to all interfaces) ver 8.2以前 ver 8.3以降 static (inside,outside) 1.1.1.1 2.2.2.2 static (inside,dmz1) 1.1.1.1 2.2.2.2 static (inside,dmz2) 1.1.1.1 2.2.2.2 static (inside,dmz3) 1.1.1.1 2.2.2.2 static (inside,dmz4) 1.1.1.1 2.2.2.2 static (inside,dmz5) 1.1.1.1 2.2.2.2 object network SRC_REAL host 1.1.1.1 nat (inside,any) static 2.2.2.2

New NAT syntax (s/w ver 8.3以降) Network Object NAT Twice NATよりも設定が容易 Real IPにNetwork Object Group利用不可 Twice NAT Real IPにNetwork Object Group利用可能 Service Object 利用可能 変換順序を任意に設定できる Network Object NATの前後に配置可能 Section内での変換順序指定が可能 Destinationの指定が出来るので、Destination変換が必要な場合に用いる ex. Policy NAT, Identity NAT ? 使い分けに関して 基本はNetwork Object NATの利用を推奨 但し、上記のような各種機能、ObjectやOption(詳細後述)を利用したい場合にはTwice NATを利用する (Twice NATをメインで利用しても技術的に問題は無い。但し、Twice NATとNetwork Object NATはNAT エントリー上Section が分割される。これを利用すると管理性が向上する為、必要が無い場合はNetwork Object NATを推奨(次ページ参照)。)

Identity NAT等(後述)のFirtstMatchすべき設定の為に、TwiceNATでは順序(line)指定を行うことが可能 NAT 順序(s/w ver 8.3 以降) First Match ASA# show nat Manual NAT Policies (Section 1) 1 (inside) to (outside) source static SRC1 MAP1 translate_hits = 0, untranslate_hits = 0 2 (inside) to (outside) source static SRC2 MAP2 Auto NAT Policies (Section 2) 1 (inside) to (outside) source static SRC10 MAP10 2 (any) to (any) source dynamic SRC11 MAP11 Manual NAT Policies (Section 3) 1 (any) to (any) source static SRC20 MAP20 Twice NAT(Section 1) Network Object NAT(Section 2) Static Rule Dynamic Rule Twice NAT (after-auto) (Section 3) Identity NAT等(後述)のFirtstMatchすべき設定の為に、TwiceNATでは順序(line)指定を行うことが可能 s/w ver 8.2以前のNAT順序は資料後半“NAT Tips”章に掲載

New NAT syntax (s/w ver 8.3以降) Network Object NAT Twice NAT static NAT/ PAT nat [(real_ifc,mapped_ifc)] static {mapped_network_ip | mapped_obj | interface} {[dns] | [service {tcp|udp} real_port mapped_port]} dynamic NAT/ PAT nat [(real_ifc,mapped_ifc)] dynamic {mapped_host_ip [interface] | mapped_obj [interface] | interface} [dns] nat [(real_ifc,mapped_ifc)] [line | {after-auto [line]}] source {static {real-obj|any} {mapped_obj | interface | any}} | {dynamic {real-obj|any} {mapped_obj [interface] | interface}} [destination static {mapped_obj| interface} {real_obj | any}] [service {real_svc_obj|any} mapped_svc_obj] [dns] [unidirectional] [inactive] [description desc] 実際にはこれ以外にObject定義が必要

New NAT syntax (s/w ver 8.3以降) Twice NAT nat [(real_ifc,mapped_ifc)] [line | {after-auto [line]}] source {static {real-obj|any} {mapped_obj | interface | any}} | {dynamic {real-obj|any} {mapped_obj [interface] | interface}} [destination static {mapped_obj| interface} {real_obj | any}] [service {real_svc_obj|any} mapped_svc_obj] [dns] [unidirectional] [inactive] [description desc] ASA# show nat Manual NAT Policies (Section 1) 1 (inside) to (outside) source static SRC1 MAP1 translate_hits = 0, untranslate_hits = 0 2 (inside) to (outside) source static SRC2 MAP2 Auto NAT Policies (Section 2) 1 (inside) to (outside) source static SRC10 MAP10 2 (any) to (any) source dynamic SRC11 MAP11 Manual NAT Policies (Section 3) 1 (any) to (any) source static SRC20 MAP20 line 指定により 変換順序の指定が可能 after-autoにより Section3にエントリを作成 実際にはこれ以外にObject定義が必要

アプリケーションインスペクション概要 主要なアプリケーションのトラフィックに関しては、アプリケーションインスペクションを設定することで、L7 (アプリケーション層) の情報に基づいてトラフィックの制御を行い、より高度なフィルタリングが可能 例) ACL によるフィルタリングのみの場合 ウェブサーバ Internet 適切なHTTP リクエスト inside outside ウェブサーバに対するHTTP トラフィックを許可 ⇒ GET 以外でも許可される 悪意のあるHTTP リクエスト 例) GET 以外のHTTP Method 例) アプリケーションインスペクションによる制御 ウェブサーバ Internet × 適切なHTTP リクエスト inside outside HTTPのヘッダを見てGET のみ許可 ⇒ GET 以外はドロップされる 悪意のあるHTTP リクエスト 例) GET 以外のHTTP Method

インスペクションとMPF (Modular Policy Framework) インスペクションにより、トラフィックのステート情報、アプリケーションレベルの情報を考慮したより高度な制御が可能 インスペクションはMPF (Modular Policy Framework) を用いて設定を行う MPF (Modular Policy Framework) 特定のトラフィックに対してQoS、インスペクション等のアクションを柔軟に適用するための仕組み 1. ACL 等に従ってトラフィックをClass に分類 2. Class に応じたアクション(QoS、インスペクション等)を適用 この一連のルール(ポリシー) を特定のインターフェイス、もしくはすべてのインターフェイスに対して適用する デフォルトのインスペクション設定 デフォルトでは次のトラフィックに対するインスペクションが有効 dns, ftp, h323 h225, h323 ras, ip options, netbios, rsh, rtsp, skinny, esmtp, sqlnet, sunrpc, tftp, sip, xdmcp ※ICMP はデフォルトでインスペクションが行われないことに注意

ICMP のインスペクション デフォルトで無効になっているICMP のインスペクションを有効にすることで、 内部ネットワークから外部ネットワークに対する ping の戻りパケットを 自動的に許可することが可能 デフォルトの状態(ICMP インスペクション: 無効) ICMP echo inside outside ICMP echo reply inside からのping による疎通確認のために outside にICMP を通すようなACL を 設定する必要がある outside → inside の通信は原則拒否 ICMP インスペクション: 有効 ICMP echo inside outside ICMP echo reply inside からのping による疎通確認のために outside にACL を設定する必要なし inside からの通信の戻りパケットは許可

HTTP インスペクション設定概要 ここではアプリケーションインスペクションの例としてHTTP のインスペクションの設定を行う src: 10.71.153.10 dst: 192.168.142.1:80 src: 10.71.153.10 dst: 10..71.153.84:80 192.168.142.1 inside outside NAT 192.168.142.1 <-> 10.71.153.84 ウェブサーバの公開アドレス 10.71.153.84 にHTTP アクセス HTTP インスペクションの設定シナリオ HTTP Request のMethod は GET のみ許可 1024byte を超えるようなRequest は拒否 ポリシーはoutside のインターフェイスに適用 HTTP インスペクションの設定手順 適用インターフェイスの指定 対象トラフィックの指定 インスペクションルールの作成

インスペクション設定 / 確認 ! policy-map type inspect http http_map parameters match not request method get reset log match request body length gt 1024 policy-map global_policy class inspection_default inspect dns preset_dns_map inspect ftp inspect h323 h225 inspect h323 ras inspect ip-options inspect netbios inspect rsh inspect rtsp inspect skinny inspect sqlnet inspect sunrpc inspect tftp inspect sip inspect xdmcp inspect icmp inspect esmtp esmtp_map inspect http http_map $ telnet 10.71.153.84 80 Trying 10.71.153.84... Connected to 10.71.153.84. Escape character is '^]'. GET / HTTP/1.0 HTTP/1.1 200 OK Date: Thu, 08 Dec 2011 19:56:47 GMT Server: Apache/2.2.3 (CentOS) Last-Modified: Fri, 25 Mar 2011 06:32:44 GMT ETag: "289443-b2-c2f2db00" Accept-Ranges: bytes Content-Length: 178 Connection: close Content-Type: text/html; charset=UTF-8 <html> <head><title>Intranet Server for Test</title></head> <body bgcolor="0xcccccc"> <h2>Intranet Server for Test</h2> <h3>This server is for Internal Test</h3> </body> </html> POST / HTTP/1.0 Connection closed by foreign host.

Connection Limits DoS 攻撃から防御する為に embryonic (Half Syn) などを制限可能 syn/ack ack syn syn/ack syn Limiting the number of embryonic connections protects you from a DoS attack. The ASA uses the per-client limits and the embryonic connection limit to trigger TCP Intercept, which protects inside systems from a DoS attack perpetrated by flooding an interface with TCP SYN packets. An embryonic connection is a connection request that has not finished the necessary handshake between source and destination. TCP Intercept uses the SYN cookies algorithm to prevent TCP SYN-flooding attacks. A SYN-flooding attack consists of a series of SYN packets usually originating from spoofed IP addresses. The constant flood of SYN packets keeps the server SYN queue full, which prevents it from servicing connection requests. When the embryonic connection threshold of a connection is crossed, the ASA acts as a proxy for the server and generates a SYN-ACK response to the client SYN request. When the ASA receives an ACK back from the client, it can then authenticate the client and allow the connection to the server. Connection Limit 設定 conn-max embryonic-conn-max per-client-max per-client-embryonic-max syn/ack syn syn/ack syn ack syn/ack ack

Botnet Traffic Filterの概要 Cisco® Security Intelligence Operations (SIO) Internet 2 1 Cisco ASA Botnet Filter 3 Step 1: 感染クライアントはインターネット上のコマンド&コントロールホストに接続を試みる Step 2: Cisco SIO により ASAの Botnet Filterリストをアップデート、宛先は知られた攻撃サイトと認識される Step 3: セキュリティチームに防御、軽減、修復のためのアラートが送られる

Botnet Traffic Filterの動作 Cisco Security Intelligence Operations(SIO)にて常時アップデートさ れているBotnetサイトデータを登録 感染したホストとBotnetサイトとの通信をモニタリング 送信元IP・宛先IP・ポート番号etc Syslog等のアラート通知が可能 ASA v8.3よりブロッキング可能 Anti-Malware 38

DNS Snooping DNS Snoopingとは DNS Reply packet ASA Model Maximum DNS reverse cache entries 5505 5,000 5510 10,000 5520 20,000 5540 40,000 5550 5580 100,000 DNS Snoopingとは Botnet Traffic Filterの「Dynamic database」ま たは「Local Lists」に含まれているドメイン名に対 応するIPアドレスをマッピング UDP DNSトラフィック内に含まれるAおよび CNAMEレコードを監視 SIOから取得したデータ ①DNS Request ②DNS replyを参照し SIOデータ内に存在するかチェック ③SIOデータに存在している場合はDNSRCに登録 ④DNSRCに存在する場合はログを出力 DNSRC(DNS reverse cache) DNS Reply packet 39

Botnet Traffic Filterガイドライン Single / Multi Context、Routed / Transparent Mode全てでBTFはサポートされる。 DNSRCのサイズに依存するが、概ね5-10%程度のパフォーマンスインパクトがある。 Failoverについて A/SでもA/Aでもサポート。 DNSRCやDynamic DBは同期されない。 どちらのASAもインターネット上のアップデートサーバに直接アクセスできる 必要がある。 DNS SnoopingはUDP DNSのみサポート。 IPv4アドレスのみサポート。 CSIO

Threat Detection ASA でドロップしたパケットを統計的に可視化 一定間隔毎にイベントをトラッキング Threat が検出されると、syslog event 730100 を送信 2つのオプション: Basic / Advanced Basic: デフォルトで enable パフォーマンスへのインパクトはない Advanced: ポート、プロトコル、個々のホストなど、より詳細なトラッキングを行う。大幅に CPU に影響を与える可能性がある。 8.3 よりメモリーの optimization が行われた ‘show threat-detection memory’ により、メモリーの状態を確認可能

Threat Detection Statistics Denial by access lists Bad packet format Connection limits DoS attack detected Basic firewall checks failed Suspicious ICMP packets detected Packets failed application inspection Interface overload Scanning attack detected Incomplete session detection such as TCP SYN attack detected or no data UDP session attack detected

Identity Firewall とは AD のユーザ/グループをアクセスリストのマッチ条件に使用可能 FQDN でオブジェクト指定可能 access-list aclname extended permit ip user TDLAB\salesuser any any access-list aclname extended permit ip user-group TDLAB\\group.sales any any FQDN でオブジェクト指定可能 object network sales_server fqdn sales.demo.cisco.com access-list aclname extended permit ip user-group TDLAB\\group.sales any sales_server Security ACL だけでなく、MPF でも利用可能 AIP-SSM と組み合わせて、IPS 検査するユーザとしないユーザを分けたり、IPS 側のセンサーを複 数作って、違うポリシーで検査したりといったことができるようになります。 ユーザ毎にIPS 検査のポリシーを分ける例 IT ユーザ IPS 検査なし Sales ユーザ 厳しいポリシー Engineering ユーザ 緩いポリシー

Identity Firewallのコンポーネント 3 2 WMI AD Agent Active directory Internet LDAP RADIUS 1 LAN/WAN NetBIOS Probe ASA 5500 Mktg.cisco.com 10.1.2.3 HTTP(S) CS Manager Cisco ASA 5500 Appliance Off-box AD Agent AD Domain Controllers キー・コンポーネント © 2009, Cisco Systems, Inc. All rights reserved. Presentation_ID.scr

Identity Firewall 仕組み WMI RADIUS LDAP AD Agent RADIUS WMI ASA 5500 Active directory LDAP ASA は AD からユーザやグループの情報をLDAPを利用して取得します。管理者は、取得 した情報を使って、ASA上にポリシー設定を行います。(Identity ベースのポリシー設定) AD Agent は、WMIを使ってAD の セキュリティイベントログをユーザのログイン、ログ オフ情報を監視しユーザとIPアドレスのマッピング情報を取得、更新します。 ASA は AD Agent に対して、RADIUS プロトコルでユーザとIPアドレスのマッピング情報 を要求します。 ASA は通過するトラフィックのIPアドレスから、ユーザ情報とそのユーザが属するグルー プ情報を識別し、該当するアクセスリストを適用する。

Identity Firewall によって IPアドレス変更を意識する必要がなくなる(運用コスト/ミス削減) マッチ条件としてユーザ名、グループ名を利用しているので、DHCP やユーザの移動、 アドレス設計自体の変更など、アドレスの変更に合わせてポリシーの修正をする必要がなく なります。サーバについても FQDN を利用することで、同様の効果があります。 ネットワークとポリシーを完全分離(単純化) 同等のことをこれまで実現するには、グループ毎に割り当てるIPアドレスをDHCPで決定し たり、802.1x と組み合わせて VLAN をユーザに割り当てるといったほかの技術との組み合 わせが必要で複雑、大仰だったものを、大幅に単純化しています。 誰が何をする/したかの識別性向上(見える化) Identity ベースであるため設定画面を見て、誰が何をするのか圧倒的に見易くなっています。 show access-list はもちろんのこと、show conn もユーザベース表示になり実際どのユーザ がどこにアクセスしているのかを見るのも容易です。

High Availability

Failover 2台のASAで冗長性を確保する機能 Active/Standby構成と、Active/Active構成が有 Configuration NAT Table MAC Address Table TCP/UDP Connection etc… Active/Standby構成と、Active/Active構成が有 筐体のネーミングとステータス 2台の筐体はそれぞれ “Primary”と “Secondary”と名付けられている(固定). Active / Standby Failover構成時,ステータスはそれぞれActiveとStandbyとな る(可変). Active / Active Failover構成時,ステータスは筐体単位では両方がActiveとなり, それぞれのContext単位のステータスがAcitve / Standbyとなる(可変).

Failoverの基本 Failover Link Stateful Failover Link The unit state (active or standby) Hello messages (keepalives) Network link status MAC address exchange Configuration replication and synchronization Stateful Failover Link Connection情報(TCP, UDP, ICMP) NAT Table ARP Table ISAKMP / IPSec SA HTTP Connection情報(HTTP Replication有効時) Layer2 Bridge Table(Transparent Firewall Mode時) 以下の情報はStandbyへコピーされない HTTP Connection情報(HTTP Replication無効時) ユーザー認証情報(uauth) Security Service Moduleのステート情報

Failoverのしくみ (Active/Standby) 1 Active IP address 192.168.1.1 Standby IP address 192.168.1.2 Active IP address 192.168.1.1 Standby IP address 192.168.1.2 コンフィグの同期 Primary / Secondaryコンフィグの内容を同期 ACL, Route, NAT ACL, Route, NAT Primary Unit Secondary Unit Failover Interface (hello, sync) Active IP Address 192.168.1.1 Standby IP Address 192.168.1.2 Stateful Failover Interface 2 障害 各種ステータス情報を随時コピー Active Unit Active IP Address 192.168.1.1 ステータス情報 NATテーブル TCP・UDPコネクション情報 H323・SIP・MGCP ARP/MACアドレステーブル(トランスピアレントモード) ISAKMP SA ,etc … Failover Interfaceでコンフィグの同期を行う。 Stateful Failover Interfaceでセッション情報の同期を行 う。

Failover構成例 (Active/Standby) Gi0/1:inside,192.168.1.1 Gi0/0:outside,10.1.1.1 ASA-1 Gi0/4:stateful,2.2.2.1 Gi0/3:failover,1.1.1.1 Outside Network Inside Network Stateful Failover Link Failover Link Gi0/3:failover,1.1.1.2 Gi0/4:stateful,2.2.2.2 ASA-2 Gi0/0:outside,10.1.1.2 Gi0/1:inside,192.168.1.2 Standby ActiveとStandbyの全てのインターフェースにIPアドレスを設定する。 Active側のIPアドレスと仮想MACアドレスを、Failoverが発生した時にStandby側が引き継ぐ。 Failover Linkは独立したケーブルを使用することを奨励。 Failover Linkはクロスケーブルまたは専用スイッチを経由して設置

Failover (Active / Active) Virtual Firewallモードでの稼 動必須(最低2 コンテキス ト) ライセンスの必要無し(2 つ のコンテキストの場合)。 Adminを含むと3つのコンテ キストになる。 failover group概念を使用 Active/Active構成のために2 つのfailover groupが存在 Failover groupのステータス は片方がActive、他方が Standby 各Firewall Contextは failover groupにマッピングさ れる(デフォルトはGroup1) Adminコンテキストは必ず Failover Group1に所属 Standby Active Context 1 Standby Active Context 2 Standby Active Admin Failover group 1 Failover group 2 Context 1 Context 2 Admin Active/Active 構成の例

Active / Active HA 構成図 FW-B FW-A FW-Aには2つのFailover Groupを設定。Group1がActive、Group2がStandbyに選択されるように設定している。 .1 TOP .1 10.1.1.0/24 VLAN 200 VLAN 100 10.1.2.0/24 FW-B FW-A .1 .2 .2 .1 Failover #1 act #2 sby #1 sby #2 act Ctx A .1 .2 .2 .1 192.168.2.0/24 VLAN 101 VLAN 201 192.168.1.0/24 Server 192.168.1.100 Server 192.168.2.100

Failover 設定例(Active / Standby構成) Primary Secondary ip address [active_addr] [netmask] standby [standby_addr] 各インターフェイスの IP Address と Standby Unit の IP Address の設定 (Failover Link を除く). failover lan unit primary Unit の Role の設定. failover lan interface [if_name] [phyical_if] Failover Link にどのインターフェイスを使用するか設定. failover interface ip [if_name] [ip_address] [netmask] standby [ip_address] Failover Link の IP Address の設定. interface [physical_if ] no shutdown Failover Link インターフェイスの no shutdown. failover Failover の有効化. Secondary failover lan interface [if_name] [physical_if] Failover Link にどのインターフェイスを使用するか設定. failover interface ip [if_name] [ip_address] [netmask] standby [ip_address] Failover Link の IP Address の設定. interface [physical_if ] no shutdown Failover Link インターフェイスの no shutdown. failover lan unit secondary Unit の Role の設定. failover Failover の有効化.

Failover 設定例(Active / Active構成) Primary Secondary changeto [context] interface [physical_if] ip address [active_addr] [netmask] standby [standby_addr] 各 Context 内の各インターフェイスに IP Address と Standby 用 IP Address を設定する. changeto system system context 設定モードへ移行 failover lan unit primary Unit の Role の設定 failover lan interface [if_name] [physical_if] Failover Link にどのインターフェイスを使用するか設定. failover interface ip [if_name] [ip_address] [mask] standby [ip_address] Failover Link の IP Address の設定. interface [phycal_if] no shutdown Failover Link インターフェイスの no shutdown. failover group {1 | 2} {primary | secondary} それぞれの Unit がどちらの Failover Group に属するか設定. context [context name] join-failover-group {1 | 2} それぞれの Context がどちらの Failover Group に属するか設定. failover Failover の有効化. Secondary failover lan interface [if_name] [physical_if] Failover Link にどのインターフェイスを使用するか設定. failover interface ip [if_name] [ip_address] [netmask] standby [ip_address] Failover Link の IP Address の設定. interface [physical_if ] no shutdown Failover Link インターフェイスの no shutdown. failover lan unit secondary Unit の Role の設定. failover Failover の有効化.

EtherChannel Support LACP/ IEEE 802.3ad Active/Passive(LACP), On (Static) ハッシュアルゴリズム ロードバランス(デフォルトSrc/dst IP) Support all ASA Modes  最大48 の 802.3ad Etherchannel 最大16 ポートを集約 (LACP: Active 8ポート, Standby 8ポート) 単一MAC addressを共有 Channel 上にVLANインターフェイス作成可 ASA5505, 4GE SSMを除く全機種対象 Version 8.4(1)以降

EtherChannel Support EtherChannel 設定コマンド Port-channel の作成と削除 [no] interface port-channel <num> Syntax description: interface keyword interface port-channel interface port-channel to be created <num> port-channel identifier; range from 1 to 48

EtherChannel Support EtherChannel 設定コマンド Member の登録と削除 [no] channel-group <num> mode { active | passive | on } Syntax description: channel-group keyword channel-group <num> port-channel identifier; range from 1 to 48 mode specify aggregation method active LACP active mode; member initiates negotiation passive LACP passive mode; member responds once peer initiates negotiation on static port-channel mode

EtherChannel Support EtherChannel 設定コマンド Load Distribution Algorithm [no] port-channel load-balance { dst-ip | dst-ip-port | dst-mac | dst-port | src-dst-ip | src-dst-ip-port | src-dst-mac | src-dst-port | src-ip | src-ip-port | src-mac | src-port | vlan-dst-ip | vlan-dst-ip-port | vlan-only | vlan-src-dst-ip | vlan-src-dst-ip-port | vlan-src-ip | vlan-src-ip-port } Syntax description: dst-ip Dst IP Addr dst-ip-port Dst IP Addr and TCP/UDP Port dst-mac Dst Mac Addr dst-port Dst TCP/UDP Port src-dst-ip Src and Dst IP Addr src-dst-ip-port Src and Dst IP Addr and TCP/UDP Port src-dst-mac Src and Dst Mac Addr src-dst-port Src and Dst TCP/UDP Port

EtherChannel - Configuretion Po1 Gig3/1 Gig3/0 interface GigabitEthernet3/0 channel-group 1 mode active interface GigabitEthernet3/1 channel-group 1 mode active   interface Port-channel1 lacp max-bundle 4 port-channel min-bundle 2 port-channel load-balance dst-ip nameif etherchannel ip address 1.1.1.1 255.255.255.0 security-level 100 ASA Switch

EtherChannel - Configuretion EtherChannel 設定例(VLAN/dot1Q Trunking) interface GigabitEthernet3/0 channel-group 48 mode active interface GigabitEthernet3/1 interface port-channel 48.100 vlan 100 nameif inside security-level 100 ip address 172.16.1.100 255.255.255.0 interface port-channel 48.200 vlan 200 nameif outside security-level 0 ip address 172.16.2.100 255.255.255.0 Trunk port on VLAN 100, 200 VLAN100 Gig3/1 Gig3/0 VLAN200 ASA Switch

GUI Management Tool

ASDM

初期設定(ASDM 端末の設定) 管理ネットワークの設定と、GUI 管理ツール(ASDM)アクセス端末のIPアド レス の指定をセットアップウィザードで設定することが可能であるが、管 理ネットワークの利用が前提となる。この例では管理ネットワークを用い ず inside ネットワークから管理を行い、その為の設定をコンソールから行 う。 ciscoasa> enable Password: ciscoasa# write erase Erase configuration in flash memory? [confirm] [OK] ciscoasa# reload System config has been modified. Save? [Y]es/[N]o: Proceed with reload? [confirm] ciscoasa# *** *** --- START GRACEFUL SHUTDOWN --- (略) Rebooting..... [Pre-configure Firewall now through interactive prompts [yes]? No ciscoasa# conf t ciscoasa(config)# hostname ASA5520-L02-02 ASA5520-L02-02(config)# int g0/1 ASA5520-L02-02(config-if)# nameif inside INFO: Security level for "inside" set to 100 by default. ASA5520-L02-02(config-if)# ip address 192.168.1.1 255.255.255.0 ASA5520-L02-02(config-if)# no shut ASA5520-L02-02(config-if)# asdm image disk0:/asdm-641.bin ASA5520-L02-02(config)# http server enable ASA5520-L02-02(config)# http 0.0.0.0 0.0.0.0 inside ASA5520-L02-02(config)# write mem 設定の消去 セットアップ ウィザードを行わない ホスト名 ASDM アクセス画面 インターフェース g0/1 にinside を割当て 192.168.1.1/24 インターフェース有効 利用する asdm イメージを指定 http サービス有効 http/asdm アクセス端末指定 コンソールセットアップ例

ASDMラウンチャインストール 以降の設定は ASDM(Adaptive Security Device Manager)を用いて設定を行う。 ASDM を起動するには、ブラウザから、下記を実行 https://<ASA に割り当てた IP アドレス> ASDM ラウンチャをインストールした場合は、次回以降ラウンチャから起動可 ローカルにラウンチャをインストールして実行する場合 ラウンチャをインストールせず実行する場合

設定内容を事前表示するための設定 ASDM で設定変更を行う際、ASA への適用時にCLI での設定内容を表 示させることが可能 設定を送信する前に コマンドを表示させる

© 2006 Cisco Systems, Inc. All rights reserved. Cisco Security Manager Firewall, VPN ,IPSの包括的・統合管理 4.2 Device View Policy View Map View Event View Presentation_ID © 2006 Cisco Systems, Inc. All rights reserved. Cisco Confidential 67

CSM

CSM Tool 例: 無意味な ACL Analysis ACL の Redundant/Conflict などを検出 Deployment 前に使用可能

CSM Tool 例: ACL の順番違い

CSM Tool Combine Rules Rule でまとめられそうなものを一つにまとめる 但し CSM の表示のみで、実際の Config は変わらない

CSM Tool Hit count query ACL の hit count をほぼリアルタイムに確認

ASDM / CSM Packet Tracer 疑似 packet を発生させ、packet の pass/drop を確認できる ACL で drop した場合、”show access rule” で該当 Entry を表示 Deploy 後使用可能

ASDM / CSM Packet Capture Src/Dst をして ASA 上で実際の packet をキャプチャ可能 キャプチャデータの保存及び wireshark 等で表示可能

ASDM / CSM Event Viewer Event Viewer “Go To Policy” から該当 ACL 表示

ライセンス

ASAのライセンス 大まかに以下の4種類のライセンスに分類される。 基本ライセンス: Base License, Security Plus License(5505/5510のみ), 機能拡張ライセンス(必要に応じて数量を追加): Security Contexts, UC Proxy Session, SSL VPN Session, 機能拡張ライセンス(デバイス毎に固定): Adv. End point Assessment(VPN), Encryption, Botnet Traffic Filter 機能変更ライセンス: Any Connect Essentials, Shared License, Flex License

ASA VPN基本ライセンス 何もライセンスを追加しないと以下のような機能のみ有効になる。 SSL VPN Session counts 2 Basic VPN License SSL VPN Session counts 2 sessions Client SSL VPN AnyConnect Clientless SSL VPN CSD Function (Vault, Host Scan, Cache Cleaner)

Security Plus Pertains Only to ASA 5505, 5510, 5585-X SSP-10 & 20 Part Numbers: ASA5505-SEC-PL=, ASA5510-SEC-PL=, ASA5585- SEC-PL=   5505 5510 5585-X SSP-10 5585-X SSP-20 Feature Base Sec Plus IPSec Peers 10 25 250 5K 10K Concurrent Connections 25K 50K 130K 1M 2M VLANs 3, 1/restricted 20 50 100 1024 Trunking No Yes (8) Yes Contexts 2 High Availability Yes, Active/Stdby not stateful Yes, Active/Stdby Interfaces 8 4 10/100 3 10/100 2 GE 10GE Disabled, Fiber= GE 10GE Enabled, Fiber= 10GE VPN Load Balancing Required Version 7.2.(2)+ 7.2.(3)+ 8.2(4) 8.2(3)

Security Context Licensed based on the total number of virtual firewalls (contexts) used per appliance. Base license= 2 Security Contexts for each appliance except 5505 and 5510. Security Plus License enables 2 Security Contexts on the 5510, 5505 is not capable of running in a virtualized mode. Part Numbers ASA5500-SC-5, ASA5500-SC-10, ASA5500-SC-20, ASA5500-SC-50 , L-ASA5500-SC-100, L-ASA5500-SC-250 Context licensing is not additive. Upgrade part number is used to increase the total number of contexts. Upgrade Part Numbers: ASA5500-SC-5-10=, ASA5500-SC-10-20=, ASA5500-SC-20-50=, ASA-SC-50-100=, ASA-SC-100-250= Required Version: 7.0(X)+ Shared licenses are not supported in multiple context mode. Multiple context mode and VPN are incompatible.

Strong Encryption (3DES/AES) DES is included with all ASA base licenses (K8 SKUs) To enable strong encryption for VPNs (3DES/AES) you will need this license (K9 SKUs) Selectable item in Dynamic Config Tool (no cost) Part Numbers: ASA5500-ENCR-K9 Required Version: 7.0(X)+

Other VPN This license is included in the Base license (no cost). IPsec remote access VPN using IKEv1 IPsec site-to-site VPN using IKEv1 IPsec site-to-site VPN using IKEv2 Required Version: 7.0(X)+ (IKEv1) 8.4(1)+ (IKEv2) Active / Standby is the only failover mode supported when using VPNs on ASA platforms.

AnyConnect Essentials Licenses the ASA to provide IPSec remote access VPN using w/IKEv2 and SSL VPN with AnyConnect clients Licensed per appliance, up to the platform limit Does NOT support Clientless SSL VPN, Cisco Secure Desktop (CSD), or VPN Phone connections AnyConnect Essentials and AnyConnect Premium licenses can NOT be run simultaneously on the same appliance Part Numbers L-ASA-AC-E-55XX= Required Version: 8.2(1)+

AnyConnect Premium Licensed per concurrent user connection and per appliance. Clientless SSL VPN, Cisco Secure Desktop (CSD), and VPN Phone* Connections (with UC 8.0). Licenses are not additive; if additional users are required, use upgrade part number to support more users, up to platform limit. Each platform comes enabled with 2 Premium Licenses for evaluation and testing. Part Numbers: L-ASA-SSL-10, L-ASA-SSL-25, L-ASA-SSL-50, L-ASA-SSL- 100, L-ASA-SSL-250, L-ASA-SSL-500, L-ASA-SSL-700, L-ASA-SSL-1000, L-ASA-SSL-2500, L-ASA-SSL-5000, L-ASA-SSL-10K Upgrade Part Numbers: L-ASA-SSL-10-25, L-ASA-SSL-25-50, L-ASA-SSL- 50-100, L-ASA-SSL-100-250, L-ASA-SSL-100-500, L-ASA-SSL-100-750, L- ASA-SSL-100-1K, L-ASA-SSL-250-500, L-ASA-SSL-500-750, L-ASA-SSL- 500-5K, L-ASA-SSL-750-1K, L-ASA-SSL-1K-2500, L-ASA-SSL-2500-5K, L- ASA-SSL-5K-10K Required Version: 7.1(1)+ Introduced as “SSL VPN” 8.2(1) Name changed to “AnyConnect Premium SSL VPN Edition” 8.3(1) Name changed to “AnyConnect Premium SSL VPN” 8.4(1) Name changed to “AnyConnect Premium” * Not incl. w/Premium. Requires separate VPN Phone License!

Essentials vs. Premium Features 1 You can only have one license type active, either AnyConnect Essentials or AnyConnect Premium. By default, the ASA includes an AnyConnect Premium license for 2 sessions. Remember! Mobile, Advanced Endpoint Assessment, and AnyConnect Premium Shared are NOT incl. w/Essentials or Premium. They MUST be purchased separately.

ASA Packet Flow

パケットプロセスフローダイアグラム Ingress Interface: 入力インターフェイス Yes No Drop Xmit Pkt 1 3 4 5 6 7 9 10 11 Existing Conn Recv L2 Addr L3 Route Egress Interface NAT IP Header ACL Permit 8 Ingress 2 L7 NAT Sec Checks Match xlate Ingress Interface: 入力インターフェイス Egress Interface: 出力インターフェイス

パケットプロセス: Ingress Interface Inputカウンター増加 Software input queueによりLoad 状況確認可能 “No buffers”によるパケットドロップは,トラフィックの過負荷, もしくはCPU過負荷が原因. ASA-5540# show interface gb-ethernet1 interface gb-ethernet1 "inside" is up, line protocol is up Hardware is i82543 rev02 gigabit ethernet, address is 0003.470d.6214 IP address 10.1.1.1, subnet mask 255.255.255.0 MTU 1500 bytes, BW 1 Gbit full duplex 5912749 packets input, 377701207 bytes, 0 no buffer Received 29519 broadcasts, 0 runts, 0 giants 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 286298 packets output, 18326033 bytes, 0 underruns input queue (curr/max blocks): hardware (0/25) software (0/0) output queue (curr/max blocks): hardware (0/3) software (0/0)

パケットプロセス: コネクション確認 最初にコネクションの存在を確認 パケットプロセス: コネクション確認 最初にコネクションの存在を確認 もし該当するコネクションが存在し,フローがマッチする場合, ACLチェックをバイパス コネクションが存在しない場合 TCP non-SYN パケット: Drop, Log TCP SYN ,UDP パケット: ACLチェック Established Connection: ASA-5540# show conn TCP out 198.133.219.25:80 in 10.1.1.9:11030 idle 0:00:04 Bytes 1293 flags UIO Connectionが存在しない状態でSYNではないパケットを受信した場合: ASA-6-106015: Deny TCP (no connection) from 10.1.1.9/11031 to 198.133.219.25/80 flags PSH ACK on interface inside

パケットプロセス: ACL チェック フローのファーストパケットはInterface ACLを確認 ACLは該当するリストのファーストマッチ Denyパケットは拒否され,ドロップし,ログを生成する パケットがACLによって許可された場合: ASA-5540B# show access-l inside access-list inside line 10 permit ip 10.1.1.0 255.255.255.0 any (hitcnt=1) パケットがACLによって拒否された際のsyslog情報: ASA-4-106023: Deny tcp src inside:10.1.1.9/11034 dst outside:198.133.219.25/80 by access-group "inside"

パケットプロセス: Translationマッチ フローのファーストパケットはトランスレーションルールに マッチする必要がある Egress Interface決定のためにRoute Lookupが行われる トランスレーションルールにより,アドレス変換、アドレス無変換が可能 トランスレーションルールがマッチした場合,コネクションが作成される Translationが存在する場合: ASA-5540# show xlate debug NAT from inside:10.1.1.9 to outside:172.18.124.68 flags - idle 0:00:07 timeout 3:00:00 Translationが存在しない場合のsyslog出力例: (305005—No NAT; 305006—No Global) ASA-3-305005: No translation group found for tcp src inside:10.1.1.9/11039 dst outside:198.133.219.25/80 ASA-3-305006: regular translation creation failed for tcp src inside:10.1.1.9/11040 dst outside:198.133.219.25/80

トランスレーションとNATの優先順序 Translation Matching nat 0 access-list (nat-exempt) Pre version 8.3 Version 8.3+ nat 0 access-list (nat-exempt) Match existing xlates Match static commands (Cisco ASA/PIX first match; FWSM best match) Match nat commands Manual NAT entries Auto NAT entries After-Auto NAT entries First Match First Match

パケットプロセス: L7 NAT/Securityチェック Inspection機能がPayload内のIPアドレスに対しても変換 コントロールチャネルのコマンドが追従する第二データチャネルの ためにInspectされる パケットに対する追加セキュリティチェックが実施される セキュリティチェックによって拒否された際のsyslog出力例: ASA-4-406002: FTP port command different address: 10.2.252.21(192.168.1.21) to 209.165.202.130 on interface inside ASA-4-405104: H225 message received from outside_address/outside_port to inside_address/inside_port before SETUP

パケットプロセス: IPヘッダのNAT IPヘッダの中のIPアドレスを変換 PATの場合Port変換 Checksumをアップデート

パケットプロセス: Egress Interface Egress Interfaceは最初にTranslationルールによって決定される もしトランスレーションルールで定義されないEgressインターフェース は最終的にglobal route lookupによって決定される

パケットプロセス: L3 Route Lookup Egress Interfaceにおいて,Route lookupが行われる. Egress Interfaceが正しい場合,Routeが決定される. Egress InterfaceにRouteが存在しないパケットが到着した際に出力されるsyslog例: ASA-6-110001: No route to 209.165.202.130 from 10.1.1.9

Packet Processing: L2 Address Lookup 適当なL3 Routeが選択されnext hopが認識されると, L2アドレス決定(ARP解決) MACヘッダをリライト L2 Resolutionが失敗した場合,syslogは出力されない show arpにはL3 next hopは表示されない debug arpによってARPの状況確認が可能

Packet Processing: Transmit Packet Wire上にパケット転送 Interface counterを増加 Output H/WとS/W queue driver levelの バッファリング,interfaceのloadを表示 ASA-5540# show interface gb-ethernet0 interface gb-ethernet0 "outside" is up, line protocol is up Hardware is i82543 rev02 gigabit ethernet, address is 0003.470d.626c IP address 172.18.124.64, subnet mask 255.255.255.0 MTU 1500 bytes, BW 1 Gbit full duplex 3529518 packets input, 337798466 bytes, 0 no buffer Received 32277 broadcasts, 0 runts, 0 giants 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort 5585431 packets output, 359059032 bytes, 0 underruns input queue (curr/max blocks): hardware (0/25) software (0/0) output queue (curr/max blocks): hardware (0/2) software (0/0)

TCP Connection Termination Reasons—Quick Reference For your reference Reason Description Conn-Timeout Connection Ended Because It Was Idle Longer Than the Configured Idle Timeout Deny Terminate Flow Was Terminated by Application Inspection Failover Primary Closed The Standby Unit in a Failover Pair Deleted a Connection Because of a Message Received from the Active Unit FIN Timeout Force Termination After Ten Minutes Awaiting the Last ACK or After Half-Closed Timeout Flow Closed by Inspection Flow Was Terminated by Inspection Feature Flow Terminated by IPS Flow Was Terminated by IPS Flow Reset by IPS Flow Was Reset by IPS Flow Terminated by TCP Intercept Flow Was Terminated by TCP Intercept Invalid SYN SYN Packet Not Valid Idle Timeout Connection Timed Out Because It Was Idle Longer than the Timeout Value IPS Fail-Close Flow Was Terminated Due to IPS Card Down SYN Control Back Channel Initiation from Wrong Side If the Firewall is tearing down connections before the client or server because the idle timeout is reached, one can enable TCP Dead Connection Detection feature which will cause the Firewall to send out a packet to each host when the idle timeout expires. If the hosts still have connections on those ports, they will respond and thus reset the idle timeout. This is the preferred method over adjusting the timeout to be vary large on a global basis. 99

TCP Connection Termination Reasons—Quick Reference (Cont.) For your reference Reason Description SYN Timeout Force Termination After Two Minutes Awaiting Three-Way Handshake Completion TCP Bad Retransmission Connection Terminated Because of Bad TCP Retransmission TCP Fins Normal Close Down Sequence TCP Invalid SYN Invalid TCP SYN Packet TCP Reset-I TCP Reset Was Sent From the Inside Host TCP Reset-O TCP Reset Was Sent From the Outside Host TCP Segment Partial Overlap Detected a Partially Overlapping Segment TCP Unexpected Window Size Variation Connection Terminated Due to a Variation in the TCP Window Size Tunnel Has Been Torn Down Flow Terminated Because Tunnel Is Down Unauth Deny Connection Denied by URL Filtering Server Unknown Catch-All Error Xlate Clear User Executed the ‘Clear Xlate’ Command TCP Fins is the reason you would normally expect to see as the reason a TCP session was torn down. TCP Reset-x is typically an abnormal termination. SYN Timeout means the receiver either didn’t receive the SYN packet, or the SYN+ACK never made it back to the client. 100