Cisco ASA

Материал из Xgu.ru

Перейти к: навигация, поиск
stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Cisco ASA

Содержание

[править] Базовые настройки

Задание имени устройству:

ciscoasa(config)# hostname asa1

[править] Настройка интерфейсов

Для того чтобы разрешить прохождение трафика через интерфейсы ASA, необходимо задать имя интерфейса и IP-адрес (для режима routed).

  int eth1
  nameif inside
  ip address 10.1.1.1 255.255.255.0
  speed 100
  duplex full 
  no shut
  exit

[править] Management интерфейс

management-only

[править] Задание IP-адреса

Icon-caution.gif

Cisco ASA не поддерживает secondary-адреса на интерфейсах [1]. При необходимости, можно попробовать такой вариант [2].

[править] Уровни безопасности интерфейсов

На ASA каждому интерфейсу присваивается уровень безопасности:

  • Значение уровня безопасности может быть от 0 до 100;
  • 100 — максимальный уровень безопасности. Как правило, присваивается интерфейсу, который находится в локальной сети;
  • 0 — минимальный уровень безопасности. Присваивается внешнему интерфейсу;
  • По умолчанию на всех интерфейсах уровень безопасности 0

[править] Влияние уровней безопасности на другие функции

Уровни безопасности контролируют поведение ASA в таких ситуациях:

  • Доступ к сети — по умолчанию трафик, который идет с интерфейса с более высоким уровнем безопасности на интерфейс с меньшим уровнем безопасности, разрешен. Хосты, которые находятся на более безопасном интерфейсе могут получить доступ к любому хосту, находящемуся на менее безопасном интерфейсе. Это правило можно ограничить, применив access-list.
  • Инспектирование — инспектирование некоторых протоколов зависит от уровней безопасности интерфейсов:
    • Инспектирование NetBIOS — применяется только для исходящих соединений.
    • Инспектирование SQLNet— если между парой хостов существует control connection к порту SQLNet (OraServ), то только входящий трафик разрешен.
  • Фильтрация — фильтрация HTTP(S) и FTP применяется только к исходящим соединениям (с более безопасного уровня на менее безопасный).
  • NAT control — когда включен NAT control, то для хостов, которые находятся на интерфейсе с более высоким уровнем безопасности, обязательно должны быть настроены правила трансляции для того чтобы они могли получить доступ к хостам, которые находятся на интерфейсе с более низким уровнем безопасности.
  • Команда established — эта команда пропускает соединения с менее безопасного интерфейса на более безопасный, если уже существует установленное обратное соединение.

[править] Правила взаимодействия между интерфейсами с различными уровнями безопасности

По умолчанию прохождение трафика от менее безопасного интерфейса к более безопасному запрещено. ASA пропускает обратный трафик, если инициатором соединения был хост, находящийся за более безопасным интерфейсом.

[править] Правила взаимодействия между интерфейсами с одинаковыми уровнями безопасности

По умолчанию передача трафика между интерфейсами с одинаковыми уровнями безопасности не разрешена.

Разрешить передачу трафика между интерфейсами с одинаковыми уровнями безопасности:

asa1(config)# same-security-traffic permit inter-interface

Правила взаимодействия между интерфейсами с одинаковыми уровнями безопасности (после разрешения коммуникаций между ними):

  • Разрешена передача трафика между интерфейсами с одинаковым уровнем безопасности.
  • Правила инспектирования применяются к трафику, который передается в обоих направлениях (для тех правил инспектирования в которых учитывается направление трафика).
  • Правила фильтрации HTTP(S) и FTP применяются в обоих направлениях.
  • Правила трансляции не обязательно должны быть настроены, даже если включен NAT control.
  • Команда established может применяться в обоих направлениях.

[править] Просмотр информации об интерфейсах

Просмотр информации о именах интерфейсов и уровнях безопасности:

asa1(config)# sh nameif      
Interface                Name                     Security
GigabitEthernet0/0       outside                    0
GigabitEthernet0/1       inside                   100

Информация о статусе интерфейсов и IP-адресах:

