Sie sind auf Seite 1von 21

Utilizando CentOS como un router

Integrantes: Patricio Almonacid Csar Coliman Mximo Manque Profesor: Marcelo Soto Asignatura: Servidores

Introduccin
La tecnologa es el reflejo del fanatismo del hombre por sobrevivir. Queremos hacer referencia antes de entrar de lleno en la materia que nos concierne en este informe, que en un principio tenamos grandes dudas sobre los temas que se nos asignaron a saber: utilizar un sistema operativo Linux de libre distribucin como un router, implementar seguridad mediante SELinux y utilizar IPTables. A medida que empezamos a estudiar y a desarrollar los temas, nos fuimos dando cuenta de lo poco que sabamos y lo til que puede llegar a ser en el campo laboral. Creemos que la materia a la cual vamos a hacer referencia a continuacin debera ser parte integral de la malla de INACAP. A pesar de lo difcil que nos fue encontrar el conocimiento en un mar de opiniones divergentes en internet, logramos rescatar, a nuestro juicio, la mejor manera de implementar estos tpicos en la prctica con mquinas reales.

En este informe vamos a detallar nuestro estudio y la forma de implementarlo paso a paso. Comenzaremos con las definiciones bsicas, entendiendo que no todas las personas saben los trminos complejos de la tecnologa actual. En definitiva, nuestra misin es explicar con palabras simples, lo difcil.

Sistema Operativo CentOS


CentOS en sus siglas en ingles quiere decir, Community ENTerprise Operating System, este Sistema operativo es una bifurcacion de desarrollo de software, que quiere decir esto?, bueno es la accin de crear un proyecto en una direccin diferente a un proyecto ya existente, por lo tanto Centos es un bifurcacin de la distribucin Linux Red Hat Enterprise Linux RHEL, compilado por voluntarios a partir del cdigo fuente liberado por Red Hat. Red Hat Enterprise Linux se compone de software libre y cdigo abierto, pero se publica en formato binario usable (CD-ROM o DVD-ROM) solamente a suscriptores pagados. Como es requerido, Red Hat libera todo el cdigo fuente del producto de forma pblica bajo los trminos de laLicencia pblica general de GNU y otras licencias. Los desarrolladores de CentOS usan ese cdigo fuente para crear un producto final que es muy similar al Red Hat Enterprise Linux y est libremente disponible para ser bajado y usado por el pblico, pero no es mantenido ni asistido por Red Hat. Existen otras distribuciones tambin derivadas de los fuentes de Red Hat. En nuestro trabajo hemos decidido utilizar el Sistema Opertivo Centos para la implmentacion de nuestra infraestructura , pues en el trascurso del ao nos asociamos a esta distribucin por lo que su uso se nos hizo ms fcil.

Objetivo
El objetivo a desarrollar en este trabajo es la operabilidad bsica de SELinux, filtros IP y ruteo mediante una mquina cliente. 1) Para poder realizar estos trabajos vamos a instalar dos PC los cuales tendrn instalados cada uno de ellos un sistema operativo CentOS 6.3, los cuales haremos funcionar como routers. 2) Router Linux 1 tendr habilitada una LAN con un PC virtual en el cual estar corriendo el sistema operativo Windows XP, a este PC se le asignara una IP mediante DHCP. Esto quiere decir que nuestro PC recibir una IP automticamente asignada por el router. En este Router Linux 1 habilitaremos NAT mediante IPTables para la conectividad a internet de toda nuestra infraestructura, es decir, actuara como router de borde y como ncleo. Y adems crearemos un enrutamiento, o sea, habilitaremos una ruta para llegar a tener conectividad con el router Linux 2 y su LAN. 3) Router Linux 2 tendr habilitada una LAN con una loopback (LAN virtual que se crea para probar rendimiento en la red y verificar conectividad entre distintas redes y entre routers). Habilitaremos el enrutamiento hacia el router Linux 1 y a su LAN. 4) Se deshabilitar, adems, el servicio de SELinux y se implementar IPTables para el bloqueo de trfico en el Router Linux 1.

Esquema

DHCP
Qu es DHCP? DHCP (sigla en ingls de Dynamic Host Configuration Protocol, en espaol protocolo de configuracin dinmica de host) es un protocolo de red que permite a los clientes de una red IP obtener sus parmetros de configuracin automticamente. Se trata de un protocolo de tipo cliente/servidor en el que generalmente un servidor posee una lista de direcciones IP dinmicas y las va asignando a los clientes.

