Inhaltsverzeichnis

Cisco ASA (Adaptive security appliance) ist eine zonenbasierte Firewall. Identity-firewall mit ldap ist möglich.

Siehe cisco_asa_primer.pdf, ACL ASA Basic configuration

Es gibt

Inside hat einen Securitylevel von 100, Outside hat einen Securitylevel von 0. Alle selbst erstellten Bezeichnungen bekommen zu Beginn einen Securitylevel von 0. Traffic von hohem nach niedrigem Level wird erlaubt, umgekehrt müsste eine ACL es explizit erlauben.

Ohne Security-Zones kann man keine IP Adressen konfigurieren.

Es gibt „routed“ (Layer 3, default mode) und „transparent“ (Layer 2) mode. Im „routed“ mode müssen angeschlossene Netzwerke in unterschiedlichen Subnetzen sein, im „transparent“ mode können sie auch im selben Subnetz sein.

Security Zone

Eine der Schlüsselkomponenten in der ASA-Konfiguration sind Sicherheitszonen (Security Zones). Sicherheitszonen ermöglichen es, das Netzwerk in verschiedene Bereiche zu unterteilen, um den Datenverkehr zwischen ihnen zu steuern und zu kontrollieren.

asa(config)# interface GigabitEthernet0/0
asa(config-if)# nameif inside
asa(config-if)# security-level 100
Inside hat einen Standard Security Level von 100, Outside hat einen Standard Security Level von 0.

Traffic aus einem höheren Security-Level kann in einen Context mit niedrigerem Security-Level. Umgekehrt geht das nicht so einfach. Mit ACLs kann man das dann fein einstellen.

ciscoasa# conf t
ciscoasa(config)# hostname ASA
ASA(config)# interface GigabitEthernet0/0
ASA(config-if)# nameif outside
ASA(config-if)# ip address 1.2.3.4 255.255.255.252
ASA(config-if)# no shutdown
ASA(config-if)#
ASA(config-if)# interface GigabitEthernet0/1
ASA(config-if)# nameif inside
ASA(config-if)# ip address 1.2.3.4 255.255.255.252
ASA(config-if)# no shutdown
ASA(config-if)# exit
ASA(config)#
ASA(config)# do show nameif

Object

Mit Objekten beschreibt man IP, FQDN, Subnetze, IP Ranges.

ASA(config)# object network MYHOST
ASA(config-network-object)# host 10.0.0.2

ASA(config)# object network LOCAL_SUBNET
ASA(config-network-object)# subnet 10.0.0.0 255.255.255.0

ASA(config)# object network NATPOOL
ASA(config-network-object)# range 100.0.0.10 100.0.0.20
! Man kann das NAT im Objekt selbst konfigurieren!
ASA(config-network-object)# nat (inside,outside) dynamic interface

ACL

! access-list <name> <action> <protocol> <source> <destination>
ASA(config)# access-list ALLOW_IN permit ip any any
ASA(config)# access-list ALLOW_IN permit ip any 10.0.0.0 255.255.255.0
ASA(config)# access-list ALLOW_IN permit ip any object LOCALSUBNET

! access-group <name> <direction> interface <interface>
ASA(config)# access-group ALLOW_IN in interface outside

DHCP

dhcpd address 192.168.0.10-192.168.0.20 inside
dhcpd option 3 ip 192.168.0.1
dhcpd domain zarat.local
dhcpd lease 3000
dhcpd dns 8.8.8.8 8.8.4.4
dhcpd enable inside

NAT

Static NAT

object network MYHOST
 host 10.0.0.2

object network MYHOSTPUBLIC
 host 100.0.0.120

nat (inside,outside) source static MYHOST MYHOSTPUBLIC

Dynamic NAT

object network INSIDE_SUBNET
 subnet 192.168.0.0 255.255.255.0
 exit

object network POOL1
 range 1.1.1.1 1.1.1.5
 exit

nat (inside,outside) source dynamic INSIDE_SUBNET POOL1

PAT

 object network INSIDE_SUBNET
 subnet 192.168.0.0 255.255.255.0
 exit

nat (inside,outside) source dynamic INSIDE_SUBNET interface

LAB

int gi0/0
 nameif outside
 ip address 1.1.1.2 255.255.255.0
 no shut
 exit

int gi0/1
 nameif inside
 ip address 192.168.0.1 255.255.255.0
 no shut
 exit

dhcpd address 192.168.0.10-192.168.0.20 inside
dhcpd dns 8.8.8.8
dhcpd enable inside

! Route ins Internet
route outside 0.0.0.0 0.0.0.0 1.1.1.1

! Dynamic NAT für das LAN
object network INSIDE
 subnet 192.168.0.0 255.255.255.0
 nat (inside,outside) dynamic interface

! ICMP (Ping), UDP (Dns), TCP (Http)
access-list INTERNET extended permit icmp any any
access-list INTERNET extended permit udp any any
access-list INTERNET extended permit tcp any any

access-group INTERNET in interface outside