asa1(config)# sh int ip br
Interface                  IP-Address      OK? Method Status                Protocol
GigabitEthernet0/0         10.0.1.1        YES unset  administratively down down
GigabitEthernet0/1         192.168.1.1     YES unset  administratively down down
GigabitEthernet0/2         unassigned      YES unset  administratively down down
GigabitEthernet0/3         unassigned      YES unset  administratively down down
Internal-Control0/0        127.0.1.1       YES unset  up                    up  
Internal-Data0/0           unassigned      YES unset  up                    up  
Management0/0              unassigned      YES unset  administratively down down
# show run interface
# show interface
# show ip address

This command shows the primary IP addresses (called “System” in the display) for when you configure high availability as well as the current IP addresses. If the unit is active, then the system and current IP addresses match. If the unit is standby, then the current IP addresses show the standby addresses.

[править] Использование имен

		# names
		# name 10.0.1.1 DMZ

[править] Команды

asa1(config)# shun
asa1(config)# show asp drop
management-access inside


[править] Просмотр всех существующих команд

Note-icon.gif

Так как количество команд очень большое, то желательно выполнять команду с соответствующим фильтром.

Просмотр всех существующих команд включающих слова debug vpn:

ASA1(config)# sh parser dump all | include debug vpn   
1 no debug vpnlb 
1 no debug vpn-sessiondb 
15 debug vpnlb 
15 debug vpn-sessiondb 
15 undebug vpnlb 
15 undebug vpn-sessiondb 

[править] Создание alias для команд

Создание alias:

ASA1(config)# command-alias exec isakmp sh crypto isakmp sa   

Проверка alias:

ASA1(config)# isakmp

There are no isakmp sas

Просмотр настроенных alias:

ASA1(config)# sh run command-alias 
command-alias exec isakmp sh crypto isakmp sa

[править] Справка

Справка о команде:

asa1# help <command>

Например, справка о команде hostname:

asa1# help hostname

USAGE:

        hostname <name>
        show hostname [fqdn]
        show running-config [all] hostname

DESCRIPTION:

hostname        Change host name

[править] Работа с конфигурационными файлами и ОС

Посмотреть текущую конфигурацию:

asa1# show running-config  

В ASA есть много настроек по умолчанию. Для того чтобы не загромождать конфигурационный файл, они не отображаются в выводе команды show run. Для просмотра всех команд конфигурационного файла используется команда show run all.

Посмотреть текущую конфигурацию и скрытые команды:

asa1# show running-config [all] [command] 

Посмотреть стартовую конфигурацию:

asa1# show startup-config

Удалить стартовую конфигурацию:

asa1# write erase

Удалить текущую конфигурацию:

asa1# clear configure all

Скопировать текущую конфигурацию в стартовую:

asa1# copy run start

более быстрый вариант:

asa1# wr

[править] Управление процессом загрузки ОС и конфигурационных файлов

Показать содержимое директорий:

asa1# show dir

Показать содержимое файла:

asa1# more <файл>

Указать файл ОС, который будет использовать ASA:

asa1(config)# boot system flash:/image.bin

Просмотр текущих настроек загрузки ОС и конфигурационного файла:

asa1# show bootvar

BOOT variable = 
Current BOOT variable = 
CONFIG_FILE variable = 
Current CONFIG_FILE variable = 

[править] Перезагрузка ASA

Установить время перезагрузки:

asa1(config)# reload [at hh:mm [month day | day month]] [cancel] [in [hh:]mm] [max-hold-time [hh:]mm]
 [noconfirm] [quick] [reason text] [save-config] 

Отменить запланированную перезагрузку:

asa1(config)# reload cancel 

Проверить настройки перезагрузки:

asa1# show reload

[править] Просмотр информации

		# sh memory
		# sh version
		# sh history

[править] Трансляция адресов

Основная страница: Cisco ASA/NAT
ASA(config)# sh conn
2 in use, 5 most used
TCP out win2k:80 in linux:59338 idle 0:00:11 bytes 1483 flags UIO
TCP out mac:22 in linux:60294 idle 0:22:20 bytes 5732 flags UIO