Una vez que tenemos instalado CentOS en nuestro Router Linux 1, haremos lo siguiente: 1. Lo primero ser estar logeados como root. Esto deber ser siempre as, para tener los permisos necesarios para modificar y descargar archivos. 2. Antes de instalar DHCP, es necesario actualizar nuestro sistema operativo, para esto ejecutaremos el comando yum update y colocaremos y cada vez que sea necesario.

Con esto haremos que se descarguen los archivos y paquetes necesarios para el siguiente paso. 3. Una vez que el sistema se ha actualizado, ejecutaremos el comando yum install dhcp y. As, se instalar la ltima versin de DHCP disponible (4.1.1 en este caso).

Para comprobar si se instal de manera correcta el DHCP, vamos a ejecutar el comando rpm q dhcp.

4. Volvemos a la terminal de CentOS y colocamos el siguiente comando: cd /etc cd dhcp cp p /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample dhcpd.conf Con esto, lo que haremos ser reemplazar el archivo que lleva la configuracin del DHCP por defecto y lo editaremos para poder crear nuestra propia configuracin. Cuando pregunte si deseamos sobreescribir el archivo, le daremos que si (s).

5. Ahora entraremos al archivo dhcpd.conf y lo editaremos mediante el comando vi dhcpd.conf

Ya en el editor y para un trabajo ms fcil habilitaremos la numeracin de las lneas. Para ello ejecutaremos Esc + : se nu. Ahora vamos a configurar los parmetros necesarios, por ahora sern las lneas 7 y 8:

Donde dice example.org colocaremos el nombre de nuestro dominio, por ejemplo pato.local y ns1.example.org, ns2.example.org deberemos reemplazarlo por el DNS que vayamos a ocupar, en nuestro caso ser el de INACAP (10.29.64.1). Es importante sealar que el ; debe mantenerse al final de cada lnea editada.

6. Ahora vamos a editar los parmetros del DHCP: En la lnea 46 colocaremos la direccin de nuestra red de trabajo con su respectiva mascara. -En la lnea 47, ir el rango de IP que tomaran los PC de nuestra LAN. -En la lnea 48 ir un DNS, en este caso ser la gateway del router de Inacap al cual estamos conectados a internet, ya que por ejemplo el DNS de Google (8.8.8.8) est bloqueado. Por lo tanto, donde dice ns1.internal.pato.local debe ir 10.29.64.1. -En la lnea 49 ir el nombre del dominio, o sea internal.pato.local. -En la lnea 50 ir la IP de nuestro router Linux. -En la lnea 51 ir la direccin de broadcast.

7. Mediante el comando setup se configurarn los dispositivos de red. Con lo cual nos saldr la siguiente ventana:

En esta, elegiremos Configuracin de la red y luego Configuracin de dispositivos

8. En la siguiente ventana editaremos los parmetros de cada tarjeta de red:

La tarjeta eth0 es nuestra tarjeta de red cableada, en esta colocaremos los datos que habamos configurado anteriormente en el archivo dhcpd.conf. Primero, mediante la tecla espaciadora, deshabilitaremos la opcin de Usar DHCP, ya que configuraremos una IP esttica.

En IP Esttica y IP de la puerta de enlace predeterminada ir la misma IP de nuestro router Linux con su respectiva mascara. Daremos Aceptar.

Nos saldr nuevamente el listado de nuestras tarjetas de red. Ahora editaremos la inalmbrica, que es la wlan0.

Ac simplemente deberemos fijarnos que la opcin Usar DHCP venga marcada, ya que con esta, recibiremos una IP automtica del router de internet.

Daremos Aceptar y saldremos del asistente guardando los cambios. 9. Mediante el comando service network restart reiniciaremos los parmetros de la red. Luego iniciaremos el servicio DHCP mediante el comando service dhcpd restart. Con esto, los PC de nuestra LAN deberan recibir una IP automticamente al ir a los parmetros de IPv4 en el adaptador de red.

Enrutamiento esttico
Qu es enrutamiento esttico ? Es el reenvo de datos de una red a travs de una ruta fija.

1. Mediante el comando vi /etc/sysctl.conf se editar un valor, con el que lograremos que CentOS funcione como router. Para esto cambiaremos el nmero 0 que viene por defecto en net.ipv4.ip_forward=0 y lo dejaremos en 1.

