Mostrando entradas con la etiqueta router. Mostrar todas las entradas
Mostrando entradas con la etiqueta router. Mostrar todas las entradas

jueves, 18 de diciembre de 2014

Listas de acceso IPv4 ( ACL)


 Las listas de acceso tienen muchas funciones dentro de los Routers , Switches y dispositivos de Seguridad  (QoS, VPN , PBR…)  , pero el más común es para filtrar paquetes.

Las ACLs permiten a los ingenieros una manera de identificar los paquetes en varias formas (IP, TCP, UDP) o por origen y destino ya sea por IP o puerto.  

Desde el punto de vista lógico, las listas de acceso pueden ser aplicadas para los paquetes entrantes a la interfaz o para los paquetes salientes.

Una vez el router tenga las listas de acceso configuradas inspeccionara cada paquete y dependiendo de la regla de la lista determinara si deja pasar o no a ese paquete.

Las listas de acceso solo permiten 2 acciones, permitir y denegar.

ACLs usan  “first-match logic”, esto significa que una vez un paquete  coincide con una línea del ACL , el router tomara la acción y no buscara por mas entradas en la lista de acceso.

Si un paquete no coincide con ningún ACL , el paquete es descartado. La razón es que todas las ACL tienen una denegación implícita al final.


Tipos de listas de acceso

Cisco IOS contiene las siguientes listas de acceso :
·         Estándar numeradas (1–99)
·         Extendidas numeradas  (100–199) 
·         Números adicionales (1300–1999  estándar, 2000–2699 extendidas)
·         ACL nombradas

Listas de acceso Estándar

Estándar ACL solo filtra los paquetes por su dirección de origen , utiliza numero en lugar de nombres.

Access-list {1-99 | 1300-1999} {permit | deny} matching-parameters

Ejemplo:

Access-list 5 permit 192.168.2.0 255.255.255.0
Access-list 5 deny   192.168.3.0 255.255.255.0



Mascaras Comodin “Wildcard Masks” 0.0.0.255, 0.0.255.255, 0.255.255.255

En los routers para identificar las redes , o los hosts de de esas redes que necesitamos filtrar es necesario hacer el proceso de subneteo mediante estas mascaras.

El valor de un “Wildcard mask” puede ser obtenido , substrayendo la mascara actual a la mascara de Broadcast 255.255.255.255

Por ejemplo si queremos filtrar la subred 192.168.1.0 255.255.255.0  , restamos la mascara original a la mascara de Broadcast , dándonos como resultado la mascara comodín 0.0.0.255

Otro ejemplo:

Si queremos filtrar la red 172.16.32.0 255.255.248.0 , usaríamos la mascara comodín 0.0.7.255 en nuestra lista de acceso.

Ejemplo:

Access-list 101 permit 172.16.32.0 0.0.7.255 any 


 En algunos casos vamos a necesitar permitir/denegar todo el trafico , con la palabra “any” vamos a ser posible esto dentro del ACL.

Listas de acceso extendidas

Muy similar a las listas de acceso estándar, deben ser habilitadas en la interfaz para los paquetes salientes o entrantes. IOS busca secuencial mente y usa la lógica de “first-match”.

Las listas de acceso extendidas se diferencian de las estándar , por la gran cantidad de paquetes con diferentes encabezados que permiten filtrar, una sola lista de acceso extendida puede filtrar múltiples puertos de aplicaciones en TCP/UDP .

Ejemplos

Access-list 101 deny icmp any any
Access-list 101 permit tcp eq https any any
Access-list 101 deny udp eq 2436 any any


Listas de Acceso Nombradas

Al igual que las listas de acceso estándar y extendidas, las listas de acceso nombradas son usadas para filtrar paquetes.
Las listas de acceso nombradas tienen 3 diferencias fundamentales en comparación a las anteriores:

•Usan nombres en lugar de números , facilitando el recordar la funcion del ACL
• Usan subcomandos para las ACL , no comandos globales.
• Funciones de edición en la ACL  permiten al usuario eliminar lineas independientes y agregar nuevas lineas a la existente ACL.



Ejemplo de un ACL Nombrada:

Router(config)# ip access-list extended Test
Router(config-ext-nacl)# permit tcp host 10.1.1.2 eq www any
Router(config-ext-nacl)# deny udp host 10.1.1.1 10.1.2.0 0.0.0.255
 Router(config-ext-nacl)# deny ip 10.1.3.0 0.0.0.255 10.1.2.0 0.0.0.255
Router(config-ext-nacl)# deny ip 10.1.2.0 0.0.0.255 10.2.3.0 0.0.0.255
Router(config-ext-nacl)# permit ip any any
Router(config-ext-nacl)# exit
Router(config)# interface fastethernet 0/0

Router(config)# ip access-group test out 



Espero sea de ayuda 

- Randy - 

jueves, 27 de noviembre de 2014

Configurando Routers y ASAs para sopotar DHCP


