Professional Documents
Culture Documents
Tabla de Contenidos
Tabla de Contenidos
TABLA DE CONTENIDOS ........................................................................................... I CAPTULO 1. INTRODUCCIN ................................................................................ 1 1.1. POR QU LINUX? ................................................................................................... 1 CAPTULO 2. INSTALACIN .................................................................................... 2 2.1. REQUISITOS PARA LA INSTALACIN ........................................................................ 2 2.1.1. Hardware ........................................................................................................ 2 2.2. INSTALANDO CRUCHO ............................................................................................ 2 2.2.1. Preparando el CD .......................................................................................... 2 2.2.2. Verificando el CD ........................................................................................... 2 2.2.3. Iniciando desde el CD .................................................................................... 3 2.3.4. Comenzando la instalacin ............................................................................ 3 CAPTULO 3. CONFIGURACIN ............................................................................. 5 3.1. CONFIGURACIN DE CRUCHO ................................................................................. 5 3.1.1. Opciones del fichero de configuracin ........................................................... 5 3.1.2. Cargando configuracin de cRucho ............................................................... 7 3.2. LANS VIRTUALES (VLAN) .................................................................................... 7 3.2.1. Configurando las VLANs ................................................................................ 7 3.2.2 Cargando la configuracin de las VLANs....................................................... 7 3.3. CONFIGURACIN DE LAS INTERFACES..................................................................... 8 3.3.1. Configurando una nueva interfaz ................................................................... 8 3.3.2. Cargando configuracin de las interfaces ..................................................... 9 3.4. DIRECCIONES IP ALIAS. .......................................................................................... 9 3.4.1. Agregando una direccin IP alias a una interfaz......................................... 10 3.4.2. Cargando configuracin de las direcciones IP alias ................................... 10 3.5. TABLA DE RUTAS .................................................................................................. 10 3.5.1. Agregando una nueva ruta ........................................................................... 11 3.5.2. Agregando la ruta por omission ................................................................... 11 3.5.3. Cargando configuracin de la tabla de rutas .............................................. 12 3.6. FIREWALL ............................................................................................................. 12 3.6.1. Agregando una nueva regla al firewall ........................................................ 12 3.6.2. Cargando configuracin del firewall ........................................................... 14 3.7. TRADUCCIN DE DIRECCIONES DE RED (NAT)...................................................... 14 3.7.1. NAT a la entrada de una interfaz ................................................................. 14 3.7.2. NAT a la salida de una interfaz .................................................................... 14 3.7.4. Creacin de una nueva regla NAT ............................................................... 15 3.7.5. Cargando configuracin de las reglas NAT ................................................. 17 3.8. CALIDAD DE SERVICIO (QOS) ............................................................................... 17 3.8.1. Secciones del fichero de configuracin ........................................................ 18 3.8.2. Aplicando QoS .............................................................................................. 19
i
Tabla de Contenidos
3.8.2.1. Declaracin de las interfaces WAN y LAN .......................................... 19 3.8.2.2. Creacin del sistema de colas ................................................................ 20 3.8.2.3. Creacin de los filtros de trfico............................................................ 22 3.8.3. Cargando configuracin de QoS .................................................................. 23 3.8.4. Monitoreando el sistema de colas ................................................................ 24 3.9. CONFIGURACIN DEL MONITOR DE RED NTOP ..................................................... 26
ii
Introduccin
Captulo 1. Introduccin
cRucho es un software de cdigo abierto que apoyndose en las herramientas disponibles en el ncleo de Linux permite configurar este para funcionar como enrutador y firewall. Este fue desarrollado como solucin a las deficiencias encontradas en otros softwares routers y es adaptable a las necesidades bsicas de enrutamiento y control de trfico de pequeas y medianas redes.
Instalacin
Captulo 2. Instalacin
2.1. Requisitos para la instalacin
Para la instalacin del software router cRucho se deben cumplir con un conjunto de requisitos. Los requisitos de hardware son los mnimos permitidos para la instalacin del software router.
2.1.1. Hardware
Los parmetros tcnicos del hardware dependern de la carga de procesamiento que tendr el router dependiendo siempre del trfico en la red dnde desempear sus funciones. Se recomiendan como requisitos mnimos los siguientes: Microprocesador Pentium III 600MHz o superior Capacidad de Memoria RAM 128MB o superior Disco Duro de 2 GB o superior 1 o ms Tarjetas de Red de 10 Mbit o superior
2.2.1. Preparando el CD
Para el quemado del CD en el Sistema Operativo Windows se recomienda el uso del Nero debido a las facilidades que este posee para el trabajo con imgenes ISO. Se debe comenzar haciendo clic derecho sobre la imagen ISO, luego elegir la opcin Abrir Con y seleccionar el Nero en la lista de programas disponibles. Para el quemado del CD en el Sistema Operativo Linux se recomienda el uso del Brasero o del K3b y el proceso es el mismo explicado anteriormente con el Nero.
2.2.2. Verificando el CD
Una vez que el CD fue quemado es preciso realizar una verificacin comprobando los datos contenidos dentro del mismo. Deben existir 7 carpetas visibles entre las cuales estn install, isolinux, preesed entre otras, una carpeta no visible desde Linux de nombre
Instalacin
.dist y algunos ficheros como cdromupgrade, md5sum.txt y README.diskdefines. Si dentro del CD existe un fichero imagen ISO, entonces el CD no fue quemado adecuadamente y se debe repetir la preparacin del mismo.
Instalacin
El men para la instalacin de cRucho brinda las siguientes opciones: Instalar cRucho: Al escoger esta opcin se instala cRucho en el primer disco duro del equipo, eliminando todos los datos antes contenidos en este disco. Arrancar desde el primer disco duro: Esta opcin brinda la posibilidad de arrancar desde el primer disco duro del equipo sin instalar cRucho. Comprobar defectos en el CD: Al escoger esta opcin se realiza un chequeo del CD de instalacin de cRucho. Una vez escogida la primera opcin no se debe realizar ninguna otra accin en el equipo donde se instalando cRucho. Al terminar la instalacin el equipo se reiniciar y quedar cRucho instalado en el primer disco duro listo para una posterior configuracin. El usuario inicial para la configuracin del software router es crucho y el password crucho. En caso de no escogerse ninguna de las opciones mostradas en el men de la figura 1 antes de los 10 segundos, cRucho comenzar a instalarse automticamente. La figura 2 muestra una de las pantallas que debe aparecer en el proceso de instalacin del software router.
Nota: Es recomendable crear un nuevo usuario con privilegios de administracin o cambiar el password del usuario crucho con el objetivo de asegurar correctamente el acceso al software router.
Configuracin
Captulo 3. Configuracin
3.1. Configuracin de cRucho
El fichero de configuracin del software router cRucho se encuentra en el camino /etc/crucho/crucho.conf. En este fichero se definen parmetros que establecen la configuracin general del router. Para configurar un parmetro se sigue la siguiente estructura: <Opcin>: <Valor>
Configuracin
Community: Esta opcin define la palabra clave usada por el cliente SNMP que desee encuestar al servidor SNMP que est corriendo en cRucho. Contact: Esta opcin define el correo de contacto del administrador del servicio SNMP corriendo en el software router. Authorized_HTTP_Service: Esta opcin define las direcciones IP y subredes que tendrn acceso a las pginas web de las grficas de consumo de ancho de banda del sistema de colas de cRucho. Se pueden definir varias subredes y direcciones IP separadas por espacios. Si esta opcin no es especificada ningn cliente podr visualizar a travs de la web las grficas de consumo de ancho de banda de las colas, por lo que el servidor web es detenido, optimizando de esta manera el uso los recursos del software router. Authorized_ICMP: Esta opcin define las direcciones IP y subredes que pueden tener comunicacin a travs del protocolo ICMP con el software router cRucho. Se pueden definir varias subredes y direcciones IP separadas por espacios. iface_file: Define el camino del fichero de configuracin de las interfaces de cRucho. vlan_file: Define el camino del fichero de configuracin para la creacin de VLANs alias_file: Define el camino del fichero de configuracin para la creacin de direcciones IP alias. routes_file: Define el camino del fichero de configuracin para el llenado de la tabla de rutas. firewall_file: Define el camino del fichero de configuracin para el establecimiento de las reglas del firewall de cRucho. outbound_file: Define el camino del fichero de configuracin para la creacin de reglas NAT (Network Address Translations) de salida. portfwd_file: Define el camino del fichero de configuracin para la creacin de reglas NAT de entrada. qos_file: Define el camino de configuracin para la aplicacin de Calidad de Servicio al trfico en la red. www_directory: Define el camino del directorio donde se publican las grficas generadas para el anlisis del consumo de ancho de banda en el sistema de colas de cRucho.
Configuracin
Nota: Las subredes se deben introducir de la forma ip/mask donde ip es la direccin IP de la subred y mask es un numero entero entre 0 y 32 que representa la mscara de la subred.
Configuracin
Cada vez que se cree una VLAN nueva esta aparecer en el encabezado del fichero apuntado por la opcin vlan_file en el fichero de configuracin (en este caso es el fichero vlan.conf). La figura 4 muestra un ejemplo de creacin de una VLAN.
Configuracin
Dir_IPv4: Indica la direccin IP que tendr la interfaz de red. Mask: Indica la mscara de red que tendr la interfaz. BW: Indica la velocidad a la que est conectada la interfaz. El valor * indica que la interfaz est conectada a 100 Mbps. Descripcin: Este parmetro es opcional y permite agregar una descripcin a la interfaz que se est configurando. La figura 5 muestra la configuracin de las interfaces Internet y Mes siguiendo los parmetros presentes en el encabezado del fichero de configuracin.
Configuracin
3.4.1. Agregando una direccin IP alias a una interfaz
En el encabezado mostrado en la figura 6 adems se pueden ver los parmetros necesarios para agregar un IP Alias a una interfaz de cRucho. Interfaz: Nombre de la Interfaz a la cual se le agregar una direccin IP Alias. IP_Alias: Direccin IP. Mscara: Mscara de red. Descripcin: Este parmetro es opcional y permite agregar una descripcin al IP Alias agregado. Agregando las lneas correctas en el fichero de configuracin de los IP alias se le pueden asignar a una interfaz de cRucho tantos alias como se desee. La figura 7 muestra un ejemplo de creacin de tres IP Alias para una de las interfaces de cRucho.
10
Configuracin
el encabezado del fichero routes.conf que es el fichero a donde apunta la opcin routes_file en la instalacin por defecto.
11
Configuracin
3.6. Firewall
El firewall de cRucho est basado en el Iptables de Linux. Las reglas se aplican al trfico de entrada de cada una de las interfaces configuradas en el router de forma independiente. La configuracin del firewall de cRucho se realiza en el fichero apuntado por la opcin firewall_file en el fichero de configuracin de cRucho. Una vez dentro de este fichero se podrn ver todas las interfaces que han sido configuradas. La figura 11 muestra el encabezado del fichero firewall.conf que es el fichero a donde apunta la opcin firewall_file en la instalacin por defecto.
12
Configuracin
Iface: Nombre de la Interfaz o interfaces a las cuales se les agregar una regla en el firewall. Estas deben estar entre las listadas en el encabezado del fichero de configuracin. En el caso de especificar varias interfaces estas se agregarn separadas por comas. Protocol: Protocolo con el cual machear la regla. Los protocolos soportados por el firewall son icmp, esp, ah, gre, igmp, sctp, tcp y udp. Para especificar todos los protocolos se usa el valor *. Source: Direccin IP del host o la subred fuente. Para especificar cualquier direccin IP se usa el valor *. Source port: Puerto del host fuente. El valor del puerto debe estar entre 1 y 65535. Para especificar un rango de puertos se usa la estructura puerto1-puerto2 y para especificar cualquier puerto se usa el valor *. Solo se puede especificar un puerto cuando el valor del parmetro Protocol sea sctp, tcp, udp. Destination: Direccin IP del host o subred destino. Para especificar cualquier direccin IP se usa el valor * Destination port: Puerto del host destino. El valor del puerto debe estar entre 1 y 65535. Para especificar un rango de puertos se usa la estructura puerto1-puerto2 y para especificar cualquier puerto se usa el valor *. Solo se puede especificar un puerto cuando el valor del parmetro Protocol sea sctp, tcp, udp. Accin: Accin a realizar si un paquete machea con la regla creada. Los valores permitidos son ACCEPT para aceptar el paquete, DROP para eliminar el paquete y DENY para denegar el paquete. Descripcin: Este parmetro es opcional y permite agregar una descripcin a la nueva regla creada. Nota: Las subredes se deben introducir de la forma ip/mask donde ip es la direccin IP de la subred y mask es un numero entero entre 0 y 32 que representa la mscara de la subred. Las reglas en el firewall deben agregarse teniendo en cuenta el orden de las mismas, pues ante la primera ocurrencia se realiza la accin especificada y no se revisan las dems reglas. Por defecto se bloquea todo el trfico entrante a cada una de las interfaces configuradas en cRucho.
13
Configuracin
La figura 12 muestra un ejemplo de cmo agregar una regla al firewall de cRucho para permitir la entrada por la interfaz de nombre Internet de todo el trfico dirigido a la direccin IP 10.36.4.125 y al puerto 80.
14
Configuracin
cRcuho. Estas reglas son aplicadas a todos los paquete que macheen con la misma una vez que ya fue realizado el enrutamiento del paquete. Una regla de un NAT de salida solo podr variar la direccin IP y/o el puerto del host fuente del paquete saliente.
Las reglas NAT de entrada y salida se dividen en dos partes. La primera parte compuesta por los parmetros iface, proto, src, src port, dst y dst port que constituyen la regla con la que machear un paquete que entra o sale de una de las interfaces de cRucho y la segunda parte compuesta por nat addr y nat port que son los parmetros que sustituirn los campos especficos en los paquetes que macheen con la regla anterior. Iface: Nombre de la interfaz a la cual se le agregar una regla NAT. Esta debe estar entre las listadas en el encabezado del fichero de configuracin. Proto: Protocolo con el cual machear la regla para realizar el NAT. Los protocolos soportados por el router son icmp, esp, ah, gre, igmp, sctp, tcp y udp. Para especificar todos los protocolos se usa el valor *. Src: Direccin IP de la subred o host fuente con la cual machear la regla para realizar el NAT. Para especificar cualquier direccin IP se usa el valor *. Src port: Puerto del host fuente con el cual machear la regla para aplicar el NAT. El valor del puerto debe estar entre 1 y 65535. Para especificar cualquier puerto se usa el valor *. Solo se puede especificar un puerto cuando el valor del parmetro Proto sea sctp, tcp, udp.
15
Configuracin
Dst: Direccin IP de la subred o host destino con la cual machear la regla para realizar el NAT. Para especificar cualquier direccin IP se usa el valor *. Dst port: Puerto del host destino con el cual machear la regla para aplicar el NAT. El valor del puerto debe estar entre 1 y 65535. Para especificar cualquier puerto se usa el valor *. Solo se puede especificar un puerto cuando el valor del parmetro Proto sea sctp, tcp, udp. Nat addr: En una regla NAT de salida este parmetro es la direccin IP que sustituir la direccin IP fuente del paquete que machee con la regla, mientras que en una regla NAT de entrada ser la direccin IP que sustituir la direccin IP destino del paquete que machee con la regla. Este parmetro es obligatorio y no admite el smbolo especial * para especificar cualquier direccin IP. Nat port: En una regla NAT de salida este parmetro es el puerto que sustituir al puerto fuente del paquete que machee con la regla, mientras que en una regla NAT de entrada ser el puerto que sustituir al puerto destino del paquete que machee con la regla. El valor del puerto debe estar entre 1 y 65535. Para especificar un rango de puertos se usa la estructura puerto1-puerto2 y para especificar el mismo puerto del paquete entrante o saliente se usa el valor *. Description: Este parmetro es opcional y permite agregar una descripcin a la nueva regla NAT agregada. Nota: Las subredes se deben introducir de la forma ip/mask donde ip es la direccin IP de la subred y mask es un numero entero entre 0 y 32 que representa la mscara de la subred. Nota: Los campos Dst y Src admiten el smbolo ! delante de la direccin IP especificada indicando la negacin de la misma. La figura 14 muestra un ejemplo de una regla NAT de entrada aplicada a los paquetes que arriban a la interfaz de nombre Internet. Esta regla sustituye la direccin IP destino de los paquetes dirigidos al host con direccin IP 192.168.1.1 por la direccin IP 10.36.4.127. El puerto destino permanece igual que en el paquete original.
16
Configuracin
La figura 15 muestra un ejemplo de una regla NAT de salida aplicada a los paquetes que son transmitidos a travs de la interfaz con nombre Internet. Esta regla sustituye la direccin IP fuente de los paquetes provenientes del host con direccin IP 10.36.4.127 por la direccin IP 192.168.1.1. El puerto fuente permanece igual que en el paquete original.
17
Configuracin
para la creacin de la jerarqua de clases y colas es HTB (Hierarchical Token Bucket) y las clases terminales tienen asociadas una cola SFQ (Stochastic Fairness Queueing). La forma en que se realiza la conformacin de trfico en Linux y por tanto cRucho puede ser un poco contra intuitivo en un primer momento ya que el trfico tiene que ser limitado en un lugar donde cRucho pueda controlar el flujo. De esta manera el trfico entrante de Internet que va a un host en la red LAN (descarga) es en realidad conformado al salir de la interfaz LAN del sistema de cRucho. De la misma manera el trfico que va desde la LAN a Internet (subida) se conforma al salir de la interfaz WAN. Esto constituye una de las limitaciones presentes en cRucho heredada del ncleo de Linux, ya que impide que se pueda realizar la conformacin del trfico en ms de una interfaz WAN o LAN.
18
Configuracin
Para aplicar calidad de servicio a los distintos tipos de trfico se tienen las siguientes secciones en el fichero de configuracin: WAN: Seccin donde se declara la interfaz que ser considerada como interfaz WAN (Wide Area Network) y que ser la primera en interactuar con el trfico entrante de Internet. LAN: Seccin donde se declara la interfaz que ser considerada como interfaz LAN (Local Area Network) y que ser la primera en interactuar con el trfico de la red local. QUEUES: Seccin donde se crea la jerarqua de colas para controlar en ancho de banda y priorizar los distintos tipos de trficos. FILTERS_IN: Seccin donde se definen las reglas para filtrar el trfico de Internet dirigido hacia los hosts conectados a la interfaz LAN, colocando este en la cola adecuada. FILTERS_OUT: Seccin donde se definen las reglas para filtrar el trfico de la red LAN dirigido hacia Internet, colocando este en la cola adecuada.
19
Configuracin
Para declarar las interfaces WAN y LAN se deben tener en cuenta las siguientes consideraciones: Solo se pueden introducir en las secciones WAN y LAN las interfaces listadas en el encabezado de estas secciones. No se puede definir la misma interfaz como WAN y LAN a la vez. Cada seccin solo puede tener una interfaz definida. La figura 17 muestra una porcin del fichero de configuracin de QoS donde se declara la interfaz de nombre Internet como WAN y la interfaz de nombre Lan como LAN.
20
Configuracin
BW-down-min: Este parmetro representa la velocidad mnima reservada para el trfico colocado en esta cola y que va dirigido de Internet a un host en la red LAN. BW-down-max: Este parmetro representa la velocidad mxima para el trfico colocado en esta cola y que va dirigido de Internet a un host en la red LAN. Priority: Prioridad de atencin de la cola dentro de la jerarqua de colas. Su valor debe estar entre 0 y 7. Descripcin: Este parmetro es opcional y permite agregar una descripcin a la cola recin creada. Nota: El valor de los parmetros BW-up-min, BW-up-max, BW-down-min y BWdown-max debe ser un nmero entero y la unidad de medida de los mismos debe ser mbps(megabit por segundos), kbps(kilobit por segundos) o bps(bit por segundos). La figura 18 muestra la configuracin necesaria dentro de la seccin QUEUES para crear la jerarqua de colas mostrada en la figura 19.
21
Configuracin
3.8.2.3. Creacin de los filtros de trfico
Los filtros de trfico no son ms que las reglas con las cuales se comprueban cada paquete que atraviesa el software router. Si la regla se cumple se realiza una accin que es en este caso colocar el paquete en la cola adecuada. cRucho permite definir dos tipos de filtros: los que se aplican al trfico que circula de la interfaz WAN a la interfaz LAN definidos en la seccin FILTERS_IN y los que se aplican al trfico que circula de la interfaz LAN a la interfaz WAN definidos en la seccin FILTERS_OUT. En la figura 16 se puede ver sobre las secciones FILTERS_IN y FILTERS_OUT un encabezado con los parmetros necesarios para agregar un nuevo filtro. Este encabezado tiene los siguientes parmetros: Protocol: Protocolo con el cual machear la regla del filtro. Los protocolos soportados son icmp, esp, ah, gre, igmp, sctp, tcp y udp. Para especificar cualquier protocolo se usa el valor *. TCP-Flag: Banderas TCP que debe tener activadas el paquete para que machee con la regla del filtro. Las banderas permitidas son syn, ack, fin, rst, urg, psh, all y none. Para especificar cualquier valor se usa *. No se pueden definir banderas TCP si el valor del parmetro Protocol no es igual a tcp. IP-src: Direccin IP de la subred o host fuente del paquete. Para especificar cualquier direccin IP se usa el valor *. Se admite adems el smbolo ! delante de una direccin IP de red o host para que la regla machee con cualquier direccin IP excepto la introducida. Port-src: Puerto fuente del host que origin el paquete. El valor debe estar entre 1 y 65535. Para especificar cualquier puerto se usa el valor * y solo se puede especificar un puerto cuando el valor del parmetro Protocol sea sctp, tcp o udp. IP-dst: Direccin IP de la subred o host destino del paquete. Para especificar cualquier direccin IP se usa el valor *. Se admite adems el smbolo ! delante de una direccin IP de red o host para que la regla machee con cualquier direccin IP excepto la introducida. Port-dst: Puerto destino del host que debe recibir el paquete. El valor debe estar entre 1 y 65535. Para especificar cualquier puerto se usa el valor * y solo se puede especificar un puerto cuando el valor del parmetro Protocol sea sctp, tcp o udp.
22
Configuracin
Queue: Nombre de la cola donde sern colocados los paquetes que macheen con la regla del filtro. Esta cola debe existir y no puede tener colas hijas, sino que debe ser una cola terminal dentro de la jerarqua de colas. Descripcin: Este parmetro es opcional y permite agregar una descripcin al filtro creado. Nota: Las subredes se deben introducir de la forma ip/mask donde ip es la direccin IP de la subred y mask es un numero entero entre 0 y 32 que representa la mscara de la subred. Las reglas de los filtros deben agregarse teniendo en cuenta el orden de las mismas. En este caso se aplicar el ltimo filtro encontrado que machee con los campos del paquete, por lo que se debe tener cuidado para que el paquete no acabe en una cola no deseada. La figura 20 muestra una porcin del fichero de configuracin donde se pueden ver los filtros necesarios para colocar en una cola de nombre Proxy el trfico desde y hacia Internet de un host en la red LAN con direccin IP 192.168.1.3.
23
Configuracin
3.8.4. Monitoreando el sistema de colas
cRucho brinda la posibilidad de generar los grficos de consumo de ancho de banda diario, semanal, mensual y anual de cada una de las colas creadas y publicar estos a travs de pginas web. Estos grficos son actualizados con una resolucin de un minuto. Para acceder a la pgina web principal de los grficos de las colas se introduce en el navegador web http://192.168.1.1 donde 192.168.1.1 es la direccin IP de la interfaz por donde est escuchando el servidor web. La figura 21 muestra la pgina web principal generada para la jerarqua de colas mostrada en la figura 18. En esta figura se puede ver que la pgina principal cuenta con los grficos de consumo de las ltimas 24 horas de cada una de las colas. Para ver los grficos de consumo diario, semanal, mensual y anual de una cola se debe hacer clic sobre el grfico de la misma mostrado en la pgina principal. Una porcin de estos grficos es mostrada en la figura 22 para una cola de nombre Proxy.
Fig. 21 Pgina web principal para el anlisis de consumo de ancho de banda en las colas
24
Configuracin
Fig. 22 Pgina web para el anlisis del consumo diario, mensual, semanal y anual de una cola
25
Configuracin
Nota: Para poder acceder a los grficos de las colas la direccin IP del host que establecer la conexin debe estar agregada o contenida en una de las subredes autorizadas al acceso http a cRucho.
26
Configuracin
27