NET-PHOENIX Red Empresarial Low Cost
Memoria del proyecto
Alumno : Miguel Carretas Perulero DNI : 76049586V Ciclo Formativo de Grado Superior (FPII) : Administración de Sistemas Informáticos en Red (ASIR) Centro Educativo : IES Valle del Jerte, Plasencia (Cáceres), CP.: 10600 Curso : Tipo de proyecto : 20152016 De innovación aplicada.
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
ÍNDICE DESCRIPCIÓN ……………………………………………………………………………………… 3 OBJETIVOS …………………………………………………………………………………………. 3 JUSTIFICACIÓN ……………………………………………………………………………………. 3 DESCRIPCIÓN TÉCNICA …………………………………………………………………………. 5 Diseño físico ……………………………………………………………………………………. 5 Componentes físicos …………………………………………………………………….. 5 Diseño lógico …………………………………………………………………………………… 6 SERVIDOR PROXMOX ……………………………………………………………………….. 6 Características técnicas ……………………………………………………..…………… 7 SERVIDOR OPEN LDAP ……………………………………………………………………… 8 Características técnicas ………………………………………………………………….. 8 Instalación. ………………………………………………………………………………… 8 Configuración inicial ……………………………………………………………………… 15 Instalación y configuración de entorno gráfico web …………………………………... 16 Cambio de directorio personal a los usuarios con autenticación LDAP ……………. 19 SERVIDOR NAS ……………………………………………………………………………….. 21 Características técnicas ………………………………………………………………….. 22 Instalación del sistema ……………………………………………………………………. 22 Configuración de RAID 5 …………………………………………………………………. 25 Integración con OpenLDAP ………………………………………………………………. 28 Crear carpetas a compartir. ………………………………………………………………. 31 Compartir las carpetas por NFS …………………………………………………………. 32 SERVIDOR DHCP Y DRBL ……………………………………………………………………. 33 Características técnicas …………………………………………………………………… 33 Instalación y configuración del servicio DHCP …………………………………………. 33 Configuración del servicio. …………………………………………………………... 36 CLIENTES ……………………………………………………………………………………….. 41 Integración de los clientes con LDAP ……………………………………………………. 44 Perfiles móviles de usuarios ………………………………………………………………. 49 Creación de carpeta para perfiles móviles en el Cliente ……………………………….. 50 Inicio de sesión de clientes en LDAP …………………………………………………….. 51 FIREWALL ………………………………………………………………………………………… 52 Características técnicas ……………………………………………………………………. 52 Instalación del sistema operativo …………………………………………………………. 53 Configuración de reglas de acceso entre redes ………………………………………… 54 SERVIDOR WEB ………………………………………………………………………………… 58 Características técnicas ……………………………………………………………………. 58 Instalación y configuración de apache ……………………………………………………. 58 Instalación de sitio web en el servidor ……………………………………………………. 62 COSTES DE IMPLANTACIÓN ……………………………………………………………………….. 64 MEDIOS UTILIZADOS ………………………………………………………………………………… 65 Hardware ……………………………………………………………………………………… 65 Software ………………………………………………………………………………………. 66 BIBLIOGRAFÍA …………………………………………………………………………………………. 67
Página 2 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
DESCRIPCIÓN El proyecto NET PHOENIX Red Empresarial LowCost se basa en los conceptos de “software libre” y la “obsolescencia programada”, trata de intentar construir una red empresarial de bajo coste, mediante la utilización de equipos antiguos y software libre. En este proyecto se explicará de manera detallada los pasos a seguir para configurar un red correctamente, bajo sistemas operativos basados en linux, más concretamente las distribuciones FreeNAS (basada en FreeBSD), Ubuntu Server y Debian Wheezy (para los clientes).
OBJETIVOS Mediante este proyecto se pretende concienciar a la gente, demostrando que es posible tener una red plenamente funcional con equipos considerados “obsoletos”, utilizando dichos equipos para dar servicios en una red empresarial, formada por hardware antiguo y software libre, contando con un presupuesto muy bajo, ya que los gastos serán única y exclusivamente de hardware.
JUSTIFICACIÓN Este proyecto demostrará que es posible tener una red con los servicios más habituales en un entorno laboral, minimizando los costes gracias a la utilización de hardware antiguo y software libre. El principal motivo que me ha llevado a realizar este proyecto es la basura tecnológica que el primer mundo genera, acabando
Página 3 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost siempre en los países menos desarrollados y suponiendo una contaminación altamente peligrosa para estos países. La idea de que mi proyecto pueda suponer un cambio en la concienciación de la gente sobre lo que supone el “reciclar” estos equipos es lo que realmente me ha motivado. Estamos muy mal acostumbrados en lo que a tecnología se refiere, en cuanto algún tipo de material informático o relacionado con la tecnología empieza a fallar, la primera idea es la de comprar uno nuevo y sustituir dicho producto por uno nuevo, en lugar de quebrarse un poco la cabeza e intentar darle una segunda vida. En el caso de muchos ordenadores “obsoletos”, basta con instalar un sistema operativo linux que sea liviano y funcionará perfectamente bien, porque seamos sinceros, ¿qué porcentaje de la población mundial aprovecha al máximo el rendimiento que pueda ofrecer su ordenador?, la respuesta es que la mayor parte de la población mundial sólo utiliza su ordenador para navegar por la red, escribir algunos documentos, escuchar música y poco más. Lo que yo intento hacer con este proyecto es concienciar a la gente de lo que sucede realmente cuando tiramos un equipo a la basura, la mayor parte de la basura que genera el primer mundo va a parar los menos desfavorecidos, así que si estás pensando en jubilar a tu ordenador piensa antes en estas personas y si puedes hacer algo para seguir aprovechando tu equipo.
Página 4 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
DESCRIPCIÓN TÉCNICA Diseño físico
Componentes físicos Cableado UTP CAT 5E 10/100 MB Conectores RJ45 Switch Cisco Catalyst 2950 Servidor Proxmox ( DBRL, DNS, DHCP, LDAP, NAS (NFS y FTP) ) Router ADSL Comtrend AR5387un ( Firmware OpenWRT ) Firewall ( Endian Firewall ) → con 3 tarjetas de red 3com 10/100 MB Servidor Web ( DMZ )
Página 5 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Diseño lógico
SERVIDOR PROXMOX Todos los servidores menos el FIREWALL y el SERVIDOR WEB están virtualizados en un SERVIDOR PROXMOX con versión 4.1, los discos duros de las máquinas virtuales estarán guardados en formato vmdk. Para ahorrar costes en un cuanto a máquinas que prestarán los servicios más importantes en la estructura de esta red, he decidido virtualizar dichos sistemas, ya que así es posible minimizar los costes de hardware a un único equipo con mayor potencia y mejores características en
Página 6 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
cuanto a componentes físicos. Por otra parte al tener todos los servidores virtualizados, menos el servidor web, es más rápido y eficiente a la hora de poder realizar copias de seguridad de las máquinas, o incluso tener clones de las mismas para que en caso de que un servidor fallase, simplemente sería necesario levantar el clon y la red no se vería afectada, al menos en un periodo mediolargo de tiempo. Otra de las cosas que se pueden hacer es clonar el disco duro del servidor PROXMOX, de esta manera tendríamos una copia exacta de toda la configuración por si fallase el disco duro principal. Para realizar la clonación de imágenes yo recomiendo utilizar Redo Backup & Recovery , el cual se basa en linux y trae herramientas tales como Gparted. Desde mi opinión es mejor tener un equipo con características un poco más potentes que el resto y en el poder virtualizar los servicios principales de la red, creo que no podemos ahorrar mucho dinero si lo pensamos de esta manera.
Características técnicas Dirección IP : 192.168.1.135 Máscara: 255.255.255.0 Gateway: 192.168.1.1 Servidor DNS: 87.216.1.65 Procesador: Intel i3 RAM: 8GB Disco Duro: 500GB Marca y Modelo: ACER AX3950 Acceso WEB: https://192.168.1.135:8006 → la conexión el navegador la mostrará como no segura porque no disponemos de un certificado SSL y por lo tanto el
Página 7 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
navegador advierte de que podría tratarse de un ataque. Pero sólo le tenemos que indicar que queremos continuar con la navegación.
SERVIDOR OPEN LDAP Características técnicas Memoria RAM: 512MB RAM Disco Duro: 20GB Interfaces de Red: 1 (red interna) Sistema Operativo: Ubuntu Server 14.04.4amd64 Dirección IP: 192.168.1.90 Máscara: 255.255.255.0 Gateway: 192.168.1.1 Este servidor se encargará única y exclusivamente de dar el servicio LDAP, para permitir la autenticación en los clientes y en el servidor NAS o restringir su acceso. En el habrá que configurar algunos ficheros de configuración e instalar paquetes para su correcto funcionamiento. Para administrar el servidor utilizaremos una aplicación web porque nos facilitará el uso y su administración. En el tendremos que decir dónde estará situado el directorio home de cada usuario (para mover su /home a el servidor NAS, mediante creación de perfiles móviles en los equipos clientes).
Instalación. Lo primero que hay que hacer es instalar el sistema operativo Ubuntu Server, en este proyecto se ha optado por instalar la versión 14.04.4amd64 , para facilitar la instalación de paquetes y que dichos paquetes no estén desactualizados. Cuando
Página 8 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
se finalice la instalación del sistema lo siguiente que tenemos que hacer es ponerle una contraseña al usuario “root”: $sudo passwd root Durante la instalación del sistema se ha creado un usuario de nombre “administrador” pero esto no quiere decir que sea el usuario root, es decir, es un usuario normal pero con privilegios para ejecutar el comando sudo. Este usuario tampoco será el mismo que el usuario administrador de ldap, cómo se verá más adelante. El siguiente paso que debemos realizar es asignarle una dirección IP estática ( 192.168.1.90 /24 ) al servidor, por razones obvias. Cómo este sistema operativo no cuenta con una interfaz gráfica, hay que configurar esto a mano, para poder realizar esta nueva configuración es necesario editar ( con permisos de administrador ) el fichero /etc/network/interfaces ( con el comando nano ), el aspecto que tendrá dicho fichero, en el caso de la configuración para este proyecto, será el siguiente:
Página 9 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez realizados los cambios, guardamos ( CTRL+O ) y salimos ( CTRL+X ). Ahora sólo tenemos que reiniciar el servicio mediante: $sudo /etc/init.d/network restart ó $sudo service networking restart Para comprobar que los cambios se han realizado correctamente vemos la configuración de red con el comando ifconfig:
Página 10 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Si al reiniciar el servicio no se nos han aplicado correctamente los cambios reiniciaremos el equipo y volveremos a comprobar la configuración de red del equipo mediante el comando anterior. El último paso que tenemos que realizar antes de instalar los paquetes del servicio ldap es editar el fichero de configuración /etc/hosts para comprobar que tiene los valores adecuados para el servidor. En mi caso tendrá este aspecto:
Página 11 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Cuando hayamos realizado estas configuraciones lo siguiente es realizar la instalación de paquetes. IMPORTANTE : durante la instalación del sistema , he instalado el paquete Open SSH para poder administrar el servidor remotamente, más adelante veremos cómo configurar sus ficheros para hacer más seguro el acceso por SSH a dicho servidor. NOTA : estos pasos anteriores de instalación de OpenSSH y la configuración de la red se realizarán también de igual forma en los servidores DRBL+DHCP, el NAS (aunque aquí se hace gráficamente) y el servidor WEB . Por supuesto la configuración no será exactamente la misma pero tendremos que realizar estos pasos iniciales. En este proyecto los paquetes que se han optado por instalar han sido “ slapd ” y “ ldaputils ”. Estos paquetes están por defecto en los repositorios de la versión de Ubuntu Server que yo estoy utilizando. Pero por si acaso, yo recomiendo actualizar dichos repositorios, para hacer esto tenemos que ejecutar el siguiente comando: $sudo aptget update
Página 12 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez se termine de ejecutar el proceso correspondiente a este comando tenemos que proceder con la instalación de los paquetes anteriormente mencionados. Para ello ejecutamos el siguiente comando: $sudo aptget install slapd ldaputils y *Nota: El parámetro “ y ” sirve para hacer que el sistema conteste por nosotros a todas las preguntas que haga el mismo y pasarle la condición “ yes ”. Cuando comience el proceso de instalación el sistema nos va a ir pidiendo una serie de parámetros que tendremos que introducir. En la primera pantalla que nos saldrá, nos pedirá introducir la contraseña para el “administrador” de LDAP ( no confundir con el usuario administrador del propio sistema ni con root ) y su confirmación, es importante recordar bien esta contraseña para futuras tareas de administración del propio servidor LDAP.
Página 13 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez introducida la contraseña el sistema continuará con el proceso de instalación. Cuando finalice dicho proceso tenemos podemos verificar que todo esté en orden con el comando “ sudo slapcat ”:
El objetivo de este comando consiste en obtener la información de la base de datos LDAP y su salida se produce en formato LDIF, lo que nos facilitará exportar la
Página 14 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
estructura del directorio LDAP o, sencillamente, obtener una copia de respaldo de su contenido, sólo con redirigir su salida a un archivo.
Configuración inicial Seguidamente de comprobar que todo se ha instalado correctamente tenemos que proseguir con el proceso de configuración del servidor LDAP, para ello tenemos que reconfigurar el paquete slapd anteriormente instalado, esto lo hacemos mediante la siguiente orden: $sudo dpkgreconfigure slapd Una vez introducido el comando la primera pantalla que nos saldrá es una mensaje de advertencia sobre si deseamos omitir la configuración del servidor LDAP, como es obvio le tenemos que dar a NO y continuar con el proceso de configuración. A continuación nos preguntará qué nombre de dominio queremos darle a la base del servidor LDAP. La base es la raíz de donde cuelgan todos los elementos de LDAP, en mi caso el nombre que le pondré será “ netphoenix.ex ”. Posteriormente nos pedirá introducir un nombre para la organización, yo le pondré el mismo que en el paso anterior. Una vez hecho esto tendremos que introducir la contraseña de administrador dos veces. A continuación nos pedirá que motor de base de datos deseamos utilizar, dejamos el que está por defecto seleccionado.
Página 15 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
El paso siguiente nos pregunta si deseamos que se borre la base de datos si eliminamos el paquete slapd, yo le digo que no pero esto es a gusto de cada uno. Si hemos configurado anteriormente el servicio LDAP, tendremos los ficheros de la base de datos almacenados en el directorio /var/lib/ldap . Nos preguntará si queremos moverlos a un directorio de backup (concretamente a /var/backups ) por si fuera necesario recuperarlos. Yo le diré que si. Después nos preguntará si permitiremos la versión 2 de LDAP, por seguridad no lo permito, ya que se encuentra deshabilitada.
Instalación y configuración de entorno gráfico web Ahora que ya tenemos configurado el servidor LDAP correctamente, cómo dicho servidor no cuenta con interfaz gráfica y para hacer más fácil e intuitiva su administración, instalaremos un paquete el cual nos va a permitir administrar nuestro servidor de una manera más visual mediante interfaz web.
Página 16 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Hay varios programas gráficos para la administración del servidor LDAP, los más destacados son: ● JXplorer ● Phpldapadmin En mi caso he elegido la segunda opción porque creo que funciona mejor y así nos evitamos dolores de cabeza con la versión de Java. Dicho esto para instalar este paquete lo único que tenemos que hacer es introducir la siguiente orden: $sudo aptget install phpldapadmin y Una vez hemos instalado el paquete ahora lo que nos queda es configurar una serie de cosas para poder conectar con la estructura de directorio LDAP creada anteriormente y para que el servidor funcione completamente bien. Lo primero que hemos de hacer es editar el fichero de configuración “ /etc/phpldapadmin/config.php ” y llevar a cabo las siguientes modificaciones: 1. Buscar la línea donde indicaremos la raíz de nuestro servidor LDAP, quedando en mi caso de la siguiente manera (mi base es netphoenix.ex ) y otra línea donde le indicaremos el acceso administrativo: $servers>setValue('server','base',array('dc=netphoenix,dc=ex')); $servers>setValue('login','bind_id','cn=admin,dc=netphoenix,dc=ex');
Página 17 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
2. Por defecto phpldapadmin lanza las alertas dentro de la misma interfaz web. Estas no tienen ningún impacto en su funcionalidad, por lo cual las ocultaremos. Descomentamos la siguiente línea y la damos el valor de true. $config>custom>appearance['hide_template_warning'] = true; 3. Si cuando tratas de crear un objeto nos lanza el siguiente error: Error Error trying to get a nonexistant value (appearance,password_hash) realizaremos
la
siguiente
modificación.
Buscamos
el
fichero
/usr/share/phpldapadmin/lib/TemplateRender.php y en dicho fichero modificamos
el
llamado
a
la
función
password_hash
por
password_hash_custom (aproximadamente debería de estar en la línea de código 2469), quedando de la siguiente manera: $default = $this>getServer()>getValue('appearance','password_hash_custom'); Una vez hechos estos cambios ya podemos acceder a nuestro servidor LDAP mediante una interfaz web, para acceder a mi servidor LDAP simplemente tengo que poner la dirección IP (192.168.1.90) seguido del directorio /phpldapadmin, quedando de la siguiente manera: 192.168.1.90/phpldapadmin
Página 18 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Cómo podemos ver nos sale un mensaje de advertencia diciéndonos que la conexión web no está encriptada, se podría usar un certificado ssl válido para encriptar dicha comunicación para evitar que un sniffer pudiese capturar contraseñas y otros datos sensibles para la seguridad de nuestro servidor.
Cambio de directorio personal a los usuarios con autenticación LDAP Cómo ya tenemos las carpetas compartidas montadas en el servidor LDAP, lo siguiente que tenemos que hacer es cambiar el /home de los usuarios a la carpeta “ /perfiles/empleados ” o “ /perfiles/jefes ”, dependiendo del grupo del usuario obviamente. Este paso se realizará a través de la interfaz web aunque se podría optar por hacerlo a través de la consola, pero para agilizar el proceso he optado por la primera opción, ya que resulta más cómodo e intuitivo.
Página 19 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez accedemos a la parte administrativa a través de la web, tenemos que buscar el usuario en concreto al cual le vamos a indicar su nuevo directorio personal, en mi caso tengo dos usuarios: empleado01 → grupo Empleados jefe01 → grupo Jefes Cuando encontremos al usuario en concreto, basta con pinchar sobre el y buscar el recuadro “ homeDirectory ”, es aquí donde sustituimos el valor antiguo por la nueva ubicación de su directorio personal. De esta manera, en mi caso, quedará de la siguiente forma:
Cuando pongamos el nuevo valor pulsamos Intro y posteriormente aceptaremos los cambios para que funcione con éxito.
Página 20 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
La configuración del directorio personal para el otro usuario es similar, simplemente habría que cambiar la ruta en el valor de homeDirectory , para que tengan diferente directorio personal, como es lógico.
SERVIDOR NAS En el sistema operativo del cliente , el directorio /home se encuentra almacenado en el servidor NAS (con sistema operativo FreeNAS), que también tendrá autenticación mediante LDAP, por lo que será en dicho servidor LDAP dónde indique el home de cada usuario. El servicio que utilizaré para que los clientes puedan tener su /home en dicho servidor será NFS, el cual nos va a permitir compartir esta carpeta en red, lo que permitirá su montaje en los equipos clientes. El servidor NAS tendrá una configuración en RAID 5 , contará con 3 discos duros cada uno de 30GB, permitiendo así tener tolerancia a fallos y con un espacio total de 60GB para guardar información, más un disco duro de 10GB para la instalación del sistema en sí. Este servidor también contará con el servicio FTP, donde los usuarios tendrán una carpeta compartida que se podría usar en un futuro para compartir archivos relacionados con el entorno empresarial dentro de la red interna. Para poder realizar este paso será necesario crear un grupo en el servidor OpenLDAP con permisos de lectura y escritura sobre dicha carpeta, una vez hecho esto habría que incluir a los usuarios que queremos en este grupo.
Página 21 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Características técnicas Dirección IP: 192.168.1.80 Mask: 255.255.255.0 Gateway: 192.168.1.1 Disco Duro: 30GB*3 + 10GB(1)
RAM: 512MB Interfaces de Red: 1 (red interna)
Instalación del sistema Para realizar la instalación de este sistema operativo basado en FreeBSD basta con disponer de una imagen ISO o un CD con el sistema operativo. Una vez arranquemos la máquina la primera pantalla que nos sale es la siguiente:
En dicha pantalla se nos muestran cuatro posibles opciones: 1. Install/Upgrade → para instalar el sistema (en nuestro caso) o para actualizarlo. 2. Shell → para abrir un terminal de texto. 3. Reboot System → para reiniciar la máquina. 4. Shutdown System → para apagar la máquina.
Página 22 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Para instalar el sistema en este caso, como es obvio, seleccionamos la primera opción. El sistema nos empezará a mostrar una serie de pantallas dónde iremos configurando los aspectos más básicos del sistema. En la pantalla para seleccionar el dispositivo masivo de almacenamiento donde estará instalado el sistema operativo, es importante tener en cuenta la configuración en RAID 5 que se realizará posteriormente. Dicho esto cuando nos pida seleccionar un disco duro tendremos que seleccionar, en mi caso, el disco duro de 10GB, dado que los otros 3 discos serán utilizados para dicha configuración.
Después se nos advertirá de que todos los datos en este disco serán eliminados sin poder recuperarlos, aunque cómo está vacío continuamos sin más y procedemos con la instalación del sistema.
Página 23 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Cuando se termine de instalar el sistema se reiniciará automáticamente y es cuando tenemos que extraer el CD o imagen ISO para que no vuelva a arrancar a través de ella. Una vez hecho estos sencillos pasos ahora sólo nos queda esperar a que el sistema operativo se inicie. Cuando esto ocurra se nos mostrará un menú con distintas opciones para la configuración del sistema. Entre ellas tendremos que elegir una en concreto, para ponerle una dirección IP fija dado que es un servidor y no queremos que obtenga IP mediante el servidor DHCP que se configura más adelante en el servidor DRBL. Las opciones que se muestran son las siguientes:
Página 24 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Significado de las opciones: 1. Configurar interfaces de red (esta es la opción que hay que seleccionar para ponerle una IP estática). 2. Configurar agregación de enlaces. 3. Configurar interfaces VLAN. 4. Configurar una ruta por defecto. 5. Configurar rutas estáticas. 6. Configurar DNS. 7. Resetear las credenciales para la administración mediante la web. 8. Resetear los valores de fábrica. 9. Abrir un terminal para introducir comandos. 10. Reiniciar el sistema. 11. Apagar el sistema.
Configuración de RAID 5 Dado que los directorios personales de cada usuario se almacenarán en el servidor NAS, es conveniente, que este servidor tenga un sistema de tolerancia a fallos y prevención ante posibles pérdidas de datos. Para solucionar este problema se va a optar por configurar los 3 discos de 30GB en configuración de RAID 5. Se ha optado por este tipo de configuración porque creo que es el más adecuado para la funcionalidad que va a tener este servidor. Aparte de ser una elección propia, este tipo de configuración es uno de los más utilizados en el mundo y tiene una muy buena relación entre escrituras, lecturas y tolerancia a fallos, permitiendo por lo tanto un buen equilibrio entre seguridad y velocidad.
Página 25 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Para realizar esta configuración en el sistema operativo del servidor NAS ( FreeNAS 9.2.1.9 RELEASE x86 ), una vez hayamos iniciado sesión, basta con desplazarnos por el menú de la izquierda hasta encontrar la opción “ Almacenamiento ”, una vez dentro de esta opción se nos desplegará un submenú, dentro de este nuevo menú buscaremos la opción “ Volúmenes ” y de nuevo se nos desplegará un submenú.
Ahora pinchamos en “ ZFS Volume Manager ” y se nos abrirá una ventana parecida a esta:
Página 26 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez hemos puesto la configuración correctamente basta con darle al botón “ Add Volume ” y se nos creará el RAID 5. Nota : es importante tener en cuenta que este sistema operativo, como se puede apreciar en la imagen anterior, llama al RAID 5 mediante el nombre de “ Raid Z ”. Digo que es importante tenerlo en cuenta para así evitar confusiones, si queremos una configuración en RAID 5 esta es la opción correcta.
Página 27 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Integración con OpenLDAP Para que los clientes puedan tener su carpeta personal almacenada en el servidor NAS es necesario que el servidor NAS tenga autenticación mediante LDAP, ya que sino nos resultará imposible lo que queremos llevar a cabo. Para integrar al servidor NAS con el servidor LDAP lo primero que tenemos que hacer es comprobar que los dos equipos se comuniquen entre sí. Una vez realizado este proceso seguiremos con el proceso de integración. Para poder integrar a este servidor dentro de LDAP nos desplazamos por el menú de la izquierda hasta encontrar la opción “ Servicios ”, hacemos clic en esta opción y el submenú que se nos abrirá hacemos clic en “ Directory Services ” y posteriormente en “ LDAP ”.
Página 28 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Ahora tenemos que configurar correctamente los campos estrictamente necesarios, que cómo se podrá observar en la siguiente imagen son los que yo he rellenado.
Nombre de anfitrión → dirección IP o nombre NETBIOS del servidor LDAP. DN Base → raíz de LDAP. Usuario de raíz DN → cuenta de usuario para llevar a cabo tareas de administración del servidor LDAP.
Página 29 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez introducidos correctamentes los parámetros bastaría con Aceptar los cambios. Lo siguiente que es necesario hacer es habilitar tanto el servicio “ Directory Services ”, cómo el servicio “ CIFS ”. También activaremos el servicio “ NFS ” para cuando se configura en el servidor LDAP el “ home ” de cada usuario. En FreeNAS todos los servicios se pueden activar de manera gráfica dentro de la opción “ Servicios ” del menú de la izquierda, en el apartado “ Control de Servicios ”.
Para que CIFS no nos de fallos y se integre correctamente el NAS en el LDAP es necesario que cuente con los siguientes parámetros de configuración o al menos los más similares posibles.
Página 30 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Por su parte, el servicio NFS basta con iniciarlo de dejarlo con los valores por defecto.
Crear carpetas a compartir. Una vez está bien configurado el servidor NAS lo siguiente que tenemos que realizar es compartir dos carpetas, una para los usuarios que son empleados y otra para los usuarios que son jefes. Estas 2 carpetas compartidas se almacenarán dentro del RAID5. En mi caso, para crear estas carpetas en el RAID5, deben estar dentro del volumen que yo he llamado “ RAID5 ”. Dicho volumen en mi caso será “ /mnt/RAID5 ” por lo que las carpetas compartidas las voy a crear dentro de este directorio, dentro de una carpeta que llamaré “ HomeDir ”. Cómo el sistema operativo
Página 31 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
del servidor NAS también es linux yo he optado por crear las carpetas por entorno gráfico mediante el comando “ sudo mkdir ” y después darle los permisos que se pueden apreciar en la siguiente imagen:
Para ambas carpetas, como se puede observar en la imagen anterior, pertenecen al usuario “ nobody ” , es decir, a nadie. Mientras que el grupo al que pertenece cada carpeta es distinto para cada una. Los permisos que tienen ambas son: Usuario → Todos los permisos. Grupo → Lectura y Ejecución. Otros → Ejecución.
Compartir las carpetas por NFS. Llegados a este punto ya tendremos creadas las dos carpetas que vamos a compartir. El siguiente paso es compartirlas, este paso lo realizaremos por entorno gráfico. Para ello tenemos que buscar la opción “ Compartido ” del menú superior en el entorno gráfico de administración de FreeNAS. Una vez hagamos clic en esta opción le damos a “ NFS(Unix) ” y posteriormente a “ Add Compartidos NFS(Unix) ”.
Página 32 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
SERVIDOR DHCP Y DRBL Características técnicas Dirección IP: 192.168.1.85 y 192.168.1.86 Mask: 255.255.255.0 Gateway: 192.168.1.1 Disco Duro: 60GB RAM: 2GB Interfaces de Red: 2 (red interna y red conectada a interfaz verde del Firewall) Sistema Operativo: Ubuntu Server 14.04.4amd64 Este servidor almacenará el sistema operativo que los clientes utilizarán al arrancar mediante la red, en él se cargará el sistema operativo de los clientes, por lo que contará con un número más elevado de recursos, aunque como esto es sólo un prototipo, con 2gb será más que suficiente. Para poder compartir el sistema operativo, es necesario tener un servidor DHCP instalado, por lo que se ha optado por instalarlo en este mismo equipo.
Instalación y configuración del servicio DHCP Dado que el servidor DRBL necesita tener un servicio DHCP instalado, el primer paso que tenemos que realizar es instalar dicho servicio, para posteriormente poder realizar la instalación del servicio DRBL y facilitar su configuración. Antes de proceder con la instalación del DHCP, en mi caso particular, voy a tener que hacer unas modificaciones previas en el servidor. Cómo se puede apreciar en el diseño lógico, el servidor DRBL y DHCP se encuentra virtualizado también dentro del
Página 33 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
PROXMOX, por lo tanto si nos fijamos dicho servidor tiene que tener obligatoriamente 2 tarjetas de red. Una tarjeta de red tendrá la dirección IP 192.168.1.85 /24 (da servicio DHCP y sirve el SO a los clientes) y la otra tendrá la dirección IP 192.168.1.86 /24 (da acceso a Internet a través del Firewall). Por lo tanto en el fichero de configuración /etc/network/interfaces tendremos que tener algo parecido a esto:
Una vez tenemos esto claro procedemos a instalar el servicio DHCP. En este proyecto se ha optado por instalar iscdhcpserver , dado que lo hemos configurado durante el curso y facilitará su configuración, dado que ya se conoce esta herramienta. Para instalar el paquete basta con hacer un “ sudo aptget install iscdhcpserver ”, una vez termine el proceso de instalación tenemos que editar el
Página 34 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
fichero de configuración /etc/default/iscdhcpserver e indicarle la interfaz por la que dará el servicio DHCP, para ello buscamos la línea INTERFACES e igualamos su valor a el nombre de la interfaz por la que queremos que de dicho servicio, quedando en mi caso de la siguiente manera: INTERFACES=”eth0” Para la red 192.168.1.0 /24 se asignará mediante DHCP a los clientes direcciones IP’s desde la 192.168.1.100 a la 192.168.1.119. Pero esto se configura automáticamente más adelante durante la configuración de DRBL, así que no tendremos que modificar el fichero /etc/dhcp/dhcpd.conf . El siguiente paso es comenzar con la configuración del servidor DRBL cómo tal, es decir, de qué forma se les servirá el sistema operativo a los clientes. Antes de instalar nada debemos añadir en el servidor una serie de repositorios dado que si no, no se nos instalará bien este servicio. A continuación se ha creado una lista con dichos
repositorios,
los
cuales
deben
ser
incluidos
en
el
fichero
/etc/apt/sources.list : ● deb http://drbl.sourceforge.net/drblcore drbl stable ● deb http://us.archive.ubuntu.com/ubuntu/ hardyproposed main restricted universe multiverse ● debsrc http://us.archive.ubuntu.com/ubuntu/ hardyproposed main restricted universe multiverse
Página 35 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
También hay que añadir que dichos repositorios es posible que no tengáis que añadirlos, todo depende de la versión de Ubuntu Server que estemos utilizando. El siguiente paso es realizar un “ sudo aptget update ” y posteriormente instalamos el programa con “ sudo aptget install drbl ”. Configuración del servicio. Una vez finalice el proceso de instalación tenemos que ejecutar el comando “ drblsrv i ” y comenzará el proceso para configurar el servicio. 1. Lo primero que nos pregunta es si queremos bajarnos los ficheros para posibilitar la instalación mediante pxe y red de algunas distribuciones linux, en este proyecto la opción “ Y ” será la elegida, si no hemos añadido los dos últimos repositorios que están más arriba nos fallará. Este proceso tardará un tiempo ya que se tienen que bajar varios ficheros. 2. Ahora nos preguntará si queremos usar la consola serie para los clientes, dejamos “ N ” o nuestros clientes no verán nada en su pantalla. 3. Ahora nos preguntará qué cliente mandaremos por PXE, para la configuración de los clientes en este proyecto el tipo de CPU i386, ya que para los clientes es más que suficiente. Una vez finalice la descarga de paquetes tenemos que continuar configurando el servidor DRBL, para ello tendremos que ejecutar el comando “ drblpush i ” e ir
Página 36 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
introduciendo los parámetros necesarios en las opciones que nos irán saliendo. A continuación se explican de una manera breve estas opciones: a. Nombre del dominio. → netphoenix.ex b. Nombre del dominio NIS/YP → Nada c. Prefijo que se antepondra al nombre de los equipos clonados → NETPHOENIX d. Seleccionamos cuál es la tarjeta que tendrá salida a Internet (la que conecta con la LAN) tecleando eth0, eth1,.. → eth1 e. Si queremos que vaya almacenando MACIP (nuestro drbl) para asignar siempre la misma IP a los mismos equipos. → No f. Si queremos permitir a los clientes conectados a nuestro servidor DHCP que se les ofrezca siempre la misma IP (habrá que almacenarlas como en el caso anterior). → No g. Cuál es el número inicial que queremos emplear de las IPs a emplear. → Desde la 192.168.1.100 h. Número de equipos que van a clonarse (por sesión), esto limitará el número de IPs que podrá asignar nuestro servidor de DHCP. → 20, ya que esto es un prototipo y es suficiente para su funcionamiento. Las direcciones IP para los clientes por tanto, estarán en el rango 192.168.1.100 192.168.1.119. i. Nos pide confirmación de los últimos datos asignados. j. Tipo de servidor: para este proyecto se elige la opción Full DRBL mode (cada
Página 37 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
equipo tiene su propio disco duro, particiones,...) opción "0" → se ha elegido la misma opción. k. Modo del servidor de clonezilla "Full clonezilla mode" cada equipo tiene sus propios /etc y /var basadas en NFS → Elijo la misma opción. l. Path absoluto al lugar dónde vamos a guardar las imágenes. → /tftpboot/nbi_img m. Si existe disco duro en el cliente ¿quieres usar una parte para swap?. → Y n. ¿De qué tamaño? → 128MB ñ. Qué modo quieres para los clientes: gráfico o texto. → Gráfico o. ¿Le ponemos una contraseña al usuario root de los clientes que intenten acceder como tales distinta a la contraseña de root de la máquina para mayor seguridad? → N p. ¿Quieres ponerle una contraseña para que los usuarios que quieran acceder a las opciones de arranque tenga que introducirla? → Y q. ¿Quieres ponerles la línea de boot a los clientes? (en x segundos se iniciará la opción seleccionada) → N r. ¿De cuánto tiempo? → 15 segundos s. Si usas modo gráfico puedes cambiar al modo texto en caso de fallo de los clientes. → Y t. ¿Quieres dejar habilitado audio, USB,... a los clientes? → Y v. ¿Asignar IPs públicas a los clientes? → N
Página 38 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
w. ¿Quieres permitir a los clientes ejecutar una sesión en modo terminal? → N x. ¿Quieres usar el servidor DRBL como servidor NAT? (en otro caso los clientes no podrán salir a Internet). → Y y. ¿Quieres mantener la configuración de los clientes de DRBL si existe una? → N z. Actualizará las reglas del cortafuegos para permitir nat. → Y Las anteriores opciones ( configuración de drbl ) han sido sacadas de la siguiente página web, realizando algunas modificaciones para adaptarlas a las necesidades de este proyecto: http://tecnoloxiaxa.blogspot.com.es/2008/09/cmoinstalarunservidorpxecon.html Cuando se termine de configurar todo, lo siguiente que tenemos que hacer es elegir que sistema operativo se instalarán en los clientes, para ello ejecutamos el comando “ dcs ” y seguimos el asistente tal y como muestran las siguientes imágenes:
Página 39 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
*Elegimos la opción anterior para instalar un equipo cliente mediante la red*
*Ahora elegimos el sistema operativo que deseamos instalar mediante la red*
Página 40 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
CLIENTES El sistema operativo que se va a utilizar para los clientes va a ser Debian Wheezy para facilitar la instalación de los paquetes más actuales. Los clientes, al arrancar por red, utilizarán la imagen del S.O que le hayamos indicado durante la configuración del mismo. Una vez se instale el sistema operativo de los clientes lo siguiente que tenemos que hacer es configurar algunos paquetes, para permitir la autenticación mediante LDAP. Para instalar un sistema operativo mediante la red basta con seleccionar en la BIOS cómo primera opción de arranque, el arranque por red, esto claro está, debemos hacerlo en un equipo cliente y dentro de la misma red del servidor DRBL, en mi caso la 192.168.1.0 /24. Cómo esto es sólo un prototipo se ha creado una máquina virtual con VirtualBox en mi ordenador personal, se le configura el arranque sólo por red la primera vez, para que el cliente cargue el sistema operativo servido por el DRBL mediante DHCP. Para realizar esta configuración en VirtualBox basta con seleccionar la máquina virtual en concreto > Configuración > Sistema > en “ Orden de arranque ”, elegimos como primera opción “ Red ” (podemos movernos con las flechas de la derecha para ordenar las opciones). Después de estos sencillos pasos nos quedará algo así:
Página 41 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Y posteriormente Aceptamos los cambios e iniciamos la máquina virtual. Si se da el caso de que queréis probar con un equipo físico, accediendo con la tecla de acceso a la BIOS (F12, Supr, F1, F2 … etc, depende de la placa base), la configuración que debe quedar es algo parecido a esto:
Página 42 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Posteriormente se iniciará el sistema mediante la red y cargará el menú de arranque del DRBL.
Página 43 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Sea cual sea la opción elegida, si estamos en la misma red y no hemos cometido ningún fallo con los pasos anteriores el sistema operativo empezará a cargar y se procederá con la instalación. Este paso, para no alargar más el proyecto, no se explicará, ya que no es necesario. En este enlace podemos encontrar un manual para instalar un sistema operativo Debian Wheezy.
Integración de los clientes con LDAP En sistemas operativos basados en Ubuntu, es necesario ajustar el comportamiento de los servicios NSS y PAM, para ello lo primero que tenemos que hacer es instalar los siguientes paquetes: ● libnssldap ● libpamldap ● ldaputils
Para instalar los paquetes en una sola orden ejecutamos el siguiente comando:
#aptget install libnssldap libpamldap ldaputils y Durante el proceso de instalación se ejecutará un proceso para configurar ldapauthconfig.
Página 44 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
En el primer paso, nos solicita la dirección URI del servidor LDAP. En el caso de la configuración para este proyecto, escribiremos la dirección IP del servidor y sustituiremos el protocolo ldapi:/// por ldap://, quedando de la siguiente manera en mi caso: ldap://192.168.1.90 En el siguiente paso tenemos que poner el nombre global único de nuestro servidor LDAP, dicho nombre para este proyecto es: dc=netphoenix,dc=ex . Posteriormente le tenemos que indicar el número de la versión de LDAP que utilizaremos, elegimos la 3 . A continuación, indicaremos si las utilidades que utilicen PAM deberán comportarse del mismo modo que cuando cambiamos contraseñas locales. Esto hará que las contraseñas se guarden en un archivo independiente que sólo podrá ser leído por el superusuario. Elegimos Sí y Aceptamos . Después, el sistema nos pregunta si queremos que sea necesario identificarse para realizar consultas en la base de datos de LDAP. Elegimos No y pulsamos Aceptar .
Página 45 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Ya sólo nos queda indicar el nombre de la cuenta LDAP que tendrá privilegios para realizar cambios en las contraseñas. Para la configuración de este proyecto quedará de la siguiente forma: cn=admin,dc=netphoenix,dc=ex Por último nos pide introducir la contraseña de la anterior cuenta para terminar. Si hemos hecho las cosas bien no debería dar ningún error, si por el contrario se da el caso de que haya errores podemos volver a configurar todo de nuevo con el comando: #dpkgreconfigure ldapauthconfig Para terminar de integrar a los equipos clientes con LDAP tenemos que editar 3 ficheros: ● /etc/nsswitch.conf ● /etc/pamd/commonpassword ● /etc/pamd/commonsession En el archivo /etc/nsswitch.conf se incluyen las fuentes desde las que se obtiene la
Página 46 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
información del servicio de nombres en diferentes categorías y en qué orden. Cada categoría de información se identifica bajo un nombre. Editamos el fichero y el aspecto será similar a este:
El archivo /etc/pam.d/commonpassword proporciona un conjunto común de reglas PAM para la comprobación de contraseñas. En particular, la línea 26 contiene la opción use_authtok, que impide utilizar un segundo método de autenticación cuando ya ha sido aplicado otro anterior, aunque éste haya sido insatisfactorio. Para evitar este comportamiento, deberemos eliminar la opción use_authtok de la citada línea 26 del archivo. Dado que en este caso el archivo también está construido con texto plano, volveremos a hacer uso de un editor de textos con privilegios de administración.
Página 47 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
En la ventana del editor, localizamos la línea 26 y comprobamos que contiene el argumento use_authtok y posteriormente eliminamos esta línea o bien la comentamos anteponiendo una almohadilla delante ( # ). Para abrir el editor directamente sobre esta línea en concreto e ir más rápido ejecutamos el comando “# nano +26 /etc/pam.d/commonpassword ”. El archivo /etc/pam.d/commonsession ofrece un conjunto de reglas PAM para el inicio de sesión, tanto si éste es interactivo como si es no interactivo. Aquí será donde indiquemos que se debe crear un directorio home durante el primer inicio de sesión, también para los usuarios autenticados mediante LDAP. Este comportamiento lo conseguiremos añadiendo al final del archivo la siguiente línea: session optional pam_mkhomedir.so skel=/etc/skel umask=077 Una vez completados los pasos anteriores, ya estamos listos para activar el servicio libnssldap . Sin embargo, para lograrlo necesitaremos instalar el programa sysvrcconf , que se encarga, precisamente, de esta labor. Ejecutamos por tanto: #aptget install sysvrcconf
Página 48 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez finalice la instalación del paquete sólo nos queda activar el servicio libnssldap, esto se realiza mediante el comando: #sysvrcconf libnssldap on Posteriormente reiniciamos el equipo para que se apliquen los cambios.
Perfiles móviles de usuarios Antes de empezar a configurar nada hay que recalcar que este paso se debe hacer después de haber configurado correctamente el servidor NAS . Una vez hecho este paso lo que vamos a hacer es crear una carpeta en cada cliente, la cual, para este proyecto, se llamará “ perfiles ”.Dentro de esta carpeta habrá dos subcarpetas, una de nombre “ empleados ” y otra de nombre “ jefes ”, en dichas carpetas montaremos la carpetas compartidas por el servidor NAS, de tal manera que cuando un usuario inicie sesión por primera vez, su directorio personal se creará dentro de la carpeta “ /perfiles/empleados ” o “ /perfiles/jefes ”, que a su vez y de forma totalmente transparente para el usuario, se estará creando dentro de la carpeta compartida por el servidor NAS.
Página 49 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Creación de carpeta para perfiles móviles en el Cliente Una vez tengamos claro lo que queremos conseguir vamos a proseguir con el proceso. Lo primero que tenemos que tenemos que hacer es crear la carpeta en el cliente y darle todos los permisos, es decir: #mkdir /perfiles #chmod R 777 /perfiles #sudo mkdir /perfiles/empleados #sudo mkdir /perfiles/jefes El siguiente paso es editar el fichero /etc/fstab para montar la carpeta del servidor NAS en la nueva carpeta creada en el cliente, cuando inicie el sistema. Pero, para poder montar carpetas en red, necesitamos tener instalado el kernel nfs de servidor, para poder instalarlo y dejar el servicio activo basta con escribir: #aptget install nfskernelserver #/etc/init.d/nfskernelserver start Después de tener hecho el anterior paso lo único que tenemos que hacer es añadir dos líneas parecidas a las siguientes en el fichero /etc/fstab :
Página 50 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Ahora para montar las carpetas por primera vez introducimos en el terminal la orden “ #mount a ”, y ya tendremos las carpetas correctamente montadas.
Inicio de sesión de clientes en LDAP Antes de iniciar sesión es recomendable ejecutar el comando #getent passwd para comprobar que los usuarios creados anteriormente en el servidor LDAP, aparecen en el cliente y por lo tanto nos podemos loguear con ellos.
Si esto es así, ejecutamos el comando #login nombre_usuario y si las cosas han ido bien se nos creará el /home en el servidor NAS cómo configuramos anteriormente . Para verificar que podemos iniciar sesión con el cliente nos bastará con irnos al servidor NAS y veremos que efectivamente los directorios HOME han sido creados correctamente, podemos observar que esto es cierto en la siguiente imagen:
Página 51 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Para automatizar el proceso se ha optado por crear un script que nos ayudará a automatizar la instalación de paquetes y la creación de las carpetas y otros parámetros de configuración, no obstante, en algunos paquetes como los de LDAP se ejecutará el asistente de por defecto. El enlace para la descarga del shell script es el siguiente: Descargar script para Debian. Descargar script para Ubuntu.
FIREWALL Características técnicas Red Verde (LAN)
Red Naranja (DMZ)
Red Roja (WAN)
IP: 192.168.1.1
IP: 192.168.0.1
192.168.2.2
Mask: 255.255.255.0
Mask: 255.255.255.252
255.255.255.0
Sistema Operativo → Endian Firewall Tarjetas de red → x3 (3com 10/100MB) Memoria RAM→ 512MB Disco Duro → 80 GB IDE
Página 52 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Procesador → Intel Pentium III Marca → ASUS Modelo → Desconocido Reglas de acceso entre redes: * Red LAN: servicios privados sólo accesibles desde la LAN, debe comunicarse con la DMZ y con la WAN. * Red DMZ: servicios públicos accesibles desde la DMZ, LAN y WAN, no debe ver la LAN. * Red WAN: Debe acceder a los servicios públicos de la DMZ por el firewall (re direccionamiento de IP) y no debe ver la LAN. * Todas las redes deben salir a internet.
Instalación del sistema operativo Para realizar la instalación del sistema operativo se ha seguido un videotutorial que yo mismo grabé y está disponible en mi canal de Youtube , se puede visualizar directamente en el siguiente enlace: Ver tutorial de instalación Prácticamente lo único que hay que cambiar es la dirección IP que se nos solicita durante la instalación del propio sistema operativo. Por lo tanto para no alargar demasiado la memoria de este proyecto no explicaré esta parte, me centraré más exclusivamente en la configuración de rutas y reglas que tenemos que aplicar para que la red funcione tal y como se explica más arriba ( reglas de acceso entre redes ).
Página 53 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Configuración de reglas de acceso entre redes Para que nuestra red funcione correctamente es necesario aplicar una serie de reglas en el equipo que se encargará de ser el cortafuegos o firewall de nuestra red, dicho equipo permitirá la comunicación entre las redes, denegando claro está, el tráfico entre algunas de ellas por motivos explícitamente de seguridad. A continuación se explica con unos pantallazos cómo deben y tienen que ser configuradas dichas reglas en nuestro firewall. Paso 1. El primer paso que debemos configurar es el tráfico entre las zonas (redes), para ello nos tenemos que ir a la opción superior de “ Firewall ” y posteriormente buscar “ Tráfico entre zonas ”, una vez aquí, debemos eliminar las reglas que vienen por defecto para mayor seguridad, pinchando en el icono de la papelera que aparece a la parte derecha de cada regla. Una vez hecho esto, iremos añadiendo las diferentes reglas hasta que nos quede algo exactamente igual a esto:
Página 54 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Paso 2. El siguiente paso que debemos llevar a cabo es la configuración del tráfico enrutado de entrada, para ello dentro de la misma opción superior de antes, pinchamos en “ Redirección de puertos / NAT ” y posteriormente en “ Tráfico enrutado de entrada ”. Ahora tenemos que denegar el acceso desde la WAN a la LAN, para ello creamos una nueva regla y la dejamos así:
Página 55 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Paso 3. Ahora tenemos que configurar la “ Redirección de puertos/NAT de destino ”, quedando la siguiente configuración en nuestro firewall:
Página 56 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Paso 4. El último paso que debemos llevar a cabo es la configuración del “ NAT fuente ”, aplicando la siguiente configuración en nuestro servidor que actuará como cortafuegos:
Si hemos realizado bien todos los pasos anteriores y tenemos los equipos conectados correctamente, ya se podrán comunicar las redes, eso sí, con las reglas de restricción que le hemos aplicado para cada una. Para probar podemos hacer ping desde un equipo de la LAN (192.168.1.0/24) por ejemplo, al servidor web que se encuentra situado en la DMZ (192.168.0.2/30).
Página 57 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
SERVIDOR WEB Características técnicas Memoria RAM → 640 MB DISCO DURO → 80GB Procesador → Intel Pentium 4 Tarjetas de red → 1 Se encuentra en la DMZ Marca → Jump Modelo → Desconocido
Instalación y configuración de apache Una vez tenemos instalado el sistema operativo Ubuntu Server 12.04 i386 en nuestro equipo, lo siguiente es comenzar con la instalación de algunos paquetes. Para poder albergar una página web o servicio web en nuestro equipo es necesario contar con una serie de paquetes y librerías instaladas en el. Para este proyecto los paquetes que se van a instalar en este servidor serán los siguientes ( antes de instalar nada se recomienda ejecutar el comando sudo aptget update ): ● ● ● ● ● ● ●
apache2 apache2 mpm prefork mysql server php5 php5 mysql libapache2 mod php5 phpmyadmin
Página 58 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Para instalar estos paquetes de una sola vez basta con ejecutar el comando, sudo apache2
apache2mpmprefork
mysqlserver
php5
php5mysql
libapache2modphp5 phpmyadmin. Durante el proceso de instalación tendremos que configurar algunas cosas, como la contraseña de mysql. Es importante recordar este paso posteriormente poder configurar bien phpmyadmin (usuario y contraseña). Durante el proceso de instalación aparecerán varias pantallas, se ha optado por poner sólo las que se consideran de mayor importancia para una correcta configuración del servidor web. Configuración de mysqlserver
Página 59 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Configuración de phpmyadmin.
Página 60 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Una vez hemos instalado los anteriores paquetes tenemos que realizar unas modificaciones en el fichero de configuración /etc/php5/apache2/php.ini para que
Página 61 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
el servidor nos permita subir ficheros mayores al tamaño que permite por defecto ( 2 MB ), para ello editamos el fichero con nano, con privilegios de administrador y buscamos la línea “ upload_max_filesize ” y modificamos el valor antiguo por un tamaño más grande, en mi caso le pondré 100 MB . Cuando guardemos los cambios lo siguiente es comprobar que no hemos cometido ningún error en la sintaxis del fichero de configuración, para ello ejecutamos el comando “ sudo apache2ctl t ”, si no nos da errores lo siguiente es reiniciar el servicio, para ello tenemos tres formas: ● sudo /etc/init.d/apache2 restart ● sudo service apache2 restart ● sudo apache2ctl graceful → igual que los anteriores pero si hay un cliente conectado no cierra la conexión.
Instalación de sitio web en el servidor Lo único que nos queda es instalar un sitio web en el servidor, en el caso de este proyecto se va a instalar una copia de mi página web, es un blog basado en wordpress y la página original se encuentra en la siguiente dirección : http://www.elblogdeladministrador.com Cuando tengamos el sitio web elegido que queremos instalar (Wordpress, Joomla, Moodle, Drupal … etc), el siguiente paso es descomprimir el fichero zip (para este proyecto la copia de mi página web personal) en la dirección /var/www/ o en
Página 62 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
/var/www/html , esto depende de la versión de ubuntu o debian que estemos utilizando. También podemos crear una carpeta dentro de algunas de las dos rutas y descomprimir los ficheros ahí, eso ya es libre elección de cada uno. Una vez hecho esto el siguiente paso, si vais a instalar un wordpress, es crearnos una base de datos en nuestro servidor. Esto se realiza accediendo mediante el navegador de la siguiente forma: http://iponombreservidor/phpmyadmin , y posteriormente le damos a “ Bases de datos ”, le ponemos un nombre que posteriormente tenemos que recordar para la instalación y le damos a “ Crear ”. En este caso basta con importar la base de datos de mi sitio web real mediante un fichero sql y modificar los parámetros de configuración en el fichero wpconfig.php , por la seguridad de mi sitio web esto no lo mostraré. Si la instalación en cambio es limpia, durante el proceso tendremos que introducir el nombre de la base de datos, la dirección del servidor mysql (localhost) y el usuario y contraseña de mysql con permisos de administrador, por defecto es “ root ”. Antes de realizar el proceso de instalación es necesario asegurarnos que apache cuenta con los permisos necesarios para poder realizar las configuraciones oportunas, para ello le tenemos que cambiar el grupo y usuario de la carpeta donde vayamos a instalar nuestro sitio, esto se realizará de manera recursiva. Para los más despistados el usuario y grupo de apache es “ wwwdata ”, por lo tanto para
Página 63 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
cambiar el usuario y grupo a la carpeta de instalación ejecutamos sudo chown R wwwdata:wwwdata /rutacarpetasitioweb . Después de esto comenzamos con el proceso de instalación del sitio web, introduciendo los parámetros necesarios nombrados anteriormente, para ello pondremos la dirección ip del server web en el navegador y si lo hemos puesto en la raíz de apache ( /var/www o /var/www/html ), se iniciará un asistente para instalar el CMS elegido. Cuando finalice la instalación volvemos a poner la dirección IP del servidor y ya veremos nuestro sitio web.
COSTES DE IMPLANTACIÓN Dado que este proyecto se basa en la utilización de equipos obsoletos, se ha considerado oportuno realizar una hoja de cálculo para demostrar que es posible tener una red plenamente funcional sin gastarnos un dineral en ella, simplemente reutilizando hardware y utilizando software de código libre. Aunque tengamos que comprar algún tipo de material nuevo, el presupuesto para una pequeña o mediana empresa es casi de risa, a continuación muestro una captura de la hoja de cálculo dónde he ido recogiendo el material que he necesitado comprar, también el material prestado por el centro y una aproximación personal al valor real de dicha máquina (el servidor PROXMOX).
Página 64 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
MEDIOS UTILIZADOS Hardware PC Sobremesa ACER AX3950 Intel i3 8GB RAM 500GB RAM PC Sobremesa ASUS Pentium III 512 MB RAM 80GB RAM PC Sobremesa Pentium 4 640 MB RAM Cableado UTP CAT 5E 10/100 MB EQUIPO DE TESTEO DE CABLEADO DE RED MARCA EQUIP SWITCH CISCO CATALYST 2950 SERIES CABLE DE CONSOLA CISCO SERIE DB9 A RJ45 Conversor adaptador USB A RS232 Serial DB9 de 9 pines puerto + drivers + cable 20x CLAVIJA CONECTORES conector RJ45 DE RED Cisco Catalyst 2950 Series Switch WSC2950G48 48port 3Com 3C905CTXM PCI LAN 10/100 MBit NIC PC (x3) CDROM’s de instalación, imágenes ISO y USB Booteables Ordenador portátil ACER EXTENSA 5235 Intel Celeron 4GB RAM
Página 65 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Software PROXMOX 4.1 V.E. Ubuntu Server 14.04 amd64 → Servidor LDAP y Servidor DRBL+DHCP Ubuntu Server 14.04 i186 → Servidor WEB Debian Wheezy → Clientes DRBL Free NAS 9.2.1.9 RELEASE x86 → Servidor NAS Endian Firewall Community v3.0.0 → Firewall VirtualBox 4.3.36 → para virtualizar los clientes DRBL en mi portátil personal.
Página 66 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
BIBLIOGRAFÍA Instalación y configuración de OpenLDAP: ● Manual de la asignatura de ASO (OpenLDAP Parte I), del segundo año del Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en Red ● Autenticación LDAP ● Perfiles móviles mediante NFS Integración de los clientes con LDAP: ● Manual de la asignatura de ASO (OpenLDAP Parte II), del segundo año del Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en Red Instalación y configuración de FreeNAS: ● Manual de instalación y configuración de FreeNAS ● Integración con LDAP Instalación y configuración de DRBL+DHCP: ● Instalación y configuración de DRBL
Página 67 de 68
Miguel Carretas Perulero NETPHOENIX Red Empresarial LowCost
Instalación y configuración de SERVIDOR WEB: ● Documentación de la asignatura de IAW del segundo año del Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en Red. ○ Presentación (Bloque II) Instalación de servidores de aplicaciones web. ○ Ejercicios personales ● Securización de servidor web apache: ○ Guía inteco para la securización de Apache Web Server. Instalación de Endian Firewall: ● Presentación personal sobre Endian Firewall ● Vídeo explicativo sobre cómo instalar Endian Firewall en mi canal de YouTube. Configuración de FIREWALL: ● Manual de configuración de Endian Firewall
Página 68 de 68