Configuración de Firewall Cisco Pix

download Configuración de Firewall Cisco Pix

of 15

Transcript of Configuración de Firewall Cisco Pix

Configuracin de Firewall Cisco PIX

Introduccin PIX (Private Internet eXchange) es una de las soluciones de seguridad ofrecidas por Cisco Systems; se trata de un firewall completamente hardware: a diferencia de otros sistemas cortafuegos, PIX no se ejecuta en una mquina Unix, sino que incluye un sistema operativo empotrado denominado Finesse que desde espacio de usuario se asemeja ms a un router que a un sistema Unix clsico. Por tanto, dado que la gestin de este cortafuegos no es tan inmediata para un administrador de sistemas como la de uno que se ejecute sobre Unix, vamos a dedicarle ms tiempo al PIX Firewall de lo que hemos dedicado al resto de cortafuegos. El cortafuegos PIX utiliza un algoritmo de proteccin denominado Adaptive Security Algorithm (ASA): a cualquier paquete inbound (generalmente, los provenientes de redes externas que tienen como origen una red protegida) se le aplica este algoritmo antes de dejarles atravesar el firewall, aparte de realizar comprobaciones contra la informacin de estado de la conexin (PIX es stateful) en memoria; para ello, a cada interfaz del firewall se le asigna un nivel de seguridad comprendido entre 0 (el interfaz menos seguro, externo) y 100 (el ms seguro, interno). La filosofa de funcionamiento del Adaptive Security Algorithm se basa en estas reglas: Ningn paquete puede atravesar el cortafuegos sin tener conexin y estado. Cualquier conexin cuyo origen tiene un nivel de seguridad mayor que el destino (outbound) es permitida si no se prohbe explcitamente mediante listas de acceso. Cualquier conexin que tiene como origen una interfaz o red de menor seguridad que su destino (inbound) es denegada, si no se permite explcitamente mediante listas de acceso. Los paquetes ICMP son detenidos a no ser que se habilite su trfico explcitamente. Cualquier intento de violacin de las reglas anteriores es detenido, y un mensaje de alerta es enviado a syslog. Cuando a un interfaz del cortafuegos llega un paquete proveniente de una red con menor nivel de seguridad que su destino, el firewall le aplica el adaptive security algorithm para verificar que se trata de una trama vlida, y en caso de que lo sea comprobar si del host origen se ha establecido una conexin con anterioridad; si no haba una conexin previa, el firewall PIX crea una nueva entrada en su tabla de estados en la que se incluyen los datos necesarios para identificar a la conexin. El cortafuegos PIX puede resultar muy complejo de gestionar, especialmente a los que provenimos del mundo Unix, ya que como hemos dicho se asemeja ms a un router que a un servidor con cualquier flavour de Unix; es por tanto recomendable consultar bibliografa adicional antes de trabajar con estos equipos. La primera sesin con PIX Firewall Si conectamos al firewall por consola a travs de una lnea serie entramos directamente sin necesidad de contrasea, en modo no privilegiado; esto lo sabemos porque nos aparece el prompt siguiente: pixie>

Si en este prompt tecleamos la orden `?', nos mostrar la ayuda disponible en el modo sin privilegios:dixie> ? enable pager quit dixie> Enter privileged mode or change privileged mode password Control page length for pagination Disable, end configuration or logout

Son pocos comandos con los que apenas se puede hacer nada; la orden pager nos permite ajustar el nmero de lneas para paginar, la orden quit (o exit) sale del firewall, y la orden enable nos pasa a modo superusuario, pidiendo la contrasea (que por defecto ser `cisco'); cada orden del PIX se puede abreviar (por ejemplo, en lugar de enable podramos teclear ena):dixie> ena Password: ***** dixie#

