ASA:アクセスリスト(ASAに関する続きの記事シリーズ)

かなり簡単な章。 アクセス制御リスト(ACL)は、OSIモデルのレベル4までのパケットのIPヘッダーをチェックするためのルールです。 アクセスリストは、単に行で構成される構造です。 各行-許可(許可)または拒否(拒否)するルール。 パケットヘッダーとアクセスリスト文字列が完全に一致するかどうか、行が上から下にスキャンされます。 ASAのアクセスリストは、いくつかの役割を実行できます。



1.着信または発信トラフィックのインターフェイスでのフィルタリング

2. NATルールの説明(ポリシーNAT)

3.ルート再配布ルールの説明(ルートマップ内)

4.さらなる処理のためにトラフィッククラスに入るための基準(モジュラーポリシーフレームワーク、MPF)

5.暗号化の「興味深いトラフィック」の説明。 暗号マップに適用されるアクセスリスト

6. IPSecまたはSSL VPN経由で接続する場合のリモートユーザーの権限の説明

重要:アクセスリストの最後には非表示の「すべて拒否」(暗黙の拒否)があるため、アクセスリストを通過するパッケージはありません。





アクセスリストは、標準と詳細に分かれています。



標準アクセスリストは送信元アドレスのみをチェックします。 ASAでは、このようなアクセスリストには非常に狭いアプリケーションがあります(たとえば、トンネルでラップする必要があるリモートVPNユーザーのトラフィックを記述するため。スプリットトンネリングテクノロジ)



コマンド形式



 access-list {NAME} [line#] standard {permit | deny | remark} {NETWORK} {MASK}




remarkキーワードは 、アクセスリストにコメントを挿入するために使用されます。

行番号パラメータは、アクセスリストの特定の場所に行を挿入するために使用されます。 たとえば、アクセスリストが既に存在し、4〜5の間に新しい行を挿入する必要がある場合は、次のように記述します。



  アクセスリスト{NAME}行5 {新しい行}


5から始まる行のすべての行は1つ下にシフトします。

明示的に記述することにより、アクセスリストから特定の行を削除できます。



  アクセスリストなし{NAME} {特定のアクセスリスト行}


このような行番号のみを書く



  アクセスリスト{NAME}行#はありません


不可能-ASAは「不完全なコマンド」と言います。

アクセスリストは1行ずつ完全に削除できます:)しかし、大きなリストにはあまり便利ではないため、コマンドがあります



  設定アクセスリスト{NAME}をクリア


このコマンドの無知は、ASAチューナーの血を台無しにし、苛性化した発言に対する強力な議論です:)



重要: clear configureコマンドは非常に強力で、現在の構成のclear configureワードの後に​​指定されたキーワードから始まるすべての行を強制終了するため、不快な結果を招く可能性があります。 たとえば、次のコマンドを使用して、現在の構成全体を強制終了できます。



  すべて設定をクリア


ASAのアクセスリストのネットマスクは直接です(ルータのようなワイルドカードではありません)。 アドレスを示すのに便利なように、使用に便利な略語がいくつかあります。 したがって、「すべてのネットワーク」を記述する必要がある場合は、面倒な記録の代わりに



   0.0.0.0 0.0.0.0


キーワードを使用できます



  どれでも


32ビットのマスクを持つホストを記述する代わりに



   1.2.3.4 255.255.255.255


アドレス自体の前にhostキーワードを使用できます



  ホスト1.2.3.4


アクセスリスト内の行の順序は非常に重要です。 表示は上から下に進み、最初の一致で停止します。 したがって、最も正確な指示を高くする必要があります。

例:特定のホスト10.1.1.100へのトラフィックを許可し、サブネット10.1.1.0/24を禁止し、このネットワーク以外のすべてを許可する場合、次のように記述する必要があります。



   access-list SPLIT remark-= VPNユーザーのACL =-
   access-list SPLIT permit host 10.1.1.100
   access-list SPLIT deny 10.1.1.0 255.255.255.0
  アクセスリスト分割許可