Saldremos del editor y guardaremos mediante Esc + :wq. 2. Para agregar las rutas colocaremos los siguientes comandos: route add -net X.X.X.X netmask Y.Y.Y.Y gw Z.Z.Z.Z Donde: X.X.X.X: es la red de destino. Y.Y.Y.Y: es la mascara de dicha red. Z.Z.Z.Z: es la gateway o siguiente salto. Con el mando ip route show podremos ver las rutas que hemos agregado. Es importante aclarar que la red de destino y la mascara pueden ser 0.0.0.0, con esto el enrutamiento esttico ser por defecto. Si se quiere especificar todo, entonces ser simplemente un enrutamiento esttico.

Con esto, el enrutamiento estar listo, pero se borrar al reiniciar el computador, por lo que si se quieren conservar las rutas ser necesario editar un archivo, para esto, ejecutaremos: cd /etc/sysconfig/network-scripts/ vi route-eth1 Y nos saldr el editor, en el que agregaremos por ejemplo una ruta por defecto y una gateway cualquiera.

Saldremos y guardaremos mediante Esc + :wq.

Es importante aclarar que el enrutamiento esttico no es el nico que existe. Linux tambin soporta los siguientes enrutamientos dinmicos: OSPFv2; OSPFv3; RIP v1 y v2; RIPng y BGP-4, cuya implementacin es mediante la suite de software libre Quagga.

IPTables
Qu es IPTables? Es una herramienta de cortafuegos que permite no solamente filtrar paquetes, sino tambin realizar traduccin de direcciones de red (NAT) para IPv4 o mantener registros de log. Es parte de Netfilter, el que a su vez est disponible en el ncleo y permite interceptar y manipular paquetes de red. Las reglas tienen un orden, y cuando se recibe o se enva un paquete, las reglas se recorren en orden hasta que las condiciones que pide una de ellas se cumplen en el paquete, y la regla se activa realizando la accin que se le ha especificado. Tipos de cadenas: -INPUT: Paquetes recibidos para nuestro sistema -FORWARD: Paquetes enrutados a travs de nuestro sistema -OUTPUT: Paquetes generados en nuestro sistema y que son enviados Tipos de acciones: -DROP: eliminar paquete sin informar al remitente -REJECT: eliminar paquete informado error al remitente por defecto. -ACCEPT: paquete aceptado Comandos tiles: #iptables F: elimina todas las reglas #iptables X: elimina la cadena #iptables L: lista las reglas #iptables n L v - - line-numbers: muestra las reglas enumeradas #iptables L (OUTPUT|INPUT|FORWARD) n v: muestra solo las reglas especificadas # service iptables save: guarda las reglas #service iptables restart: reinicia IPTables para as aplicar los cambios introducidos Ejemplos: #iptables P (OUTPUT|INPUT|FORWARD) (DROP|ACCEPT|REJECT): dependiendo de los parmetros a configurar, por ejemplo #iptables P OUTPUT REJECT rechazar todo el trafico saliente. #iptables -I FORWARD -s 192.168.12.1 -p tcp --dport 443 -j DROP: bloquear el acceso a pginas HTTPS al host 192.168.12.1 # iptables -I FORWARD -s 192.168.4.0/24 -p tcp --dport 80 -j ACCEPT: aceptar el acceso a pginas HTTP a la subred 192.168.4.0

Configurando una regla de IPTables: 1. Si queremos denegar el trfico al puerto 80 y al 443 (HTTP y HTTPS respectivamente) a un host en especfico (el 192.168.12.1), debemos colocar el siguiente comando:

2. Ahora, solo basta con guardar los cambios y reiniciar el servicio de IPTables:

3. Para volver a aceptar el trfico de ese host en particular a los puertos 80 y 443, simplemente se coloca un ACCEPT en vez de DROP:

4. Volvemos a guardar los cambios y reiniciamos el servicio:

NAT
Qu es NAT? NAT (Network Address Translation - Traduccin de Direccin de Red) es un mecanismo utilizado por routers IP para intercambiar paquetes entre dos redes que asignan mutuamente direcciones incompatibles. Consiste en convertir, en tiempo real, las direcciones utilizadas en los paquetes transportados. En nuestro caso, NAT fue necesario para poder darle internet a una LAN creada. Para aplicar NAT es necesario emplear tambin IP Tables. 1. Lo primero es eliminar las reglas de firewall que vienen por defecto, para esto colocaremos los siguientes comandos: # iptables -F # iptables -t nat -F # iptables -t mangle F 2. Ahora, eliminaremos las cadenas: # iptables -X # iptables -t nat -X # iptables -t mangle X 3. Luego, habilitaremos el FORWARD y el enmascaramiento: # iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE # iptables -A FORWARD -i eth0 -j ACCEPT Importante: se debe recalcar que wlan0 es la tarjeta mediante la cual saldremos a internet y eth0 ser la tarjeta con la cual nos conectaremos a nuestra LAN.

