【随時更新】Cisco ASA コマンド【確認＆設定編】

Cisco ASAを業務利用する中で
よく使うコマンドを備忘録として残します

### 基本編

#### 特権EXECモードに移行

```
> enable
```

enableしてからじゃないと
show run等の打てないコマンドがあります

------

#### ログアウト

```
> exit
```

モードの移行にも使います

------

#### ページ送りを無効

```
> terminal pager 0
```

show run等の長い結果を見る際に
--more-- が出てこなくなります

------

#### ヘルプ

```
> ?
```

とても便利なので多用しましょう
頭文字しかわからないコマンドも
わかる範囲で入力すれば一致したコマンドを
一覧表示してくれます
スペルチェックにも使える最強コマンドです

------

#### 設定の保存

```
> write memory
```

running-configの内容を
startup-configへ反映させます

## 設定確認編

#### 他のログインユーザーの確認

```
> show resource usage
```

Currentに現在ログイン中の
ユーザーの総数が表示されます

------

#### 主系、副系の確認

```
> show failover state
```

主系はActiveで
副系はStandby Readyが表示されます

------

#### バージョンの確認

```
> show version
```

バージョン依存する設定も存在するため
念のための確認に使います

------

#### システムログの確認

```
> show logging
```

システムログが表示されます
想定外のエラーがないか確認に使います

------

#### 現在の設定の確認

```
> show running-config
```

現在の設定を確認する場合や
設定のバックアップを取るときに使います

------

#### 保存されている設定の確認

```
> show startup-config
```

名前の通り起動時に読み込まれる設定の
確認に使います

------

#### 出力結果から検索対象を含む行を抽出

```
> コマンド | include "検索対象"
```

Linuxでいうgrepと同意です

------

#### 出力結果から検索対象を含まない行を抽出

```
> コマンド | exclude "検索対象"
```

Linuxでいうgrep -vと同意です

------

#### 出力結果を検索対象が含まれる行から表示

```
> コマンド | begin "検索対象"
```

何かから始まる設定群を
見たいときに使います

------

#### ルーティングテーブルの確認

```
> show route
```

登録されているルーティングテーブルの
確認に使います

------

#### オブジェクトの確認

```
> show running-config object in-line
```

登録されているオブジェクトの一覧を
インライン表示します
idで名前での指定もできます

------

#### ネットワークオブジェクトグループの確認

```
> show running-config object-group network
```

登録されている
ネットワークオブジェクトグループの一覧を
表示します
idで名前での指定もできます

------

#### サービスオブジェクトグループの確認

```
> show running-config object-group service
```

登録されている
サービスオブジェクトグループの一覧を
表示します
idで名前での指定もできます

------

#### アクセスリストの確認

```
> show running-config access-list
```

登録されているアクセスリストの
一覧を表示します

------

#### 最終行のdenyの確認

```
> show running-config access-list | include any any|deny
```

最終行のdeny行の確認に使います

## 設定投入編

#### グローバルコンフィギュレーションモードへ移行

```
> configure terminal
```

設定投入するための
Config設定モードへ移行できます

------

#### ネットワークオブジェクトの作成

```
> object network オブジェクト名
   x.x.x.x(IPアドレス) x.x.x.x(サブネットマスク)
```

オブジェクトの作成が行えます
サブネットマスクが255.255.255.255である場合
アドレスはhost IPアドレスで指定できます

------

#### ネットワークオブジェクトグループの作成

```
> object-group network グループ名
   network-object object オブジェクト名１
   network-object object オブジェクト名２
```

ネットワークオブジェクトグループの
作成が行えます

------

#### サービスオブジェクトグループの作成

```
> object-group service グループ名 プロトコル(tcp,udp)
   port-object eq ポート番号１
   port-object eq ポート番号２
```

サービスオブジェクトグループの
作成が行えます

------

#### アクセスリストの作成

##### ケース１

Outsideへのicmpの許可設定
(10.0.0.1~10.0.1.1へ)
※最終行のdenyはline1000行目

```
> access-list Outside line 1000 extended permit icmp object 10.0.0.1-32bit object 10.0.1.1-32bit
```

##### ケース２

Insideへのftp許可設定
(10.0.0.1~ネットワークグループnw_groupへ)
※最終行のdenyはline1000行目

```
> access-list Inside line 1000 extended permit tcp object 10.0.0.1-32bit object-group nw_group range 20 21
```

##### ケース３

Insideへのネットワークオブジェクトグループservice_groupの不許可設定
(10.0.0.1~anyへ)
※入れたい行はline1000行目

```
> access-list Inside line 1000 extended deny tcp object 10.0.0.1-32bit any object-group service_group
```

上記のようにアクセスリストの作成が
行えます

## 疎通確認編

#### 通信相手の応答有無の確認

```
> ping IPアドレス
```

リーチアビリティが取れているか
確認したいときに使います

------

#### 通信経路上のルータを確認

```
> traceroute IPアドレス
```

どのルータを経由するか確認できます

------

#### 通信内容の確認

##### ケース１

Inside側(10.0.0.1)からOutside側(10.0.100.1)への
httpの通信内容を確認

```
packet-tracer input Inside tcp 10.0.0.1 80 10.0.100.1 80
```

##### ケース２

Inside側(10.0.0.1)からOutside側(10.0.100.1)への
icmpの通信内容を確認

```
packet-tracer input Inside icmp 10.0.0.1 0 0 10.0.100.1
```

Action欄で通信の可否を確認できます
icmpの確認にはtypeとcodeの指定が必要です

## おわりに

以上がCisco ASAでよく使うコマンドでした

また使うものが増えてきたら
随時更新していきます