jueves, 18 de junio de 2015

Cisco ASA - Como configurar enrutamiento entre 2 VLAN internas

Problema inicial


Un cliente solicitó la siguiente configuración. Se tenia un DMZ configurado en un Cisco ASA 5505 y ya se habían configurado otras VLANs para diferentes propósitos, por ejemplo el acceso a Internet para visitantes. Pero el cliente necesitaba una VLAN secundaria configurada para teléfonos IP. Adicionalmente se tenia que enrutar tráfico entre las dos VLAN internas. Aquí está el escenario que se usará en este caso:
ASA Inter VLAN Routing

Solución


Primero es importante comprender que el ASA es un Firewall, no un Router!. Una mejor solución para este caso sería tener un Router detrás del Firewall o un Switch de capa 3.

En este caso el ASA debe tener una licencia Security Plus para poder hacer esto. También es importante mencionar que los comandos van a ser diferentes si es que el Firewall está corriendo una versión de sistema operativo anterior al 8.3. Si este fuera el caso consulta aquí.

Como configurar enrutamiento VLAN en un ASA 5505

1. Conéctese al Firewall, ingrese al modo enable y luego al modo de configuración global

User Access Verification
Password:

Type help or '?' for a list of available commands. 


Petes-ASA> enable
Password: ********
Petes-ASA# configure terminal
Petes-ASA(config)#

2. Como se muestra en el diagrama se tienen 3 VLANs. La VLAN 0 es Outside y va a estar conectada en Ethernet 0/0. La VLAN 1 es Inside y va a estar conectada a Ethernet 0/1. La VLAN 112 es para los teléfonos y va a estar conectada a Ethernet 0/2. A continuación se configuran las direcciones IP, se añaden las VLANs a las interfaces físicas.

Nota: No es necesario asociar la VLAN 1 a  Ethernet 0/1 porque por defecto todos los puertos están asociados a la VLAN 1.
Petes-ASA(config)# interface Ethernet0/0
Petes-ASA(config-if)# switchport access vlan 2
Petes-ASA(config-if)# interface Ethernet0/2
Petes-ASA(config-if)# switchport access vlan 112
Petes-ASA(config-if)# interface Vlan1
Petes-ASA(config-if)# nameif inside
Petes-ASA(config-if)# security-level 100
Petes-ASA(config-if)# ip address 192.168.12.254 255.255.255.0
Petes-ASA(config-if)# interface Vlan2
Petes-ASA(config-if)# nameif outside
Petes-ASA(config-if)# security-level 0
Petes-ASA(config-if)# ip address 123.123.123.123 255.255.255.248
Petes-ASA(config-if)# interface Vlan112
Petes-ASA(config-if)# nameif PHONE_VLAN_112
Petes-ASA(config-if)# security-level 100
Petes-ASA(config-if)# ip address 192.168.112.254 255.255.255.0


3.Para hacer que el tráfico pueda dirigirse a Internet necesitamos especificar una ruta hacia el Router externo
Petes-ASA(config)# route outside 0.0.0.0 0.0.0.0 123.123.123.124

4. Active el 'Hair Pinning' (la opción para que se pueda enrutar un paquete hacia la misma interface por la que llegó) y permita el paso de trafico entre interfaces.
Petes-ASA(config)# same-security-traffic permit inter-interface
Petes-ASA(config)# same-security-traffic permit intra-interface

5. En este siguiente paso, si no configuraste ningún access-lists entonces puedes saltarlo debido a que el trafico va a ser permitido desde una interface con mayor seguridad (la Inside y la de telefonos) hacia una de menor seguridad (la interface Outside). Para este ejemplo se creará un ACL de todas maneras.
Petes-ASA(config)# access-list VLAN112_outbound extended permit ip 192.168.112.0 255.255.255.0 any
Petes-ASA(config)# access-list outbound extended permit ip 192.168.12.0 255.255.255.0 any
Petes-ASA(config)# access-group outbound in interface inside
Petes-ASA(config)# access-group VLAN112_outbound in interface PHONE_VLAN_112
 