DHCP (Dynamic Host Configuration Protocol)  es un protocolo muy común.

DHCP tiene múltiples ventajas sobre las configuraciones manuales o estáticas.

La configuración de la red el host la obtiene mediante un servidor de DHCP , dando como resultado la configuración IP de los ordenadores es controlada por el personal de IT, simplificando el troubleshooting en caso de fallas.  

DHCP permite asignar las IPs de manera estática , pero normalmente se asigna temporalmente. Haciendo su uso más eficiente en la red.

Otra ventaja del protocolo DHCP es la movilidad , por ejemplo cuando un usuario se mueve a una nueva ubicación: otra oficina , un café, etc , el dispositivo se puede conectar a la red WI-FI y obtener una nueva IP mediante DHCP.

En algunas empresas ,  el router reenvía las peticiones a un servidor DHCP centralizado (ip helper-address), en otros casos el router actual como servidor DHCP.

El proceso de liberar una IP mediante DHCP (lease an IP) utiliza los siguientes 4 mensajes (DORA)

Descubrimiento (Discover): Enviada desde el cliente, esperando encontrar algún servidor DHCP
Ofrecimiento (Offer): Enviada por el servidor DHCP , ofreciendo una dirección  IP al cliente.

Solicitud (Request): Enviada por el cliente , preguntando al servidor por una IP disponible de la lista anteriormente enviada por el servidor.

Reconocimiento (Acknowledgment): Enviada por el servidor para assignar la IP , la mascara , la ruta por defecto y el servidor DNS al cliente.  


Soportando DHCP para redes remotas con “DHCP RELAY”

Muchas compañías tienen un par de servidores DHCP centralizados, los routers necesitan saber como reenviar las peticiones de DHCP que reciben de los clientes a esos servidores. Para hacer esto posible se necesita del comando “ip helper-address”

Este comando le dice al router que haga lo siguiente para la petición de DHCP

1.       Las peticiones de DHCP de los clientes vienen con una IP destino de  255.255.255.255
2.       El router cambia el origen del paquete por la IP de su interface en la que el paquete ingreso.
3.       El router cambia la IP destino del paquete por la del servidor DHCP previamente configurado.
4.       El router envía el paquete al servidor DHCP

Los pasos para configurar DHCP en IOS y ASA son los siguientes.

1.       Excluir las direcciones IP que no queremos asignar a los clientes.
2.        Crear un pool DHCP de IPs  el cual debe contener un rango de IPs , mascara , ruta por defecto , servidores DNS y dominios.

Ejemplo de la configuración de DHCP en IOS

Router(config)#ip dhcp  excluded-address 192.168.1.1 192.168.1.10
Router(config)#ip dhcp pool TEST
  Router(dhcp-config)#network 192.168.1.0 255.255.255.0
Router(dhcp-config)#default-router 192.168.1.1
Router(dhcp-config)#dns-server 4.2.2.2
Router(dhcp-config)# domain-name mydomain.com

Configuration de IP-relay on IOS

Router(config)#ip dhcp relay information trust-all
Router(config)#interface fastethernet x/x
Router(config)#IP helper-address x.x.x.x

Configuration de DHCP para ASA

Creamos un pool de direcciones y lo habilitamos en una interface

dhcpd address 192.168.1.5-192.168.1.7 outside


Asignamos los valores de DNS y WINS
dhcpd dns 192.168.0.1
dhcpd wins 172.0.0.1

Configuramos el tiempo antes que la IP expire en segundos y lo habilitamos en la interface.
dhcpd lease 3600
dhcpd enable outside
 
 
Configuration de DHCP-Relay para ASA

Configuramos la IP del servidor DHCP y la interface a la que pertenece

dhcprelay server 198.51.100.2 Outside
 
Habilitamos las interfaces en las que seran recibidas las peticiones de DHCP



dhcprelay enable inside                                    

Opcionalmente indicamos al ASA que el tambien debe obtener su IP mediante DHCP

dhcprelay setroute inside      

 
 
Algunos comandos que nos pueden servir para troublshotear DHCP en caso de problemas
En el caso del IOS:

·         show ip dhcp binding: Muestra una lista de las IPs asigandas .
·         show ip dhcp pool [poolname]: Muestra una lista de las IPs configuradas en el Pool , el numero de IPs usadas y disponibles. show ip dhcp server statistics: Lists DHCP server statistics
·         Show ip dhcp conflicto : lista si hay alguna IP conflictiva(duplicada) en la red.

En el ASA tenemos  los siguientes comandos :

 debug dhcpd event
debug dhcpd packet
show dhcpd statistics
show dhcpd binding 



Espero sea de ayuda

-  Randy -

viernes, 31 de octubre de 2014

Cisco Router Fast Switching y CEF


Al principio Cisco Routers usan internamente una lógica llamada "process switching " , por ahí de los años 80s y principios de los 90s,