!!! Если нет соединений обновить браузер

Зайти на веб сервер Зайти на ftp сервер

  global (dmz) 1 172.16.1.20-172.16.1.254 netmask 255.255.255.0
  clear xlate 
  wr mem
  show arp
  sh xlate
  sh xlate deta
  sh conn
  sh xlate deta
  sh conn
  sh conn det
  sh local-host linux

[править] Маршрутизация

[править] ACL

[править] Отличия от настройки ACL на маршрутизаторах

ACL на ASA настраиваются точно также как и на маршрутизаторах, с небольшими отличиями по синтаксису команд. Главное отличие – это маска, в ASA маска применяется не wildcard, а обычная.

Например, если в ACL необходимо разрешить прохождение IP-трафика из сети 192.168.5.0/24 в любую другую сеть, то:

  • на маршрутизаторе ACL будет выглядеть таким образом:
access-list TEST permit ip 192.168.5.0 0.0.0.255 any
  • а на ASA:
access-list TEST permit ip 192.168.5.0 255.255.255.0 any

Кроме того, отличается применение ACL на интерфейсе. На ASA ACL применяется так:

ASA(config)# access-group <имя ACL> <in | out> interface <имя интерфейса>

Пример применения ACL TEST для входящего трафика на интерфейсе outside:

ASA(config)# access-group TEST in interface outside

ACL обязательно должен быть extended формата. На один интерфейс может быть повешен только один ACL в одно направление - один в in и один в out. По умолчанию каждый ACL имеет в конце запрещающее правило для всего, что не попало под разрешение - это правило не видно в каком-либо выводе просто помните, что оно есть.

[править] Разрешение ICMP

Пингуем интерфейсы

По умолчанию прохождение icmp пакетов через АСА запрещено

1 Запретили прохождение icmp request

ASA(config)# icmp deny any echo inside 
ASA(config)# sh run icmp
ASA(config)# clear configure icmp

2. Настраиваем ACL для трафика из интернета

  capture INS_linux interface inside trace buffer 1534 
  capture OUT_win2k interface outside trace buffer 1534 

2.1. Статические записи для внутреннего хоста и DMZ хоста

  static (dmz,outside) 192.168.1.11 mac

или

  static (dmz,outside) 192.168.1.11 mac netmask 255.255.255.255

  static (inside,outside) 192.168.1.10 linux
  sh run static 

2.2. Проверяем, что без ACL не получается зайти во внутр сеть. Packet tracer 2.3. Создаем ACL чтобы трафик (icmp, ftp, ssh, http) проходил к DMZ хосту (не забывать о том что адреса транслируются) 2.4. Создаем ACL чтобы трафик (icmp, ftp, ssh, http) проходил к внутреннему хосту 2.5. Смотрим командами show на ACL


3. Проверяем пройдет ли теперь трафик. Packet tracer

[править] Time-based ACL

4. Настройка и проверка time-based ACL 4.1 Настройка периода времени

ASA(config)# sh run time-range 
!
time-range TIMEACL
 absolute start 00:00 12 January 2008 end 17:00 16 January 2008
 periodic weekdays 8:00 to 17:00
!

4.2. Удаляем строку из ACL

ASA(config)# no access-list ACLOUT line 1 extended permit tcp 192.168.1.0 255.255.255.0 host 192.168.1.10 eq ssh

Добавляем времменую запись

 access-list ACLOUT line 4 permit tcp any host 192.168.1.10 eq ssh time-range TIMEACL

Проверяем ACL

ASA(config)# sh access-list 
access-list cached ACL log flows: total 0, denied 0 (deny-flow-max 4096)
            alert-interval 300
