Cisco ASA Первичная настройка

При написании данной статьи использовался межсетевой экран Cisco ASA 5520 с версией системы 9.1 и чистой (стандартной) конфигурацией.

1. Подключение через COM-порт

Если Вы только взяли в руки Cisco ASA, то для начала работы к ней нужно подключиться через COM-порт (голубенький кабель RJ45 — DB9).
Настройки порта обычно такие:

Bits per sec: 9600
Data bits: 8
Parity: none
Stop bits: 1
Flow control: none

У Cisco ASA, как и у других устройств Cisco два режима: пользовательский и привилегированный. Перейдите в привилегированный режим командой enable (можно использовать сокращение en):

ciscoasa>
ciscoasa> enable
ciscoasa#

У «свежей» или сброшенной к заводским настройкам Cisco ASA пароль на привилегированный режим ещё не установлен. Можно приступать к настройке: configure terminal или conf t.

ciscoasa# configure terminal
ciscoasa(config)#

Все остальные команды вводятся в режиме конфигурации, если не указано другое. Команда exit, выполненная в режиме конфигурирования, вернет вас назад.
В списках команд у меня имеются комментарии, начинающиеся с символа #, их вводить НЕ надо, они для вас, циска их не поймет…

2. Настройка интерфейса управления и доступа по ssh

Cisco ASA имеет специальный интерфейс для управления. Рекомендуется иметь отдельную сеть для управления и контроля всего оборудования и серверов, недоступную для простых пользователей.

# создание пароля для привилегированного режима
enable password zzz

# настройка интерфейса управления
interface Management 0/0
   nameif manage
   security-level 100
   ip address 192.168.1.100 255.255.255.0
   no shutdown
exit

# настройка доступу по ssh
crypto key generate rsa modulus 1024
username username password yyy
passwd yyy
# задайте список адресов или сетей, с которых разрешено подключаться по ssh
# не стоит указывать лишнее
ssh 192.168.1.22 255.255.255.255
ssh 192.168.1.33 255.255.255.255
ssh version 2
# заодно можно увеличить timeout, по-умолчанию всего 5 минут
ssh timeout 15
aaa authentication ssh console LOCAL

Теперь можете подключиться к ASA по сети через ssh, можно использовать putty или linux-консоль:

ssh username@192.168.1.100

3. Настройка доступа через ASDM

Кроме настройки Cisco ASA через консоль, имеется альтернативный вариант: Cisco Adaptive Security Device Manager (ASDM). Функционал ASDM дублирует возможности CLI и сделан больше для тех кто кликает мышкой. Некоторые операции легче выполнять в ASDM, но для большинства настроек удобнее, нагляднее и проще использовать именно CLI. Рассмотрите оба варианта, выберите наиболее подходящий под ваши задачи.

# если вы не ещё не настроили доступ по ssh, то выполните команду crypto key gen... из предыдущего пункта
# запуск сервера http
http server enable
# задайте список адресов или сетей, с которых разрешено подключаться
http 192.168.1.22 255.255.255.255 manage
http 192.168.1.33 255.255.255.255 manage
# просмотр списка файлов на Cisco ASA
dir
# если доступно несколько версий ASDM, то выберите более свежую
asdm image disk0:/asdm-742.bin

Для доступа к ADSM наберите в браузере https://192.168.1.100

4. Обновление системы и ASDM

Посмотреть текущие версии ПО можете так:

ciscoasa# show version 
Cisco Adaptive Security Appliance Software Version 9.1(7)13 
Device Manager Version 7.7(1)
...

Проверить наличие более свежих версий ПО и их поддержку вашей циской можно на официальном сайте: https://software.cisco.com/download/type.html?mdfid=280582808, а вот скачать их можно только имея действующую лицензию.
Для загрузки и установки файлов обновлений на Cisco ASA проще использовать ASDM:
Загрузка: Tools -> File Management… -> File Transfer
Либо сразу с установкой: Tools -> Upgrade Software from Local Computer
Загрузка файла с командной строки выполняется одной командой (на своём компьютере поднимите сервер tftp, для windows подойдёт Tftpd32):

# запуск команды copy в интерактивном режиме
copy tftp disk0:
Address or name of remote host []? 192.168.1.22
Source filename []? asa917-13-k8.bin
Destination filename [asa917-13-k8.bin]? 
Accessing tftp://192.168.1.22/asa917-13-k8.bin.........!!
Writing file disk0:/asa917-13-k8.bin...........!!
27703296 bytes copied in 3.60 secs