"Process switching " funciona básicamente como un proceso de routing normal sin ninguna optimizan ( recibir el paquete , desencapsular , ver la dirección IP destino , revisar la tabla de ruteo , enviarla por la interfaz asociada )

Después a los mediados de los 90s , Cisco introdujo la tecnología llamada "Fast Switching " , el cual trajo una serie de optimizaciones comparado al modelo anterior.  Agregando otra lista a la ya existente tabla de ruteo.

Esta tabla de ruteo lista la dirección IP de los paquetes enviados recientemente. También mantiene un cache en el cual tiene una copia de los encabezados usados  para los  datos ingresados  recientemente , básicamente en lugar de crear un nuevo encabezado para cada paquete destinado a una IP en particular , el router salva tiempo , copiando los datos de los paquetes anteriores.




Cisco siguió mejorando con la introducción de "Cisco Express Forwarding " (CEF) , similar al proceso de  "fast switching " CEF usa tablas adicionales para búsquedas mas rápidas y salva los encabezados también .

CEF organiza sus tablas para todas los destinos de las  tablas de ruteo, no solo para algunas IPs de destino en especifico.

CEF también usa algoritmos de búsqueda y una estructura binaria mas sofisticada , comparada a tecnologías anteriores.

Como resultado las tablas de CEF busca ,  remplaza y compara con  la tabla de ruteo  de una manera mas eficaz , llevándole menos tiempo al router enviar los paquetes.  Y también genera una cache de los encabezados.

Hoy en día , prácticamente todos los modelos de Cisco routers y versiones de IOS usan CEF por defecto.

Basta añadir que CEF se puede desactivar en los routers con el siguiente comando , pero no es para nada recomendado ya que en solo unos segundos puede causar CPU alto y botar el dispositivo .

Se des habilita CEF prácticamente solo  para troubleshootear algunos bugs y en un entorno controlado.


router#(config )  no ip CEF

Espero sea de ayuda

- Randy-

jueves, 30 de octubre de 2014

Comando "Clock rate" en las interfaces del router.


La mayoria de Cisco routers son buscados directamente por las compañias para conectarse por medio de enlaces seriales al ISP.

Los enlaces WAN soportan una gran cantidad de velocidades  ,  los routers negocian la velocidad manualmente o por medio del CSU/DSU (Channel Service Unit/Data Service Unit) por un proceso llamado "clocking".


Con este proceso se ahorra la intervencion del administrador de configurar el "clock rate" .

Sin embargo en algunos casos puede ocurrir un "mismatch " o simplemente el CSU/DSU no envia los pulsos correctos.

En el router podemos cambiar la configuracion de la siguiente manera:

interface Serial0/0/0
ip address 192.168.10.1 255.255.255.252
clock rate 20000000  

O el valor soportado


Espero sea de ayuda.

- Randy -

lunes, 8 de septiembre de 2014

Asegurando el CLI de Router/switch Cisco


Por defecto los routers y switches vienen sin contraseña alguna para acceder a los diferentes modos.
Cualquiera persona pudiera accesar fácilmente a la administacion via consola del equipo o telnet si esta activado.

A continuación un ejemplo sencillo de autenticacion local en el dispositivo:

Switch> enable 
Switch# configure terminal 
Switch(config)# enable secret cisco    ---------► Esta contraseña se pedira cada vez que el usuario intente ingresar al "enable mode" desde cualquier tipo  de administracion.

 Switch(config)# line console 0 switch
(config-line)# password umbrella -------► Esta clave se solicitara solo para el acceso por consola
switch(config-line)# login 
switch (config-line)# exit 

Switch(config)# line vty 0 15 
Switch(config-line)# password love  -----► Esta clave se solicitara para el acceso por VTY
Switch (config-line)# login 
Switch (config-line)# end

También se pueden crear usuarios con diferentes passwords para el acceso de VTY con el comando:

Switch(config)# Username Cisco password Ciscofacil 

y con un simple comando de "Login" en el VTY se empezarian a autenticar los usuarios de esa manera.

El switch y el router pueden usar dispositivos externos para su autenticacion mediante el servicio de AAA, por ejemplo se podría ligar el servicio de Active directory de un windows server para hacer la autenticacion del personal de TI para administración via telnet.


Enable Secret Vs Enable Password

** En las ultimas versiones del Cisco IOS el comando "Enable password" ha sido depreciado ***

La diferencia entre estos dos comandos,  el comando "Enable secret" encripta el password automáticamente mientras el "Enable password" lo mantiene en "Clear text" o texto claro.

Si hacemos un "Show Run" al dispositvo podríamos ver la diferencia.

Enable secret utiliza un funcion de una sola via con el algoritmo MD5 y encripta nuestro password

(Ultimas versiones de IOS para router soportan SHA-256 como función para encriptar)





Por ultimo si hacemos un "Show run " al dispositivo veremos los password de consola y VTY en texto claro para encriptarlos debemos utilizar el comando "Service password-encription".

Espero sea de ayuda.

Saludos.