access-list ACLOUT; 8 elements
access-list ACLOUT line 1 extended permit tcp 192.168.1.0 255.255.255.0 host 192.168.1.11 eq ssh (hitcnt=0) 0x7d530f70 
access-list ACLOUT line 2 extended permit tcp 192.168.1.0 255.255.255.0 host 192.168.1.11 eq www (hitcnt=0) 0x7c8b272c 
access-list ACLOUT line 3 extended permit tcp 192.168.1.0 255.255.255.0 host 192.168.1.11 eq ftp (hitcnt=0) 0xc787e110 
access-list ACLOUT line 4 extended permit tcp any host 192.168.1.10 eq ssh time-range TIMEACL (hitcnt=0) (inactive) 0xbf6 
access-list ACLOUT line 5 extended permit tcp 192.168.1.0 255.255.255.0 host 192.168.1.10 eq www (hitcnt=0) 0x79a98bd5 
access-list ACLOUT line 6 extended permit icmp any any echo (hitcnt=0) 0xadc5921b 
access-list ACLOUT line 7 extended permit icmp any host 192.168.1.10 echo-reply (hitcnt=0) 0x58d075a0 
access-list ACLOUT line 8 extended permit icmp any host 192.168.1.11 echo-reply (hitcnt=0) 0xbe0eccae 

Заходим SSH и у нас ничего не получаеттся

4.3. Меняем время на ASA. Теперь запись активна Проверяем

access-list ACLOUT line 4 extended permit tcp any host 192.168.1.10 eq ssh time-range TIMEACL (hitcnt=1) 0xbf619589 

4.4. Возвращаем запись и время меняем на правильное

5. Настройка исходящего ACL

access-list ACLIN extended deny tcp any any eq www 
access-list ACLIN extended permit tcp 11.1.1.0 255.255.255.0 host mac eq ftp 
access-list ACLIN extended deny ip any any 

6. Проверка исходящего ACL

После проверки удаляем его

[править] object group

1. Настраиваем service object group

ASA(config)# sh run object-group 
object-group service MYSERVICES tcp
 description: HTTP and FTP traffic
 port-object eq www
 port-object eq ftp

2. Настраиваем icmp-type object group

object-group icmp-type PING
 description: Request Reply Unreachable
 icmp-object echo
 icmp-object echo-reply
 icmp-object unreachable

3. Настраиваем network object group

object-group network DMZ_mac
 description: macbook
 network-object host 192.168.1.11
object-group network ALLSERVERS
 network-object host 192.168.1.11
 network-object host 192.168.1.10
 network-object host 192.168.1.6
 network-object host 192.168.1.7

4. Настраиваем ACL с object group

Удаляем предыдущие:

ASA(config)# clear configure access-list 

4.1 www и ftp к DMZ хосту: ACL на внешний интерфейс для входящего трафика:

access-list OUT_OBJ extended permit tcp 192.168.1.0 255.255.255.0 object-group DMZ_mac object-group MYSERVICES 
access-group OUT_OBJ in interface outside

5. ACL на внешний интерфейс. Разрешаем входящий www, ssh и icmp трафик

ASA(config)# sh run access-list 
access-list OUT_OBJ extended permit tcp 192.168.1.0 255.255.255.0 object-group DMZ_mac object-group MYSERVICES 
access-list OUT_OBJ extended permit tcp any object-group ALLSERVERS eq www 
access-list OUT_OBJ extended permit icmp any object-group ALLSERVERS object-group PING 
access-list OUT_OBJ extended permit tcp any object-group ALLSERVERS eq ssh 
access-list OUT_OBJ extended deny ip any any 

ACL на dmz интерфейс. Разрешаем icmp

access-list DMZ_OBJ extended permit icmp any any object-group PING 
access-list DMZ_OBJ extended deny ip any any 

access-group DMZ_OBJ in interface dmz

6. Проверяем ACL

[править] AAA

7.1. Настраиваем ACS

7.2. Настраиваем AAA на ASA для входящего соединения (из инета в лок сеть)

	ASA1(config)# aaa-server MY protocol radius 
	ASA1(config-aaa-server-group)# accounting-mode single 
	ASA1(config-aaa-server-group)# exit
	ASA1(config)# aaa-server MY (inside) host inhost
	ASA1(config-aaa-server-host)# key cisco
	ASA1(config-aaa-server-host)# exit
	
	
	ASA1(config)# aaa authentication match OUT_OBJ outside MY
	ASA1(config)# wr mem