この場合、ホストを指定する方がネットワークを指定するよりも正確です。 また、ネットワークは「すべてのアドレス」よりも正確な指標です。



拡張アクセスリストの形式は、プロトコル、宛先アドレスも考慮し、送信元と宛先のTCP / UDPポートも考慮することができるため、やや複雑です(コマンド形式では、

文字列):



   access-list {NAME} [line#] {permit | deny] {protocol} {source net} {source mask} [{operator} {port#}] {destination net} {destination mask} [{operator} {port# }]


protocol -TCP / IPスタックプロトコル(ICMP、TCP、UDP、OSPF、IGMP、ESPなど)すべてのIPパケットを指定する必要がある場合は、プロトコルとして「ip」という単語を記述する必要があります。

operator-数学演算子のアルファベット表記(eq-equal、gt-more、lt-less、 range -range)

port -TCPまたはUDPポートの番号または名前。

例:

   access-list ANTISPOOF deny ip host 0.0.0.0 any
   access-list ANTISPOOF deny ip host 255.255.255.255 any
   access-list ANTISPOOF permit tcp any host 1.2.3.4 eq 80
   access-list ANTISPOOF permit tcp any host 1.2.3.4 eq https
   access-list ANTISPOOF許可udp任意の範囲16384 32768
  アクセスリストANTISPOOFは、到達不能なICMPを許可します。


デバッグの便利な方法として、アクセスリスト行の最後にlogキーワードを使用できます。 その後、この行で一致するたびに、syslogメッセージが生成されます。 このようなメッセージを生成する頻度を調整できます。



重要:ロギングに関与しないでください! これはASAにとって非常に時間のかかるプロセスです(それだけではありません)。 デバッグにのみ使用してください。 悪い形では、私は個人的にどこでも最後に明示的に突き刺すと思います(ただし、教科書ではこの行がとても好きです)



   ip any any log


また、 inactiveキーワード(バージョン8.0以降)を使用して、アクセスリスト文字列を削除せずに一時的に無効にすることも便利です。



  アクセスリストANTISPOOFは、到達不能な非アクティブなicmpを許可します


この行を元に戻すには、「 非アクティブ」という単語なしでもう一度入力する必要があります



別の便利な追加は、アクセスリスト文字列の時間範囲を示すことです。 これには時間範囲構造が使用されます。



時間範囲{NAME}
   {絶対|定期的} {アップタイム}


例:

時間範囲WORKTIME
  定期的な平日10:00から19:00


あとは、アクセスリストの行に時間範囲を適用するだけです。



  アクセスリスト{NAME} {string}時間範囲{NAME}


例:

   access-list ANTISPOOF permit ip any host 198.133.219.25 time-range WORKTIME


コマンドで受信したアクセスリストを表示できます。



  実行アクセスリスト{NAME}を表示


同時に、 access-list {NAME}という単語で始まる設定行が表示されます。

行番号が付加され、行が一致するアクセスリストを表示する必要がある場合は、次のコマンドを使用することをお勧めします。



  アクセスリスト{NAME}を表示


重要:アクセスリストの各パケットを確認するルーターとは異なり、ASAはセッションキャッシュにセッションエントリがない場合にのみアクセスリストのパケットを確認します(セッションについては、「パケットの処理とセッションの作成」の章を参照してください)。 したがって、セッションプロトコル(TCPおよびUDP)のヒット数(ヒット)は、この行で開いているセッションの数を意味します。



ヒント:アクセスリストの名前は「長すぎる」ではなく「話す」ようにして、大文字で書くことをお勧めします。 さまざまなケースで独自の名前を作成して、常にそれらに固執することもできます。たとえば、バックアップインターフェイス入力のアクセスリストは、私にとってはFROMBACKUPのように見え、dmzインターフェイスでNATを渡す場合はNONATDMZになります。 多くの場合、複数の管理者が構成を作成するか、Webインターフェイスを使用して部品を作成し、独自のリスト名を作成します(これは不快なことです!)そして、設定の読みやすさが低下します。 renameコマンドを使用して、アクセスリストの名前をい名前に変更できます。



  アクセスリスト{UGLYNAME}名前変更{PRETTYNAME}




______________

UPD 01/21/2010 00:18

すみません、一片が落ちました



インターフェイスでは、アクセスリストをインターフェイスの入力と出力の両方に適用できます。 エントリーアクセスリストは、見た目が見えないため入場できないナイトクラブの警備員に似ています。 インターフェイス出力のアクセスリストは、ブティックの出口にある回転式改札口に似ており、懐に隠れている魅力的な皮ひもを感じるとヒステリックにicallyい始めます:)



  アクセスグループ{NAME} {in | out}インターフェース{INTERFACE NAME}