4. Habilitaremos el reenvio de paquetes en el kernel: # echo 1 > /proc/sys/net/ipv4/ip_forward 4. Para guardar las configuraciones hechas se debe aplicar: # service iptables save 5. Para iniciar el servicio es necesario ejecutar el siguiente comando (tambin debe aplicarse cada vez que se reinicia el router centOS): # service iptables restart

SELinux
Qu es SELinux? Es un sistema que permite limitar el acceso que tienen las aplicaciones a otras aplicaciones y a los ficheros, impidiendo que un proceso pueda modificar cualquier fichero del usuario con el que se lanz. Los modos en SElinux son: 1. Enforcing; el modo por defecto que permitir o har cumplir las polticas de seguridad en el sistema, denegando el acceso y registrando las acciones. 2. Permissive; en este modo SElinux est habilitado pero no se aplicara la poltica de seguridad, solo advertir y registrar las acciones, til para la resolucin de problemas. 3. Disabled; en este modo SElinux se apaga. Comandos tiles: #sestatus: para revisar la configuracin de SELinux. # setenforce x: para cambiar el modo. El setenforce 0 lo dejar en modo permissive y setenforce 1 volver al modo por defecto; enforcing. Como deshabilitar SELinux: Debemos modificar un archivo que lleva los parmetros de SELinux, para esto se debe colocar vim /etc/selinux/config.

Simplemente debemos cambiar la lnea destacada a SELINUX=disabled.

Salimos y guardamos con Esc + :wq. Luego reiniciamos para que se guarden los cambios. Como vemos, mediante el comando sestatus, el modo ahora es disabled.

Para volver al modo enforcing, se debe ir nuevamente al archivo anterior y modificar la lnea SELINUX=disabled por SELINUX=enforcing.

Conclusin
Al principio al empezar a desarrollar este trabajo, nos enfrentamos a muchas dificultades. A continuacin damos un detalle de ellas y as mismo, como fuimos encontrando las soluciones. -Tajetas de red Ethernet : para hacer la presentacin de manera mas practica queramos implementar en cada router Linux una LAN con su propia interfaz de red Ethernet, pero para ello debamos comprar un tarjeta de red Ethernet con adaptador USB para los notebook, sin embargo debido a su precio no las pudimos comprar asi es que que creamos en el Router 2 una interfaz loopback Y el Router de nucleo lo levantamos en una maquina virtual en window 8 por la pues este sistema operativo da la facilidad en virtual box para administrar tarjetas virtuales, dndonos asi la opcin de conectarnos punto a punto con el Router 2 (maquina real) y con una maquina virtual window para dar DHCP y crear una LAN y adems conectarnos a internet en modo NAT mediante Wireless -DHCP: en un principio no consideramos que para implementar este servicio hay que hacer una actualizacin al sistema CentOS completo, sin esta actualizacin el servicio no arranca. El segundo problema que se nos presento fue la versin que instalamos, pues cambiaban las rutas respecto a las versiones anteriores, as es que por ello es muy til actualizar tambin el servicio. -DNS: luego de implementado NAT los PC de la LAN podan hacer ping a las IP de los servidores de las pginas web, pero no podan acceder a los dominios. Esto es porque primero no habamos asignado un DNS y luego cuando colocamos un DNS pblico (8.8.8.8 de Google) resulta que este estaba bloqueado por INACAP, por lo que tuvimos que utilizar el que esta nos asignaba. -SELinux: debido al poco material disponible en internet, no pudimos implementar este tpico de la manera en que hubisemos querido. Podemos decir que el resultado de este trabajo fue exitoso, debido a que pudimos cumplir los objetivos de buena manera, aunque como dijimos, no exentos de problemas. El uso de un PC como router puede abaratar costos de manera significativa, ya que no es necesario contar con una maquina poderosa para poder emular un enrutador, por lo que conocer los temas desarrollados ac, puede ser de suma ayuda para el futuro en el mbito laboral.

Das könnte Ihnen auch gefallen