Смотрим на пользователя:

ASA1(config)# sh uauth

7.3. Настраиваем AAA на ASA для исходящего соединения (из лок сети в инет):

	ASA1(config)# access-list ACLIN permit ip any any
	ASA1(config)# access-group ACLIN in interface inside 
	ASA1(config)# aaa authentication match ACLIN inside MY

Проверяем FTP и HTTP

7.4. Настраиваем AAA аутентификацию для telnet соединений:

	ASA1(config)# aaa authentication telnet console MY
	ASA1(config)# telnet inhost 255.255.255.255 inside 
	ASA1(config)# sh run telnet
	telnet inhost 255.255.255.255 inside
	telnet timeout 5

Зайти telnet'ом на АСУ

7.5. Настраиваем virtual telnet

	ASA1(config)# virtual telnet 192.168.1.5 
	ASA1(config)# sh run virtual 
	virtual telnet 192.168.1.5

Чистим пользователей:

	ASA1(config)# clear uauth

Заходим telnet'ом на адрес 192.168.1.5 и вводим имя пользователя и пароль.

Проверяем, что аутентификация прошла -- теперь заходим на веб сервер и у нас не запрашивают пароль!!

	ASA1(config)# sh uauth
	                        Current    Most Seen
	Authenticated Users       1          2
	Authen In Progress        0          1
	user 'user' at inhost, authenticated (idle for 0:00:16)
	   absolute   timeout: 0:05:00
	   inactivity timeout: 0:00:00

Чистим пользователей:

	ASA1(config)# clear uauth

Еще раз броузер открываем и нас спрашивают пароль!!


7.6. Настраиваем приглашения при аутентификации и таймауты:

	  sh run timeout uauth 
	  timeout uauth 3:0:0 absolute 
	  timeout uauth 0:30:0 inactivity 
	  sh run timeout uauth 
	  sh ru auth-pro
	  auth-prompt prompt Pora vvodit' parol'
	  auth-prompt accept Ugadal
	  auth-prompt reject Ne ugadal

Проверяем. Заходим telnet'ом на адрес 192.168.1.5

7.7. Настраиваем ACS и downloadable ACL

[править] Инспектирование трафика

[править] Настройки по умолчанию

По умолчанию на ASA выполняется инспектирования трафика.

Class-map:

asa1(config)# sh run class-map 
!
class-map inspection_default
 match default-inspection-traffic
!

Объект default-inspection-traffic:

  default-inspection-traffic  Match default inspection traffic: 
                              ctiqbe----tcp--2748      dns-------udp--53       
                              ftp-------tcp--21        gtp-------udp--2123,3386
                              h323-h225-tcp--1720      h323-ras--udp--1718-1719
                              http------tcp--80        icmp------icmp          
                              ils-------tcp--389       mgcp------udp--2427,2727
                              netbios---udp--137-138   radius-acct---udp--1646
                              rpc-------udp--111       rsh-------tcp--514      
                              rtsp------tcp--554       sip-------tcp--5060     
                              sip-------udp--5060      skinny----tcp--2000     
                              smtp------tcp--25        sqlnet----tcp--1521     
                              tftp------udp--69        xdmcp-----udp--177      

Icon-caution.gif

Если в class-map указано match default-inspection-traffic, то к этому классу может применяться только действие inspect

Протоколы, которые инспектируются по умолчанию:

asa1(config)# sh run policy-map 
policy-map type inspect dns preset_dns_map
 parameters
  message-length maximum 512
policy-map global_policy
 class inspection_default
  inspect dns preset_dns_map 
  inspect ftp 
  inspect h323 h225 
  inspect h323 ras 
  inspect rsh 
  inspect rtsp 
  inspect esmtp 
  inspect sqlnet 
  inspect skinny  
  inspect sunrpc 
  inspect xdmcp 
  inspect sip  
  inspect netbios 
  inspect tftp 
!

Настройки применены ко всем интерфейсам (global):