Como vemos, al estar en modo privilegiado, el prompt cambia y nos muestra una almohadilla; en este modo ya podemos reconfigurar parmetros del PIX, y tenemos ms rdenes disponibles que antes:dixie# ? arp auth-prompt configure copy debug disable enable flashfs kill pager passwd ping quit reload session terminal who write dixie# Change or view the arp table, and set the arp timeout value Customize authentication challenge, reject or acceptance prompt Configure from terminal, floppy, or memory, clear configure Copy image from TFTP server into flash. Debug packets or ICMP tracings through the PIX Firewall. Exit from privileged mode Modify enable password Show or destroy filesystem information Terminate a telnet session Control page length for pagination Change Telnet console access password Test connectivity from specified interface to Disable, end configuration or logout Halt and reload system Access an internal AccessPro router console Set terminal line parameters Show active administration sessions on PIX Write config to net, flash, floppy, or terminal, or erase flash

Para comenzar a reconfigurar el firewall nos pondremos en modo configuracin (desde modo privilegiado) con la orden configure (la `t' corresponde a Terminal); de nuevo, cambia el prompt que nos aparece en consola:dixie# con t dixie(config)#

En este modo disponemos de ms comandos para configurar el PIX; como siempre, podemos verlos con la orden `?':dixie(config)# ?

aaa access-group access-list age alias apply arp auth-prompt aaa-server ca clock conduit crypto configure copy debug disable domain-name dynamic-map enable established failover filter fixup flashfs ipsec isakmp global hostname vpdn interface ip kill link linkpath logging map mtu name nameif names nat outbound pager passwd ping quit radius-server reload rip route session snmp-server sysopt static tacacs-server telnet terminal

Enable, disable, or view TACACS+ or RADIUS user authentication, authorization and accounting Bind an access-list to an interface to filter inbound traffic Add an access list This command is deprecated. See ipsec, isakmp, map, ca commands Administer overlapping addresses with dual NAT. Apply outbound lists to source or destination IP addresses Change or view the arp table, and set the arp timeout value Customize authentication challenge, reject or acceptance prompt Define AAA Server group CEP (Certificate Enrollment Protocol)Create and enroll RSA key pairs into a PKI (Public Key Infrastructure). Show and set the date and time of PIX Add conduit access to higher security level network or ICMP Configure IPsec, IKE, and CA Configure from terminal, floppy, or memory, clear configure Copy image from TFTP server into flash. Debug packets or ICMP tracings through the PIX Firewall. Exit from privileged mode Change domain name Specify a dynamic crypto map template Modify enable password Allow inbound connections based on established connections Enable/disable PIX failover feature to a standby PIX Enable, disable, or view URL, Java, and ActiveX filtering Add or delete PIX service and feature defaults Show or destroy filesystem information Configure IPSEC policy Configure ISAKMP policy Specify, delete or view global address pools, or designate a PAT (Port Address Translated) address Change host name Configure VPDN (PPTP) Policy Identify network interface type, speed duplex, and if shutdown Set ip address for specified interface, define a local address pool, or toggle Unicast Reverse Path Forwarding on an interface. Terminate a telnet session This command is deprecated. See ipsec, isakmp, map, ca commands This command is deprecated. See ipsec, isakmp, map, ca commands Enable logging facility Configure IPsec crypto map Specify MTU(Maximum Transmission Unit) for an interface Associate a name with an IP address Assign a name to an interface Enable, disable or display IP address to name conversion Associate a network with a pool of global IP addresses Create an outbound access list Control page length for pagination Change Telnet console access password Test connectivity from specified interface to Disable, end configuration or logout Specify a RADIUS aaa server Halt and reload system Broadcast default route or passive RIP Enter a static route for an interface Access an internal AccessPro router console Provide SNMP and event information Set system functional option Map a higher security level host address to global address Specify a TACACS+ server Add telnet access to PIX console and set idle timeout Set terminal line parameters

tftp-server timeout url-cache url-server virtual who write dixie(config)#

Specify default TFTP server address and directory Set the maximum idle times Enable URL caching Specify a URL filter server Set address for authentication virtual servers Show active administration sessions on PIX Write config to net, flash, floppy, or terminal, or erase flash

Interfaces de red Cisco denomina a cada uno de sus interfaces hardware de la forma ethernetN o tokenringN. Desde el modo configuracin podemos asignarles nombres simblicos y niveles de seguridad, teniendo en cuenta que el nombre outside se asigna por defecto a la tarjeta ethernet0 y el nombre inside a la ethernet1. Adems, el nivel de seguridad de la interfaz outside ha de ser el ms bajo, 0, y el reservado para inside el ms elevado, 100; el resto de tarjetas pueden tener cualquier nmero comprendido entre los dos anteriores. Si queremos asignarle un nombre simblico y un nivel de seguridad a un interfaz hemos de utilizar la orden nameif; por ejemplo, para denominar dmz a la tarjeta ethernet2, y darle un nivel 50, ejecutaramos lo siguiente :dixie(config)# nameif e2 dmz security50 dixie(config)#

Es muy importante que exista una interface llamada outside con un nivel 0 y una inside con un nivel 100; si alguna de las dos no existe, o si est duplicada, el cortafuegos parar todo el trfico que pase por l. Podemos ver si la configuracin actual de las interfaces es correcta mediante la orden show nameif:dixie(config)# show nameif nameif ethernet0 outside security0 nameif ethernet1 inside security100 nameif ethernet2 dmz security50 nameif ethernet3 intf3 security15 dixie(config)#

Accesos entre interfaces Para conseguir excepciones a las reglas de funcionamiento del adaptive security algorithm se utilizan los comandos nat y static; la orden nat permite que una interfaz de mayor seguridad pueda acceder a uno de menor, mientras que static hace justo lo contrario. Para cada interfaz de mayor nivel de seguridad que quiera acceder a una de menor nivel hemos de ejecutar la orden nat:dixie(config)# nat (dmz) 0 0.0.0.0 0.0.0.0 dixie(config)# sh nat nat (dmz) 0 0.0.0.0 0.0.0.0 0 0 pixie(config)#

La orden anterior indica que el interfaz dmz acceder sin realizar NAT (el primer `0'), aplicando esto a todas las mquinas de la subred conectada a ese interfaz: los dos grupos `0.0.0.0' representan la direccin y la subred, respectivamente, de los equipos a

los que permitimos la salida; si slo quisiramos que una de las mquinas conectada al interfaz dmz accediera a segmentos de menor prioridad, pondramos su direccin IP y su mscara (255.255.255.255). Si lo que queremos es permitir el acceso desde un interfaz de menor nivel de seguridad a uno de mayor ejecutaremos la orden static, que tiene la sintaxis siguiente: static (if_interna,if_externa) dir_destino dir_destino netmask mascara El hecho de que aparezca por duplicado la direccin destino de la mquina que estamos `publicando' al exterior es porque, al ejecutar la orden nat, hemos decidido no hacer NAT real; si lo estuviramos haciendo, en lugar de la direccin destino utilizaramos en primer lugar la direccin que le damos a la mquina hacia el exterior (tpicamente, una IP pblica) y en segundo la direccin que tiene el equipo dentro de la red a la que est directamente conectado (una privada). De esta forma, si lo que queremos es que desde toda Internet (interfaz outside) se pueda acceder a nuestro servidor de correo POP3, en la mquina 158.42.22.41 (por ejemplo, dentro del interfaz dmz), ejecutaramos en primer lugar la siguiente orden:dixie(config)# static (dmz,outside) 158.42.22.41 158.42.22.41 netmask 255.255.255.255 dixie(config)# sh static static (dmz,outside) 158.42.22.41 158.42.22.41 netmask 255.255.255.255 0 0 dixie(config)#

Con el comando anterior nos limitamos a `publicar' la direccin de una mquina protegida por el PIX firewall al resto de Internet; pero esto no significa que ya se pueda acceder a ese sistema: tras la orden static, es necesario habilitar listas de control de acceso a los diferentes servicios de la direccin que hemos publicado, y asociar dichas listas de control a la interfaz correspondiente; si por ejemplo el acceso necesitado es SMTP, ejecutaramos la siguiente orden:dixie(config)# access-list prueba permit tcp any host 158.42.22.41 eq smtp dixie(config)# access-group prueba in interface outside dixie(config)#

Como vemos, asociamos la lista de control a la interfaz de entrada del trfico, no a la que est conectada la mquina. El tema de las listas de control de acceso es el que vamos a ver en el punto siguiente. Listas de control de acceso Como acabamos de decir, para acceder a determinados servicios de una mquina, una vez hemos dejado establecer las conexiones entre interfaces, es necesario definir permisos sobre el modo de acceso, el origen y los servicios a los que se permite acceder de esa mquina; esto lo conseguiremos mediante la orden access-list, cuya sintaxis es la siguiente: access-list ID accion proto dir-origen pto-origen dir-destino pto-destino Si por ejemplo queremos habilitar un acceso HTTP desde cualquier lugar de Internet, y adems acceso POP3 desde un determinado segmento externo (por ejemplo, 196.33.22.128/25) a la mquina 158.42.22.41, lo haremos mediante una lista de control de dos entradas (que llamaremos prova), que podemos crear con las siguientes rdenes:

pixie(config)# access-list prova permit tcp any host 158.42.22.41 eq http pixie(config)# access-list prova permit tcp 196.33.22.128 255.255.255.128 host 158.42.22.41 eq http pixie(config)#

Dentro de una lista de control es importante asegurarse que la regla ms general es siempre la ltima; PIX funciona en este sentido como Firewall-1: en el momento en que una determinada regla hace match, se aplica y no se sigue analizando el resto. Por ejemplo, si queremos que ningn equipo del exterior haga ping a la mquina 158.42.22.41, excepto los que provienen de la red 196.72.31.0/24, definiremos la siguiente lista de control de acceso:pixie(config)# access-list prova permit icmp 196.72.31.0 255.255.255.0 host 158.42.22.41 pixie(config)# access-list prova deny icmp any any pixie(config)#

Con las rdenes anteriores no hacemos ms que definir (o modificar, si ya exista) la ACL `prova'; esto no tiene ningn efecto sobre el funcionamiento del cortafuegos, ya que para que lo tenga tenemos que asociar esta lista a una interfaz de red: en concreto, a aquella de la que va a provenir el trfico de entrada en cada caso. Para ello, utilizaremos la orden access-group:pixie(config)# access-group prova in interface outside pixie(config)#

Con este comando asociamos la lista de control a la interfaz especificada; si esta interfaz ya tena asociada una lista de control, la nueva reemplaza a la antigua pero las conexiones no se pierden, ni siquiera las que estaban permitidas anteriormente pero ahora se niegan. Esto es til para poder aadir entradas intermedias a las listas de control sin que las conexiones establecidas por el interfaz al que queremos asociarlas se pierdan: para ello, lo ms rpido es copiar la lista en un editor de textos, realizar sobre el mismo las modificaciones necesarias, y grabarla de nuevo en el cortafuegos con otro nombre; tras esto, la asociamos al interfaz correspondiente mediante access-group, y cuando estemos seguros de que todo funciona correctamente la grabamos en memoria mediante write mem. Si lo que queremos es aadir una entrada al final de la lista de control no es necesario todo esto: basta con ejecutar el access-list correspondiente para que la nueva entrada se aada a la lista, y automticamente se aplique sobre el interfaz; si no queremos aadir, sino eliminar entradas de una ACL, podemos ejecutar directamente no access-list, orden que recibe como parmetro la entrada a eliminar:pixie(config)# sh access-list prova access-list prova permit tcp any host 158.42.22.41 eq smtp (hitcnt=0) access-list prova permit tcp any host 158.42.22.41 eq pop3 (hitcnt=0) access-list prova permit tcp any host 158.42.22.41 eq telnet (hitcnt=0) pixie(config)# no access-list prova permit tcp any host 158.42.22.41 eq pop3 pixie(config)# sh access-list prova access-list prova permit tcp any host 158.42.22.41 eq smtp (hitcnt=0) access-list prova permit tcp any host 158.42.22.41 eq telnet (hitcnt=0) pixie(config)#

Como siempre, una vez que estemos seguros de que la configuracin es correcta, ser necesario grabar los cambios en memoria flash mediante write mem. Rutado En el cortafuegos PIX es necesario especificar mediante rutas estticas cmo vamos a encaminar los paquetes que nos llegan, aadiendo una ruta para cada red conectada a un interfaz; slo podremos asignar una ruta por defecto, asociada siempre al interfaz outside. Para ver las rutas del firewall utilizaremos la orden sh route:pixie(config)# sh route outside 0.0.0.0 0.0.0.0 172.17.1.3 1 OTHER static inside 172.17.2.0 255.255.255.0 172.17.2.1 1 CONNECT static dmz 192.168.63.0 255.255.255.0 192.168.63.156 1 CONNECT static failover 192.168.87.208 255.255.255.252 192.168.87.209 1 CONNECT static dmz 158.42.0.0 255.255.0.0 192.168.63.156 1 OTHER static pixie(config)#

Como vemos, la ruta por defecto est asociada a la interfaz outside; adems, la interfaz dmz tiene dos rutas, una para una clase pblica y otra para una privada, y tambin existe una boca del firewall dedicada en exclusiva al failover, del que hablaremos ms adelante. Si lo que queremos es modificar cualquiera de estas rutas, aadir rutas nuevas, o eliminar alguna de ellas, ejecutaremos la orden route, cuya sintaxis es la siguiente: route interfaz direccion-remota mascara gateway metrica Por ejemplo, si deseamos enrutar el trfico dirigido a la red 192.168.63.128/25 a travs del interfaz dmz, que tiene como direccin IP 192.168.63.156, y que est directamente conectado a la red (un salto), ejecutaramos esta orden:pixie(config)# route dmz 192.168.63.128 255.255.255.128 192.168.63.156 1 pixie(config)#

Para eliminar una ruta, ejecutaremos el comando no route, que recibe como parmetro la ruta que deseamos eliminar (algo similar a lo que suceda con las listas de control de acceso). Arranque y parada del cortafuegos La orden reload (modo privilegiado) reinicia el firewall y carga su configuracin, bien desde diskette bien desde la memoria flash (en caso de que no haya ningn disco en la unidad). Al ejecutar reload se nos pedir confirmacin para reiniciar el cortafuegos, y es muy importante que en caso de no querer ejecutar el comando tecleemos `n'; cualquier otra respuesta ejecuta la orden. Configuraciones del sistema Nombre de la mquina Mediante la orden hostname cambiamos el nombre de host del cortafuegos:dixie(config)# hostname pixie pixie(config)# hostname dixie dixie(config)#

Contraseas En modo configuracin podemos cambiar la contrasea de acceso al modo privilegiado mediante la orden enable password; mediante show enable vemos la cadena cifrada con nuestra contrasea:dixie(config)# show enable enable password /hVDnFhQPQc4lzN5 encrypted dixie(config)# enable password passprova dixie(config)# show enable enable password S6KVLr8BjSKx8os/ encrypted dixie(config)#

Esta clave es diferente de la que se utiliza para acceder al cortafuegos va telnet; para modificar esta ltima (por defecto ser `cisco') utilizaremos la orden passwd, y para visualizar la cadena cifrada resultante show passwd:dixie(config)# show passwd passwd 2KFQnbNIdI.2KYOU encrypted dixie(config)# passwd prova dixie(config)# show passwd passwd /hVDnFhQPQc4lzN5 encrypted dixie(config)#

Si quisiramos restaurar esta contrasea a su valor original (`cisco'), no tenemos ms que ejecutar la orden clear passwd:dixie(config)# show passwd passwd /hVDnFhQPQc4lzN5 encrypted dixie(config)# clear passwd dixie(config)# show passwd passwd 2KFQnbNIdI.2KYOU encrypted dixie(config)#

La cadena `encrypted' que aparece tras la contrasea indica que se trata de una clave cifrada; tambin nos puede resultar til para asignar un password directamente en cifrado, en lugar de hacerlo en texto claro:dixie(config)# show passwd passwd 2KFQnbNIdI.2KYOU encrypted dixie(config)# passwd /hVDnFhQPQc4lzN5 encrypted dixie(config)# show passwd passwd /hVDnFhQPQc4lzN5 encrypted dixie(config)# show enable password enable password 2KFQnbNIdI.2KYOU encrypted dixie(config)# enable password /hVDnFhQPQc4lzN5 encrypted dixie(config)# show enable password enable password /hVDnFhQPQc4lzN5 encrypted dixie(config)#

En caso de prdida de la clave de acceso va telnet, no tenemos ms que conectar al cortafuegos mediante una conexin serie y, desde el modo privilegiado asignar una nueva contrasea; si lo que hemos perdido es la clave para situar al cortafuegos en modo privilegiado, el proceso es algo ms complicado: en este caso debemos

descargar la utilidad PIX Password Lockout Utility apropiada para nuestra versin de firewall (que podemos ver con sh version), desde la direccin http://www.cisco.com/warp/public/110/34.shtml Se trata de un fichero `.bin' que podemos transferir a un disquette mediante la orden dd:anita:~$ dd if=np51.bin of=/dev/fd0 144+0 records in 144+0 records out anita:~$

Tenemos que arrancar con el disco al que hemos transferido este sistema, que nos automticamente nos preguntar si queremos borrar las claves; le diremos que s y reiniciaremos el cortafuegos, que tendr como contrasea de acceso remoto `cisco' y no tendr password para pasar al modo privilegiado. Cambios permanentes Cada vez que nuestro PIX se apague perder su configuracin y cargar o bien una introducida en un diskette (esto es slo teora, nunca nos ha funcionado correctamente) o bien la que est grabada en su memoria flash; si deseamos que nuestros cambios sean permanentes hemos de grabarlos o en disco o en memoria flash , mediante la orden write (write floppy o write mem, en cada caso):dixie# write mem Building configuration... Cryptochecksum: 206a9447 17e7ec36 d53c98d2 22a06c5e [OK] dixie# wr floppy Building configuration... [OK] dixie#

Si lo que queremos es visualizar la configuracin que vamos a grabar (la actual), podemos ejecutar la orden write terminal, que la volcar en pantalla; esto representa la configuracin que se est ejecutando en estos momentos, cuyo resultado puede ser diferente del proporcionado por sh conf (este ltimo muestra la configuracin que hemos cargado al arrancar). Configuracin de terminal Para reconfigurar el nmero de lneas de nuestra terminal de conexin, tanto en modo privilegiado como en modo usuario, podemos usar la orden pager, que recibe como parmetro el nmero de lneas deseado:dixie> show pager pager lines 24 dixie> pager 30 dixie> show page pager lines 30 dixie>

Para configurar el nmero de columnas de nuestra consola podemos utilizar el comando terminal; si esta orden recibe como parmetro la palabra monitor, habilita la impresin de mensajes de syslog en nuestra pantalla, mientras que si recibe como parmetro la

palabra width modifica el nmero de columnas. De nuevo, para ver la configuracin actual utilizaremos la orden show:dixie# show terminal Width = 80, monitor dixie# terminal width 90 dixie# show terminal Width = 90, monitor dixie#

Informacin del sistema Las rdenes que nos permiten obtener informacin del estado actual del PIX comienzan por la palabra `show'; algunas de ellas son las siguientes: show processes Muestra los procesos que se estn ejecutando en el cortafuegos. show version Muestra informacin genrica sobre el firewall, como la versin del software instalado en el PIX, el uptime del sistema, ciertos parmetros hardware, licencias, etc. Este es un ejemplo de dicha informacin:dixie(config)# show version Cisco Secure PIX Firewall Version 5.1(2) Compiled on Tue 16-May-00 16:09 by bhochuli Finesse Bios V3.3 dixie up 140 days 0 hours Hardware: SE440BX2, 128 MB RAM, CPU Pentium II 349 MHz Flash AT29C040A @ 0x300, 2MB BIOS Flash AM28F256 @ 0xfffd8000, 32KB 0: 1: 2: 3: ethernet0: ethernet1: ethernet2: ethernet3: address address address address is is is is 0090.279b.c9d2, irq 11 0090.279b.c848, irq 10 0090.279b.c759, irq 15 0090.279b.c84c, irq 9 65536

Licensed connections:

Serial Number: 18018531 (0x112f0e3) Activation Key: 0xfe1f8896 0xe1fcb1e2 0x3400545b 0x8f392616 dixie(config)#

show interface Muestra informacin detallada sobre cada uno de los interfaces de red del firewall, de forma muy parecida al ifconfig de Unix. show conn Muestra las conexiones activas a travs del cortafuegos.

show history Muestra las ltimas rdenes ejecutadas en lnea de comandos, de una forma similar al histrico que casi todos los shells de Unix incorporan; la interfaz del PIX es muy similar a la de bash: Control-W borra una palabra, Control-E va al final de lnea, Control-B al principio, Control-R realiza bsquedas, los cursores recorren el histrico de rdenes, etc. show flashfs Muestra informacin sobre el sistema de ficheros empotrado en la memoria flash de la mquina. show clock Muestra la fecha y hora del sistema; podemos modificar esta informacin mediante la orden clock:pixie(config)# sh clock 01:38:34 Jun 11 2001 pixie(config)# clock set 03:30:00 Jun 11 2001 pixie(config)# sh clock 03:30:02 Jun 11 2001 pixie(config)#

show configure Muestra la configuracin cargada al arrancar el cortafuegos (no tiene por qu ser la que se est ejecutando en estos momentos; esta se puede ver con wr t). Es el contenido de la memoria no voltil. show failover Muestra el estado del subsistema de tolerancia a fallos. show who Muestra las conexiones establecidas va telnet con el cortafuegos.

El sistema de log remoto El PIX Firewall registra los eventos que se producen en la mquina en un sistema de log que podemos visualizar en el propio cortafuegos mediante la orden sh log. Tambin podemos enviar los registros a un sistema Unix que escuche peticiones de syslog remoto, indicando la interfaz por la que se van a enviar los registros y la direccin del sistema remoto mediante logging host: pixie(config)# logging host inside 192.168.63.22 pixie(config)# En el sistema donde deseemos enviar los registros, el demonio syslogd ha de estar escuchando peticiones remotas (opcin `-r' del programa), y en los cortafuegos intermedios ha de estar habilitado el trfico desde el PIX al puerto 514 (UDP) de la mquina Unix. Por defecto, PIX registra eventos ms relacionados con el estado del failover que con la seguridad de los sistemas y los posibles ataques que pueden sufrir. Esto genera una gran cantidad de mensajes que pueden hacer crecer al fichero de log de una forma considerable con entradas de este tipo:

Jun 6 09:46:37 192.168.63.156 %PIX-1-103003: network interface 0 failed. Jun 6 09:46:49 192.168.63.156 %PIX-1-103005: reporting failure. Jun 6 09:46:49 192.168.63.156 %PIX-1-105004: interface 1 normal Jun 6 09:51:04 192.168.63.156 %PIX-1-105009: 0 Passed

(Primary) Other firewall (Primary) Other firewall (Primary) Monitoring on (Primary) Testing on interface

Para evitar registrar estos mensajes, en el cortafuegos podemos ejecutar la orden no logging message, que recibe como parmetro el nmero de mensaje que no queremos guardar; por ejemplo, si queremos evitar el registro de la alerta PIX-1-103003, ejecutaremos:pixie(config)# no logging message 103003 pixie(config)# Si queremos lo contrario, volver a registrar el mensaje en el sistema remoto, ejecutaremos la misma orden pero sin el `no' delante, o bien clear logging disabled, que habilita el registro de todos los mensajes. pixie(config)# logging message 103003 pixie(config)#

Podemos ver los mensajes que no estamos registrando mediante el comando sh logging disabled:pixie(config)# sh logging disabled no logging message 105008 no logging message 105009 no logging message 103003 no logging message 103004 no logging message 103005 pixie(config)#

A nosotros nos va a interesar ms registrar eventos registrados con entradas y salidas al cortafuegos, y tambin con trfico negado en el mismo. Para ello, podemos ver la facility y la severity de los mensajes de log en el sistema Unix; la facility es siempre PIX, mientras que la severity es el nmero siguiente en el cdigo de mensaje registrado (de 1 a 7); por ejemplo, un mensaje con un cdigo como PIX-6-307002 corresponde a una facility PIX y a una severity 6. Podemos configurar nuestro syslog.conf para registrar los eventos provenientes del PIX (para Unix, con severity local4) en diferentes ficheros; lo ms cmodo ser registrar todos los eventos (ejecutando logging trap debugging) con una facility 20 (logging facility 20), y luego denegar mensajes determinados - relativos al failover mediante no logging message. Failover El sistema de alta disponibilidad implantado por PIX permite utilizar una unidad secundaria que tomar el control de las conexiones en caso de que la primaria falle; ambas unidades estarn conectadas por un cable serie (un RS-232 modificado) que transmite a 9600 baudios, y contnuamente se intercambian mensajes `hello' para que ambas puedan conocer el estado de la otra unidad. Si dos de estos mensajes consecutivos - se envan a intervalos de 15 segundos - no son recibidos en un

determinado tiempo, entra en juego el failover para comprobar cual de las dos unidades ha fallado y transferir el control a la otra. Entonces cada unidad cambia de estado: la nueva unidad activa asume las direcciones IP y MAC de la anterior y comienza a aceptar trfico, y la que antes era la activa ahora asume los parmetros de la que no lo era; el resto de elementos de la red no ve ningn cambio en los dispositivos, por lo que no existen cambios o timeouts en las tablas ARP. Si queremos saber el estado del failover (por ejemplo para ver cul es la unidad activa en un determinado momento) hemos de ejecutar la orden sh failover:pixie(config)# sh failover Failover On Cable status: Normal Reconnect timeout 0:00:00 This host: Primary - Active Active time: 386520 (sec) Interface failover (192.168.87.209): Normal Interface dmz1 (192.168.63.156): Normal Interface outside (172.17.1.1): Normal Interface inside (172.17.2.1): Normal Other host: Secondary - Standby Active time: 405 (sec) Interface failover (192.168.87.210): Normal Interface dmz1 (192.168.63.157): Normal Interface outside (172.17.1.2): Normal Interface inside (172.17.2.2): Normal Stateful Failover Logical Update Statistics Link : failover Stateful Obj xmit xerr rcv General 53081 0 50149 sys cmd 52067 0 50146

up time

0

0

0

rerr 0 0

0

xlate tcp conn udp conn ARP tbl RIP Tbl

9

0

0 0 0 0 3

0 0 0 0 0

1005 0 0 0 0 0 0 0

Logical Update Queue Information Cur Max Total Recv Q: 0 1 50149 Xmit Q: 0 3 53081 pixie(config)#

En el resultado de la orden anterior vemos que la unidad principal est funcionando normalmente, mientras que la secundaria est en standby; esto ser lo habitual si no entra en juego el failover o incluso si entra y la unidad principal se recupera, ya que en ese caso se hace un rebalanceo. Si en lugar de que todas las interfaces estn en estado normal aparecieran errores temporales de escasa duracin, no hay ningn problema, ya que esto suele significar que el cortafuegos est testeando la alta disponibilidad y la conectividad de las interfaces. El failover es casi transparente a la administracin de la mquina, en el sentido de que la configuracin slo se realiza en la unidad activa en cada momento, y automticamente se transfiere a la que est en standby; adems, como hemos dicho, cuando entra la alta

disponibilidad las unidades intercambian sus direcciones IP, por lo que el acceso va telnet a la mquina se realiza contra la misma direccin que durante el funcionamiento normal de los equipos. Incluso si trabajamos con stateful failover, las unidades mantienen la informacin de estado de cada conexin, por lo que en caso de switchover ninguna de ellas se pierde; en caso contrario, las conexiones activas son eliminadas y el cliente debe reestablecerlas. Con la orden failover podemos habilitar el failover, y con no failover deshabilitarlo:pixie(config)# no failover pixie(config)# sh failover Failover Off Cable status: Normal Reconnect timeout 0:00:00 pixie(config)#

Las rdenes anteriores tambin admiten argumentos; si indicamos `link' podemos definir la interfaz de stateful failover, por la que ambas unidades intercambiarn informacin. Con `ip address' podemos configurar una direccin de failover para cada interfaz de la unidad secundaria, y con el parmetro `active' forzamos a una unidad determinada ponerse como activa (o en standby, si ejecutamos no failover active). Como siempre, podemos teclear el signo `?' para obtener ayuda desde lnea de comandos:pixie(config)# failover ? usage: [no] failover [active] failover ip address failover timeout failover reset failover link pixie(config)# failover