ASA é um dispositivo Cisco, o mesmo conceito teórico utilizado em roteador (porém alguns comandos são diferentes) é aplicado ao IOS de um ASA. Um detalhe interessande o ASA é que é possível digitar qualquer comado show a partir de qualquer modo de configuração
Porém, maos a obra:
Para configurar uma interface em um ASA e deixar ela funcionando é necessário 4 coisas
Configurando três interfaces, sendo elas:
Wendy(config)# interface Ethernet 1
Wendy(config-if)# ip address 172.20.0.1 255.255.240.0
Wendy(config-if)# nameif local
INFO: Security level for "local" set to 0 by default.
Wendy(config-if)# security-level 100
Wendy(config-if)# no shutdown
Wendy(config-if)# exit
---
Wendy(config)# interface Ethernet 2
Wendy(config-if)# ip address 172.20.240.1 255.255.240.0
Wendy(config-if)# nameif DMZ
INFO: Security level for "DMZ" set to 0 by default.
Wendy(config-if)# security-level 47
Wendy(config-if)# no shutdown
Wendy(config-if)# exit
----
Wendy(config)# interface Ethernet 3
Wendy(config-if)# ip address 97.192.32.19 255.255.255.240
Wendy(config-if)# nameif interwebs
INFO: Security level for "interwebs" set to 0 by default.
Wendy(config-if)# security-level 0 #desnecessário nesse caso
Wendy(config-if)# no shutdown
Consegue dizer qual tráfego será permitido se apenas essa configuração for setada?
Há dois tipos de rotas em um ASA (basicamente), rotas estáticas e rotas dinâmicas
Para configurar rotas em um ASA a lógica é a mesma de um roteador Cisco ou do Linux ou do Windows:
Apenas o comando que é um pouco diferente
Wendy(config)# route interwebs 0.0.0.0 0.0.0.0 97.192.32.30
‘‘Lendo a linha de comando: '’
Roteie para a interface intewerbs todo o o tráfego que eu não tenho rotas (0.0.0.0 0.0.0.0) com ip de próximo salto 97.192.32.30
Saída:
Wendy# sh route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is 97.192.32.30 to network 0.0.0.0
C 172.20.240.0 255.255.240.0 is directly connected, DMZ
C 172.20.0.0 255.255.240.0 is directly connected, local
C 97.192.32.16 255.255.255.240 is directly connected, interwebs
S* 0.0.0.0 0.0.0.0 [1/0] via 97.192.32.30, interwebs
Wendy#
Leia sobre Roteamento Dinâmico caso tenha dúvidas: Aplicar roteamento dinâmico em uma ASA é semelhante a aplicação em Roteadores Cisco
OSPF
Wendy(config)# router ospf 13
Wendy(config-router)# network 172.20.0.0 255.255.240.0 area 0
Wendy(config-router)# network 172.20.240.0 255.255.240.0 area 0
Saída das Rotas
Wendy# show route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Gateway of last resort is 97.192.32.30 to network 0.0.0.0
C 172.20.240.0 255.255.240.0 is directly connected, DMZ
C 172.20.0.0 255.255.240.0 is directly connected, local
C 97.192.32.16 255.255.255.240 is directly connected, interwebs
O 10.0.0.0 255.255.255.0 [110/20] via 172.20.240.2, 0:01:39, DMZ
O 10.0.4.0 255.255.255.0 [110/20] via 172.20.240.2, 0:01:39, DMZ
S* 0.0.0.0 0.0.0.0 [1/0] via 97.192.32.30, interwebs
Wendy#
Saída do OSPF
Wendy# show ospf 13
Routing Process "ospf 13" with ID 172.20.0.1 and Domain ID 0.0.0.13
Supports only single TOS(TOS0) routes
Does not support opaque LSA
SPF schedule delay 5 secs, Hold time between two SPFs 10 secs
Minimum LSA interval 5 secs. Minimum LSA arrival 1 secs
Number of external LSA 0. Checksum Sum 0x 0
Number of opaque AS LSA 0. Checksum Sum 0x 0
Number of DCbitless external and opaque AS LSA 0
Number of DoNotAge external and opaque AS LSA 0
Number of areas in this router is 1. 1 normal 0 stub 0 nssa
External flood list length 0
Area BACKBONE(0)
Number of interfaces in this area is 2
Area has no authentication
SPF algorithm executed 3 times
Area ranges are
Number of LSA 3. Checksum Sum 0x 9357
Number of opaque link LSA 0. Checksum Sum 0x 0
Number of DCbitless LSA 0
Number of indication LSA 0
Number of DoNotAge LSA 0
Flood list length 0
Wendy#
Lista de Controle de Acesso é utilizada pelo ASA para várias coisas entre elas se destacam
Nesse exemplos vamos criar uma access-list e configura-la a interface.
Wendy(config)# access-list ragazzid remark Lista de Acesso para a Rede Local
Wendy(config)# access-list ragazzid permit tcp any any eq 80
Wendy(config)# access-list ragazzid permit tcp any any eq 443
Wendy(config)# access-list ragazzid permit tcp any any eq 22
Wendy(config)# access-list ragazzid permit tcp any any eq 23
Wendy(config)# access-list ragazzid permit tcp any any eq 21
Wendy(config)# access-list ragazzid permit tcp any any eq 20
Wendy(config)# access-list ragazzid permit udp any host 4.2.2.2 eq 53
Wendy(config)# access-list ragazzid permit udp any host 4.8.8.8 eq 53
Wendy(config)# access-group ragazzid in interface local
Porém, como estamos falando de um ASA, podemos reduzir todas as linhas acima em 3 linhas (de ACL), pois o ASA suporta GRUPOS, seja de hosts ou de portas
Wendy(config)# object-group network Web-Dns-Servers
Wendy(config-network)# description Servidores DNS publicos
Wendy(config-network)# network-object host 4.2.2.2
Wendy(config-network)# network-object host 8.8.8.8
Wendy(config-network)# exit
Wendy(config)# object-group service WebPorts-tcp tcp
Wendy(config-service)# port-object eq 80
Wendy(config-service)# port-object eq 443
Wendy(config-service)# port-object eq 20
Wendy(config-service)# port-object eq 21
Wendy(config-service)# port-object eq 22
Wendy(config-service)# port-object eq 23
Wendy(config-service)# exit
Wendy(config)# object-group service DnsPorts-udp udp
Wendy(config-service)# port-object eq 53
Wendy(config-service)# exit
Wendy(config)# access-list ragazzid remark Lista de Acesso para a Rede Local
Wendy(config)# access-list ragazzid permit tcp any any object-group WebPorts-tcp
Wendy(config)# access-list ragazzid permit udp any object-group Web-Dns-Servers object-group DnsPorts-udp
Pode dar um pouco mais de trabalho para fazer mas no final o resultado é ótimo pois as regras se tornam mais fáceis de serem modificadas (escalabilidade). Exemplo: Caso exista a necessidade permitir além das WebPorts-TCP como:
Sem os grupos precisariámos criar 3 novas linhas mas como usamos grupos precisamos apenas digiar as seguintes linhas:
Wendy(config)# object-group service WebPorts-tcp tcp
Wendy(config-service)# port-object eq 110
Wendy(config-service)# port-object eq 25
Wendy(config-service)# port-object eq 8080
Saídas (Grupos e ACL)
Wendy# show running-config object-group id Web-Dns-Servers
object-group network Web-Dns-Servers
description: Servidores DNS publicos
network-object host 4.2.2.2
network-object host 8.8.8.8
Wendy# show running-config object-group id WebPorts-tcp
object-group service WebPorts-tcp tcp
port-object eq www
port-object eq https
port-object eq ftp-data
port-object eq ftp
port-object eq ssh
port-object eq telnet
port-object eq pop3
port-object eq smtp
port-object eq 8080
Wendy# show running-config object-group id DnsPorts-udp
object-group service DnsPorts-udp udp
port-object eq domain
Wendy# show running-config access-list
access-list ragazzid remark Lista de Acesso para a Rede Local
access-list ragazzid extended permit tcp any any object-group WebPorts-tcp
access-list ragazzid extended permit udp any object-group Web-Dns-Servers object-group DnsPorts-udp
Para ver tudo: show running-config
Para ver todos os grupos: show running-config object-group
Tradução de Endereço de Rede (Network Address Translate), para mais informações acesso o link NAT
O nat estático basicamente dá um ip público a um ip privado, um ou mais hosts da sua rede ficam visíveis para a internet. Para configurar o NAT estático é necessário ter interfaces configuradas, pelo menos duas, e ips disponíveis para a tradução.
Situação: Em uma determinada DMZ existe um servidor de ftp (FTP Server) que precisa ser acessado por qualquer pessoa que use a internet, esse servidor armazena arquivos de imagens. O IP do servidor é: 172.20.244.20 O IP público reservado do ISP para DMZ é 97.192.32.35
Fluxo do tráfego:
Inicia
Interface de Entrada: Internet | IP de origem: ANY | IP de destino: 97.192.32.35
Interface de Saída: DMZ | IP de origem ANY | IP de destino: 172.20.244.20
Retorna
Interface de Entrada: DMZ | IP de origem: 172.20.244.20 | IP de destino: any
Interface de Saída: Internet | IP de origem: 97.192.32.35 | IP de destino: any
Comandos:
static (DMZ,interwebs) 97.192.32.35 172.20.244.20 netmask 255.255.255.255
Também é possível configurar uma ACL ou usar o ip de uma interface (interface nameif)
Considerando que existam ACL para o tráfego:
ACLs que permitiram o tráfego:
Wendy(config)# access-list internet permit tcp any host 97.192.32.35 eq 20
Wendy(config)# access-list internet permit tcp any host 97.192.32.35 eq 21
Wendy(config)# access-group internet in interface interwebs
(Se você encontrou algum dúvida em utilizar apenas essas ACLs, por favor, revise o conceito de stateful
Enquanto no NAT estático usa-se 1 ip público para um ip privado no NAT dinâmico é usado 1 (ou mais) ips público(s) para vários endereços privados (internos), é exatamente isso o que acontece quando usa-se se usa um roteador wireless (ou não) em casa.
Para configurar NAT Dinâmico em um ASA:
Nosso caso: Vamos liberar acesso a internet da interface local para a interwebs
Primeiro passo: Criar a lista Local, que terá permissão de ser traduzida
Wendy(config)# access-list localParaInterwebs permit tcp 172.20.0.0 255.255.255.240 any object-group WebPorts-tcp
Segundo Passo: Agora vamos criar o nosso global (usaremos o ip da internet)
Wendy(config)# global (interwebs) 47 interface
INFO: interwebs interface address added to PAT pool
Wendy(config)#
O número 47 é o ID no nat, o nosso local deve corresponder a esse número. Quando o ASA for verificar as entradas NAT ele irá verificar do menor número para o maior e relacionar a entrada Global com a entrada NAT
Terceiro passo: Configurar o NAT local
Wendy(config)# nat (interwebs) 47 access-list localParaInterwebs
Wendy(config)#
Fim (:
Usei ip público e privado como exemplo, mas isso não é uma restrição, você pode traduzir 192.168.0.1 para 172.20.0.1
Para configurar o Failover em um ASA é necessário ter pelo menos uma interface dedicada para o failover link, essa interface será usada para trocar informações de failover, assim como atualizar o ASA em standby.
Também é possível fazer statefull failover, nesse caso serão necessárias 2 interfaces; 1 para o failover e outra para a troca de inforações de estado (informações de sesoes) como:
Os seguintes comandos não serão replicados:
Como não estamos falando de um FWSM não precisamos nos preocupar com o modo do ASA, pois o padrão é Router & Single Mode.
Wendy# show firewall
Firewall mode: Router
Wendy# show mode
Security context mode: single
Wendy#
Caso você esteja usando multiplos contextos é necessário fazer isso no SYSTEM e mudar o modo para Router & Multiple mode
Wendy(config)# mode multiple
WARNING: This command will change the behavior of the device
WARNING: This command will initiate a Reboot
Proceed with change mode? [confirm]
Para mais informações:
http://www.cisco.com/en/US/products/hw/vpndevc/ps2030/products_configuration_example09186a00807dac5f.shtml
http://www.cisco.com/en/US/docs/security/asa/asa72/configuration/guide/failover.html#wp1165145
Configurar todas as interfaces com endereços ips normalmente, porém um detalhe a mais será adicionado. É necessário especificar o ip do firewall em standby. Como um firewall será espelho do outro é necessário utilizar sepre dois (2) ips para cada interface:
Wendy(config)# interface Ethernet 1
Wendy(config-if)# ip address 172.20.0.1 255.255.240.0 standby 172.20.0.2
Wendy(config-if)# nameif local
INFO: Security level for "local" set to 0 by default.
Wendy(config-if)# security-level 100
Wendy(config-if)# no shutdown
Wendy(config-if)# exit
---
Wendy(config)# interface Ethernet 2
Wendy(config-if)# ip address 172.20.240.1 255.255.240.0 standby 172.20.240.2
Wendy(config-if)# nameif DMZ
INFO: Security level for "DMZ" set to 0 by default.
Wendy(config-if)# security-level 47
Wendy(config-if)# no shutdown
Wendy(config-if)# exit
----
Wendy(config)# interface Ethernet 3
Wendy(config-if)# ip address 97.192.32.19 255.255.255.240 standby 97.192.32.20
Wendy(config-if)# nameif interwebs
INFO: Security level for "interwebs" set to 0 by default.
Wendy(config-if)# security-level 0 #desnecessário nesse caso
Wendy(config-if)# no shutdown
Nesse caso vamos usar a Ethernet 4 como interface de failover
Wendy(config)# failover lan interface failoverRagazziD Ethernet4
INFO: Non-failover interface config is cleared on Ethernet4 and its sub-interfaces
Wendy(config)#
Agora vamos dar um endereço IP e ativar a interface failover.
Wendy(config)# failover interface ip failoverRagazziD 10.0.0.1 255.255.255.252 standby 10.0.0.2
Wendy(config)# interface Ethernet 4
Wendy(config-if)# no shutdown
Wendy(config-if)# exit
Wendy(config)#
Configurando esse ASA como active
Wendy(config)# failover lan unit primary
Wendy(config)#
Ativando o failover
Wendy(config)# failover
Wendy(config)#
Resultado:
Wendy(config)# .
No Response from Mate
Precisamos configurar o standby agora, portanto vamos iniciar a configuração no ASA Visinho
ASA> ena
Password:
ASA# conf t
ASA(config)# failover lan interface failoverRagazziD Ethernet4
INFO: Non-failover interface config is cleared on Ethernet4 and its sub-interfaces
ASA(config)#failover interface ip failoverRagazziD 10.0.0.1 255.255.255.252 standby 10.0.0.2
ASA(config)# interface Ethernet 4
ASA(config-if)# no shutdown
ASA(config)# failover lan unit secondary
ASA(config)# failover
Aguarde alguns segundos e:
ASA(config)# .
Detected an Active mate
Beginning configuration replication from mate.
End configuration replication from mate.
Wendy(config)#
Como ver ser está funcionando?
Wendy(config)# show ip address
System IP Addresses:
Interface Name IP address Subnet mask Method
Ethernet1 local 172.20.0.1 255.255.240.0 CONFIG
Ethernet2 DMZ 172.20.240.1 255.255.240.0 CONFIG
Ethernet3 interwebs 97.192.32.19 255.255.255.240 CONFIG
Ethernet4 failoverRagazziD 10.0.0.1 255.255.255.252 unset
Current IP Addresses:
Interface Name IP address Subnet mask Method
Ethernet1 local 172.20.0.2 255.255.240.0 CONFIG
Ethernet2 DMZ 172.20.240.2 255.255.240.0 CONFIG
Ethernet3 interwebs 97.192.32.20 255.255.255.240 CONFIG
Ethernet4 failoverRagazziD 10.0.0.2 255.255.255.252 unset
Wendy(config)#
Caso você tente altera algo na caixa standby:
Wendy# conf t
**** WARNING ****
Configuration Replication is NOT performed from Standby unit to Active unit.
Configurations are no longer synchronized.
Wendy(config)#
Você irá conseguir alterar mas essa configuração não será replicado no Ativo
Verificar o funcionamento do Failover:
Wendy# show failover
Failover On
Cable status: N/A - LAN-based failover enabled
Failover unit Secondary
Failover LAN Interface: failoverRagazziD Ethernet4 (up)
Unit Poll frequency 15 seconds, holdtime 45 seconds
Interface Poll frequency 5 seconds, holdtime 25 seconds
Interface Policy 1
Monitored Interfaces 3 of 250 maximum
Version: Ours 8.2(2), Mate 8.2(2)
Last Failover at: 01:40:50 UTC Nov 27 2012
This host: Secondary - Standby Ready
Active time: 0 (sec)
Interface local (172.20.0.2): Link Down (Waiting)
Interface DMZ (172.20.240.2): Link Down (Waiting)
Interface interwebs (97.192.32.20): Link Down (Waiting)
Other host: Primary - Active
Active time: 450 (sec)
Interface local (172.20.0.1): Link Down (Waiting)
Interface DMZ (172.20.240.1): Link Down (Waiting)
Interface interwebs (97.192.32.19): Link Down (Waiting)
Stateful Failover Logical Update Statistics
Link : Unconfigured.
Wendy# show failover
Failover On
Cable status: N/A - LAN-based failover enabled
Failover unit Secondary
Failover LAN Interface: failoverRagazziD Ethernet4 (up)
Unit Poll frequency 15 seconds, holdtime 45 seconds
Interface Poll frequency 5 seconds, holdtime 25 seconds
Interface Policy 1
Monitored Interfaces 3 of 250 maximum
Version: Ours 8.2(2), Mate 8.2(2)
Last Failover at: 01:40:50 UTC Nov 27 2012
This host: Secondary - Standby Ready
Active time: 0 (sec)
Interface local (172.20.0.2): Link Down (Waiting)
Interface DMZ (172.20.240.2): Link Down (Waiting)
Interface interwebs (97.192.32.20): Link Down (Waiting)
Other host: Primary - Active
Active time: 450 (sec)
Interface local (172.20.0.1): Link Down (Waiting)
Interface DMZ (172.20.240.1): Link Down (Waiting)
Interface interwebs (97.192.32.19): Link Down (Waiting)
Stateful Failover Logical Update Statistics
Link : Unconfigured.
Wendy#
Category:Cisco Category:CCNA Secutity Category:Cisco Security Category:ASA