asa1(config)# sh run service-policy 
service-policy global_policy global

Восстановить настройки по умолчанию:

ASA(config)# clear configure fixup 

Статистика срабатываний default policy-map:

ASA(config)# sh service-policy 

[править] Инспектирование FTP

Инспектирование FTP выполняет такие действия:

  • Подготавливает динамическое соединение для передачи данных,
  • Отслеживает порядок команд и ответов на команды FTP,
  • Генерирует сообщения (audit trail),
  • Транслирует встроенные IP-адреса.

Без включенного инспектирование будет работать только Passive FTP для исходящего трафика.

Убрать инспектирование FTP трафика:

ASA(config)# policy-map global_policy
ASA(config-pmap)# class inspection_default
ASA(config-pmap-c)# no inspect ftp
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit
ASA(config)# 

Raw FTP command list

[править] Использование параметра strict

После включения параметра strict:

  • Команды FTP должны быть подтверждены прежде чем ASA разрешит новую команду,
  • ASA отбрасывает соединения, которые передают встроенные команды,
  • Команды 227 и PORT проверяются для того чтобы убедиться, что они не появляются в строке ошибки.

После включения параметра strict, каждая команда и ответ на неё отслеживаются и проверяются по таким критериям:

  • Truncated command — количество запятых в ответах PORT и PASV проверяется. Если количество запятых отлично от 5, то команда считается сокращенной (truncated) и TCP-соединение закрывается.

[править] Настройка дополнительных критериев анализа трафика

Настройка policy-map которая будет запрещать запросы get:

ASA(config)# policy-map type inspect ftp NO_GET
ASA(config-pmap)# match request-command get
ASA(config-pmap-c)# reset 
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit
ASA(config)# 

Применение созданной policy-map в default policy-map:

ASA(config)# policy-map global_policy
ASA(config-pmap)# class inspection_default
ASA(config-pmap-c)# inspect ftp strict NO_GET
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit
ASA(config)# 

[править] Инспектирование HTTP

[править] Запрет файлов с расширением .gif или .txt

Создать регулярное выражение для файлов с расширением .gif .txt

ASA(config)# regex FILE_TYPE_GIF ".+\.[Gg][Ii][Ff]"     
ASA(config)# regex FILE_TYPE_TXT ".+\.[Tt][Xx][Tt]"
ASA(config)# sh run regex                          
regex FILE_TYPE_TXT ".+\.[Tt][Xx][Tt]"
regex FILE_TYPE_GIF ".+\.[Gg][Ii][Ff]"

Проверка правильности созданного выражения:

ASA(config)# test regex emdfo.txt ".+\.[Tt][Xx][Tt]"

Объединение регулярных выражений в regex class-map:

ASA(config)# class-map type regex match-any BAD_FILES
ASA(config-cmap)# match regex FILE_TYPE_TXT
ASA(config-cmap)# match regex FILE_TYPE_GIF
ASA(config-cmap)# exit
ASA(config)# 

Создание class-map 3/4 уровня для выделения http трафика:

ASA(config)# class-map HTTP_TRAFFIC
ASA(config-cmap)# match port tcp eq http
ASA(config-cmap)# exit

Создание inspect policy-map и настройка действия drop-connection если присутствуют файлы с расширением .gif .txt:

ASA(config)# policy-map type inspect http BLOCK_FILES
ASA(config-pmap)# parameters 
ASA(config-pmap-p)# match request uri regex class BAD_FILES
ASA(config-pmap-c)# drop-connection 
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit

Создание policy-map 3/4 уровня для инспектирования http трафика с применением policy-map BLOCK_FILES:

ASA(config)# policy-map INSIDE_POLICY
ASA(config-pmap)# class HTTP_TRAFFIC
ASA(config-pmap-c)# inspect http BLOCK_FILES
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit
ASA(config)# 

Применение INSIDE_POLICY к интерфейсу inside:

ASA(config)# service-policy INSIDE_POLICY interface inside 

[править] Запрет файлов с расширением .gif или .txt и с URI больше чем 29 байт