例:



外部インターフェイスのアクセスグループFROMOUTSIDE


______________



オブジェクトグループ



ネットワークに同様のオブジェクト(ユーザーネットワーク、同じサービスセットを持つサーバーなど)が多数ある場合、アクセスリストを設定するときに、それらが読みにくく拡張性に乏しいという事実に必ず遭遇します。 ASAでの大きなアクセスリストの記述を簡素化するために、いわゆるオブジェクトグループが使用されます。 それらを使用して、同様のネットワーク要素(プロトコル、ネットワーク、サービス、icmpメッセージ)をグループ化できます。



オブジェクトグループネットワーク{NAME}
  ネットワークオブジェクトホスト{ip}
  ネットワークオブジェクト{NET} {マスク}
 !
オブジェクトグループサービス{NAME} {tcp | udp}
  ポートオブジェクト{演算子} {ポート}
 !
オブジェクトグループプロトコル{NAME} 
  プロトコルオブジェクト{プロトコル}
 !
オブジェクトグループicmp {NAME} 
   icmp-object {icmpタイプ}




例:

オブジェクトグループネットワークサーバー
  ネットワークオブジェクトホスト192.168.100.100
  ネットワークオブジェクトホスト192.168.100.101
  ネットワークオブジェクトホスト192.168.100.102
 !
オブジェクトグループサービスWEBTCP tcp
  ポートオブジェクトeq 80
  ポートオブジェクトeq 443
  ポートオブジェクトeq 1494




アクセスリストで同じタイプの要素を明示的に指定する代わりに、オブジェクトグループ自体が使用されます。 たとえば、送信元または宛先アドレスの代わりに、オブジェクトグループネットワークグループを使用でき、TCPサービス(ssh、http)を明示的に指定する代わりに、TCPサービスなどのグループを使用できます。



例:

  access-list FROMOUTSIDE allow tcp any object-group SERVERS object-group WEBTCP


同時に、ASAはアクセスリスト内のグループを1行ずつ展開しますが、同時にオブジェクトグループを持つリストのすべての行は同じ行番号を持ちます。



   asa#access-list FROMOUTSIDEを表示
 access-list FROMOUTSIDE行1は、TCPのすべてのオブジェクトグループSERVERSオブジェクトグループWEBTCPを許可します。
 access-list FROMOUTSIDE line 1 allow tcp any host 192.168.100.100 eq 80(ヒット5)
アクセスリストFROMOUTSIDE行1は、tcp any host 192.168.100.100 eq 443を許可します
 access-list FROMOUTSIDE line 1 allow tcp any host 192.168.100.100 eq 1494
 access-list FROMOUTSIDE line 1 allow tcp any host 192.168.100.101 eq 80(hit 2)
   <出力省略>


各行には、ヒットの総数だけでなく、ヒットカウント(ヒット)があることに注意してください。

コマンドを使用してオブジェクトグループを表示できます



  実行オブジェクトグループ[{type}]を表示します




ネットワークアドレス変換 (近日公開予定:))



All Articles