[[cisco|Cisco]] ASA (Adaptive security appliance) ist eine zonenbasierte Firewall. Identity-firewall mit ldap ist möglich. Siehe {{huemer:cisco_asa_primer.pdf}}, [[https://youtu.be/gFqzZm1-KH8|ACL ASA Basic configuration]] Es gibt * Security-Zones (inside, outside, dmz) * Access-Rules (permit/deny) SIehe [[https://www.ciscopress.com/articles/article.asp?p=2104953|Access List Configuration]] * Access-groups (in, out) auf jedem Security-zone-interface * NAT-Rules * Objects [[https://youtu.be/81YDb6EvurM|1]] [[https://www.cisco.com/c/en/us/td/docs/security/asa/asa99/configuration/firewall/asa-99-firewall-config/access-objects.html|2]] (Network, Service, User) 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|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 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 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==== {{asa_nat.png}} 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 =====Links===== * Downloads: [[https://upw.io/I6/asav981.qcow2|kvm-qcow2]], [[https://upw.io/I7/asav981.vhdx|hyper-v-vhdx]], [[https://upw.io/s1/asav981.zip|vmware-ova]], [[https://upw.io/s0/asdm-781.bin|ASDM bin]] * [[https://youtube.com/playlist?list=PLP8xst0Qzqz9uO1qlLWJYTtWk0Bj7Etn8|Cisco ASA Playlist]] * [[https://www.cisco.com/c/en/us/support/security/asa-5500-series-next-generation-firewalls/products-installation-and-configuration-guides-list.html|ASA configuration guides]] * [[https://youtu.be/gFqzZm1-KH8|Cisco ASA ACLs]] * [[https://www.youtube.com/watch?v=4SZuM266do8|Cisco ASA Firewall Active/Standby Failover Configuration - Step by Step (Youtube)]] * [[https://www.youtube.com/watch?v=DPOaxvoU53Q|Cisco ASA Active Standby & Active Active Failover Configuration (Youtube)]] * [[https://www.youtube.com/watch?v=SZmtBNtRnGU|Cisco ASA Active Active Failover Tshoot & Cut Through Proxy]]