Создание класса, в котором будут обозначены файлы с расширением .gif или .txt и с URI больше чем 29 байт

ASA(config)# class-map type inspect http match-all LONG
ASA(config-cmap)# match request uri regex class BAD_FILES
ASA(config-cmap)# match request uri length gt 29
ASA(config-cmap)# exit
ASA(config)# 

Применение класса в раннее созданной политике (удаляем класс BAD_FILES):

ASA(config)# policy-map type inspect http BLOCK_FILES
ASA(config-pmap)# parameters 
ASA(config-pmap-p)# no match request uri regex class BAD_FILES
ASA(config-pmap-p)# class LONG
ASA(config-pmap-c)# drop-connection 
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit
ASA(config)# 

[править] DNS rewrite (DNS doctoring)

[править] Site-to-site VPN

Основная страница: Cisco ASA/Site-to-Site_VPN

[править] Remote VPN

ASA1(config)# isakmp enable outside 
ASA1(config)# isakmp  identity add 
ASA1(config)# isakmp policy 10
ASA1(config-isakmp-policy)# authentication pre-share 
ASA1(config-isakmp-policy)# encryption des
ASA1(config-isakmp-policy)# hash md5 
ASA1(config-isakmp-policy)# group 2
ASA1(config-isakmp-policy)# lifetime 86400
ASA1(config-isakmp-policy)# exit
ASA1(config)# ip local pool MYPOOL 10.1.1.20-10.1.1.254
ASA1(config)# aaa-server MY protocol radius 
ASA1(config-aaa-server-group)# aaa-server MY (inside) host 10.0.1.2 cisco time
ASA1(config-aaa-server-host)# exit
ASA1(config)# tunnel-group SNPA type ipsec-ra 
ASA1(config)# tunnel-group SNPA general-attributes 
ASA1(config-tunnel-general)# address-pool MYPOOL
ASA1(config-tunnel-general)# authentication-server-group MY
ASA1(config-tunnel-general)# exit
ASA1(config)# tunnel-group SNPA ipsec-attributes 
ASA1(config-tunnel-ipsec)# pre-shared-key cisco
ASA1(config-tunnel-ipsec)# exit
ASA1(config)# access-list VPNRA permit ip 10.0.1.0 255.255.255.0 10.1.1.0 255.$
ASA1(config)# nat (inside) 0 access-list VPNRA
ASA1(config)# crypto ipsec transform-set MD5DES esp-des esp-md5-hmac 
ASA1(config)# crypto dynamic-map DYNOMAP 10 set transform-set MD5DES
ASA1(config)# crypto map VPNPEER 20 ipsec-isakmp dynamic DYNOMAP
ASA1(config)# crypto map VPNPEER interface outside 

[править] Split tunneling

ASA1(config)# group-policy route-test attributes
ASA1(config-group-policy)# split-tunnel-policy ?

group-policy mode commands/options:
  excludespecified  Exclude only networks specified by
                    split-tunnel-network-list
  tunnelall         Tunnel everything
  tunnelspecified   Tunnel only networks specified by split-tunnel-network-list
ASA1(config-group-policy)# split-tunnel-network-list value <ACL-name>

Для указания сетей в split tunneling, необходимо создать стандартный ACL, который описывает сети находящиеся за ASA.

[править] WebVPN

Основная страница: Cisco ASA/WebVPN

[править] Transparent firewall

Основная страница: Cisco ASA/Transparent firewall

[править] Security context

Разделение ASA на контексты позволяет создать внутри одного физического устройства несколько виртуальных.

В режиме нескольких контекстов не поддерживается:

  • Динамическая маршрутизация,
  • QoS
  • VPN
  • Маршрутизация multicast
  • Threat Detection
  • Phone Proxy

[4]

[править] Failover

Основная страница: Cisco ASA failover

[править] IPS

Основная страница: Cisco ASA/IPS

[править] Troubleshooting

Основная страница: Cisco ASA/Troubleshooting

[править] Дополнительная информация

Источник — «http://xgu.ru/wiki/Cisco_ASA»