# проверьте, что файл на месте
dir
# выбор используемого образа системы и ASDM
asdm image disk0:/asdm-771.bin
boot system disk0:/asa917-13-k8.bin
# сохранить настройки
write memory
# перезагрузка с новой версией системы
reload

5. Настройка интерфейсов

Для образца возьмём самую распространённую схему сети:

  1. внешняя сеть с белым ip (outside);
  2. выделенная сеть с серверами (dmz): 192.168.20.0/29;
  3. локальная сеть с пользователями (lan): 192.168.10.0/24;

По умолчанию Cisco ASA будет пропускать трафик из зоны с более высоким значением security-level в зону с более низким. Почесав затылок, распределяем значения security-level: outside — 0, dmz — 50, lan — 100. Причем сами цифры значения не имеют, главное — их отношения (больше, меньше).
Порты на оборудовании — очень ценная вещь, особенно на таком. Чтобы их сэкономить можно создать несколько подинтерфейсов:

interface GigabitEthernet0/0
   mac-address 0050.56xx.xxxx
   nameif outside
   security-level 0
   ip address 11.11.11.11 255.255.255.248 
   no shutdown
exit
interface GigabitEthernet0/1.20
   vlan 20
   nameif dmz
   security-level 50
   ip address 192.168.20.1 255.255.255.248 
exit
interface GigabitEthernet0/1.10
   vlan 10
   nameif lan
   security-level 100
   ip address 192.168.10.1 255.255.255.0 
exit
interface GigabitEthernet0/1
   no shutdown
exit
# маршрут по умолчанию
route outside 0.0.0.0 0.0.0.0 11.11.11.10 1
dhcpd dns 8.8.8.8

6. Настройка NAT во внешнюю сеть и ping

Доступ во внешнюю сеть разрешен согласно выставленным security-level, но чтобы всё заработало вы должны сделать NAT:

object network lan-subnet
   subnet 192.168.10.0 255.255.255.0
   nat (lan,outside) dynamic interface
exit

object network dmz-subnet
   subnet 192.168.20.0 255.255.255.248
   nat (dmz,outside) dynamic interface
exit

Готово, ваши пользователи и сервера получили доступ к Интернет. Если нужно разрешить использование icmp, то выполните следующее:

policy-map global_policy
   class inspection_default
      inspect icmp
exit

7. Настройка NAT снаружи во внутреннюю сеть до сервера

Вариант 1. Нужно пробросить один порт, например, 80 до сервера в dmz:

object network server-www
   host 192.168.20.2
   nat (dmz,outside) static interface service tcp www www
exit
# трафик из сети outside в dmz противоречит настройкам security-level
# для его пропуска настройте правила ACL (Access Control List)
access-list outside_acl extended permit tcp any object server-www eq www
access-group outside_acl in interface outside

Вариант 2. Нужно пробросить два порта или больше. Просто добавив новое правило nat к уже существующему, вы перепишете им первое правило, поэтому нужно всё продублировать для каждого порта:

object network server-www
   host 192.168.20.2
   nat (dmz,outside) static interface service tcp www www
exit
object network server-8080
   host 192.168.20.2
   nat (dmz,outside) static interface service tcp 8080 8080
exit
access-list outside_acl extended permit tcp any object server-www eq www
access-list outside_acl extended permit tcp any object server-8080 eq 8080
access-group outside_acl in interface outside

Вариант 3. Пробрасываем все порты, на внутренний сервер (завернуть что-либо на второй сервер уже не получится):

object network server-ip
   host 192.168.20.2
   nat (dmz,outside) static interface
exit
# разрешайте только нужные порты
access-list outside_acl extended permit tcp any object server-ip eq www
access-list outside_acl extended permit tcp any object server-ip eq 8080
access-list outside_acl extended permit tcp any object server-ip eq ssh
access-list outside_acl extended permit tcp any object server-ip eq ftp
access-group outside_acl in interface outside

8. Тестирование прохождения пакетов

Можете тестировать настройки так: «Николай, попробуй выйти на ya.ru… Не работает? Ясно, сейчас посмотрю…». Более правильный подход, более быстрый и информативный — packet-tracer! Данный инструмент генерирует пакет и поэтапно показывает порядок его обработки.
Генерируем пакет из внутренней сети (от пользователя) во внешнюю:

packet-tracer input lan tcp 192.168.10.2 12345 93.159.134.3 80

Генерируем пакет из внешней сети на внешний интерфейс для www-сервера в dmz:

packet-tracer input outside tcp 8.8.8.8 12345 11.11.11.11 80

Сохранить настройки

write memory
# сокращенно wm

Ответить

Вы должны быть зарегистрированы в для возможности комментировать.