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.
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
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
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
! 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
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
object network MYHOST host 10.0.0.2 object network MYHOSTPUBLIC host 100.0.0.120 nat (inside,outside) source static MYHOST MYHOSTPUBLIC
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
object network INSIDE_SUBNET subnet 192.168.0.0 255.255.255.0 exit nat (inside,outside) source dynamic INSIDE_SUBNET interface
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