6. Ahora configuramos el NAT dinámico de manera que todo el tráfico que viene de las VLAN Inside y de la VLAN de telefonía pueda ser nateado hacia la dirección IP pública.


Petes-ASA(config)# object network obj_any
Petes-ASA(config-network-object)# subnet 0.0.0.0 0.0.0.0
Petes-ASA(config-network-object)# nat (inside,outside) dynamic interface
Petes-ASA(config-network-object)# object network obj_any-01
Petes-ASA(config-network-object)# subnet 0.0.0.0 0.0.0.0
Petes-ASA(config-network-object)# nat (PHONE_VLAN_112,outside) dynamic interface

7.  Ahora configuramos una NAT estática para que el trafico que viaja entre la VLAN Inside y la VLAN de telefonía no sea nateado.

Petes-ASA(config)# object network obj-192.168.12.0
Petes-ASA(config-network-object)# subnet 192.168.12.0 255.255.255.0
Petes-ASA(config-network-object)# nat (inside,PHONE_VLAN_112) static 192.168.112.0
Petes-ASA(config-network-object)# object network obj-192.168.112.0
Petes-ASA(config-network-object)# subnet 192.168.112.0 255.255.255.0
Petes-ASA(config-network-object)# nat (PHONE_VLAN_112,inside) static 192.168.112.0

8. Habilitamos enrutamiento y configuramos el MTU para las tres VLANs
Petes-ASA(config)# router eigrp 500
Petes-ASA(config-router)# network 192.168.12.0 255.255.255.0
Petes-ASA(config-router)# network 192.168.112.0 255.255.255.0
Petes-ASA(config-router)# passive-interface outside
Petes-ASA(config-router)# exit
Petes-ASA(config)# mtu inside 1500
Petes-ASA(config)# mtu outside 1500
Petes-ASA(config)# mtu PHONE_VLAN_112 1500

9. Guardamos los cambios y procedemos a hacer las pruebas

Petes-ASA(config)# write memory
 
Building configuration...
Cryptochecksum: aab5e5a2 c707770d f7350728 d9ac34de
[OK]
 

Petes-ASA(config)#

Aqui está la configuración completa para "Copiar y Pegar":


interface Ethernet0/0
switchport access vlan 2
!
interface Ethernet0/1
!
interface Ethernet0/2
switchport access vlan 112
!
interface Vlan1
nameif inside
security-level 100
ip address 192.168.12.254 255.255.255.0
!
interface Vlan2
nameif outside
security-level 0
ip address 123.123.123.123 255.255.255.248
!
interface Vlan112
nameif PHONE_VLAN_112
security-level 100
ip address 192.168.112.254 255.255.255.0
!
same-security-traffic permit inter-interface
same-security-traffic permit intra-interface
!
access-list VLAN112_outbound extended permit ip 192.168.112.0 255.255.255.0 any
access-list outbound extended permit ip 192.168.12.0 255.255.255.0 any
!
object network obj-192.168.12.0
subnet 192.168.12.0 255.255.255.0
nat (inside,PHONE_VLAN_112) static 192.168.112.0
object network obj-192.168.112.0
subnet 192.168.112.0 255.255.255.0
nat (PHONE_VLAN_112,inside) static 192.168.112.0
object network obj_any
subnet 0.0.0.0 0.0.0.0
nat (inside,outside) dynamic interface
object network obj_any-01
subnet 0.0.0.0 0.0.0.0
nat (PHONE_VLAN_112,outside) dynamic interface
!
mtu inside 1500
mtu outside 1500
mtu PHONE_VLAN_112 1500
!
access-group outbound in interface inside
access-group VLAN112_outbound in interface PHONE_VLAN_112
!
router eigrp 500
network 192.168.12.0 255.255.255.0
network 192.168.112.0 255.255.255.0
passive-interface outside
!
route outside 0.0.0.0 0.0.0.0 123.123.123.124
Fuente: http://www.petenetlive.com/ con algunas traducciones y adecuaciones del editor del BLOG

No hay comentarios:

Publicar un comentario