PRACTICA
ASIR
MINI HOST
Jos Mara De la Roza Millnndice de contenidoCreacin y enrutamiento de maquinas virtuales.3DHCP6Servidor DNS8Instalacin de interfaz grfica en nuestro ServerDebian.11Servidor web Apache12Apache con modulo php16Modulo de autenticacion simple.18Modulo de estadsticas Apache 21Autenticacion digest en Apache.21Apache con SSL23Instalacin de ftp25FTP Usuario annimo27FTP: Usuario enjaulado28FTP mediante Filezilla.30FTP Usuarios que no se pueden conectar.31FTP Banner.32FTP con mascara.33Servidor de Correos34Instalacin del servidor de mensajera openfire.37Creacin de un usuario en openfire43Instalacin de telefona asterisk463xcphone para comunicarnos con asterisk47VoIP Buzon de voz.50
Creacin y enrutamiento de maquinas virtuales.
Creamos maquina una Debian con 2 adaptadores de red uno custom para la Intranet y otro bridged para Internet
Instalamos Debian 6.0La maquina se llama RouterDebian. El usuario y contrasea es jmdelaroza.Tras la instalacin, este es el estado inicial de mi maquina. Solo reconoce una tarjeta de red y si IP es dinmica.
Modificamos el archivo /etc/network/interfaces como aparece a continuacin convirtiendo la tarjeta eth1 como la tarjeta que nos dar acceso a Internet con IP dinmica y aadiendo la tarjeta eth0 como la tarjeta que nos dar acceso a la Intranet, con una IP esttica 10.10.10.1, en la red 10.10.10.0 con mascara de red 255.255.255.0 y direccin de broadcast 10.10.10.255
Reiniciamos el servicio de red mediante el comando /etc/init.d/networking restartLamentablemente las tarjetas siguen sin funcionar asi que levantamos ambas tarjetas mediante el comando ifup eth0 y ifup eth1 y ya tenemos ambas tarjetas funcionando.
A continuacin debemos descomentar la siguiente linea.
Esto,junto al comando /proc/sys/net/ipv4/ip_forward activa el reenvo de datos entre las dos tarjetasPara que el cambio tenga efecto ejecutamos el comando sysctl -p
Para configurar el servicio NAT en nuestra maquina con Linux aadimos dos reglas al firewall:iptables -P FORWARD ACCEPTiptables --table nat -A POSTROUTING -o eth1 -j MASQUERADE
Para que estas reglas sobrevivan reboot, las tenemos que aadir tambin a /etc/rc.local
OJO: No olvidar escribirlas encima de exit 0, si no, al reiniciar nuestra maquina no enrutar.
DHCP
A la hora de configurar el servicio DHCP, cuando intent instalar ISC-SERVER , Debian no me permita bajrmelo. Tuve que entrar en /etc/apt/sources.list y agregar los repositorios oficiales que no venan por defecto:
deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-freedeb-src http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
A continuacin lo instalamos mediante el comando apt-get install isc-dhcp-server y modificaremos los archivos /etc/default/isc-dhcp-server para que sepa que interfaz hace de servidor DHCPy el archivo /etc/dhcp/dhcpd.conf para indicarle la red en la que tiene que trabajar, la mascara de red, el intervalo de direcciones con el que trabajar, la puerta de enlace, la direccin del servidor DNS y autorizamos para que la configuracin del servidor de DHCP sea concluyente y los clientes mal configurados que sean detectados por el servidor, cambien su configuracin.
Ademas como nuestro servidor va a tener IP fija, lo indicamos tambin en este archivo aadiendo lo siguiente
Vemos el resultado
Servidor DNS
Instalamos el programa bind9 mediante el comando apt-get install bind9 y lo configuramos entrando en /etc/bind9/named.conf.options
Aqu van los servidores DNS que nos interesen (en mi caso solo aad el de Google).
Configuramos ahora nuestro archivo /etc/bind/named.conf.local para aadir donde buscar los archivos donde se encuentran los registros del dominio asir.com (zona directa e inversa).
Una vez hecho esto copiamos el archivo db.local (para usarlo de plantilla) y lo renombramos db.directa. Aqui introducimos nuestro nombre de dominio (asir.com) ademas de los nombres y direcciones de nuestros distintos servidores.
Hacemos lo mismo con la zona inversa con el archivo db.127 y renombrado db.inversa.
Modificamos tambin el archivo /etc/resolv.conf para que use como dns nuestro servidor.
Para que no haga falta aadir escribir el FQDN cada vez que queremos acceder a uno de los servidores, volveremos a modificar el archivo/etc/dhcp/dhcpd.conf
Finalmente reiniciamos tanto el servicio dns con /etc/init.d/bind restart como el servicio dhcp con services isc-dhcp-server restart.
Ahora vamos a comprobar que todo funciona. Empezamos comprobando que hemos escrito bien los archivos donde buscar las direcciones.
A continuacin instalamos nslookup en nuestro ServerDebian mediante el comando apt-get install dnsutils.
Comprobamos que todo funciona desde el servidor con nslookup
Finalmente probamos a hacer ping desde un cliente XP
Instalacin de interfaz grfica en nuestro ServerDebian.
Aadimos los repositorios oficiales como antes.A continuacin instalamos la interfaz gnome mediante el comando aptitude install xorg xserver-xorg-core gnome-core gdm y reiniciamos el sistema.
Servidor web Apache
Primero nos iremos a nuestro RouterDebian y en el archivo db.directa aadimos un alias para nuestro servidor web
Vamos ahora a nuestro ServerDebian e instalamos el paquete apache mediante el comando apt-get install apache2
Cuando termino de instalarlo e intento arrancar el sistema con apache2ctl restart me da un error asi que entro en el archivo /etc/hosts y lo modifico aadiendo la FDQD de nuestra maquina y su direccion IP y ademas comentaremos la linea que nos daba problemas.
Como vemos Apache funciona (la pagina It works se nos crea en la carpeta var.www/index.php al instalar Apache).
Tambin podemos probarlo desde alguno de los ordenadores dentro de la red
Podemos comprobar como Apache esta corriendo con el comando ps -ef | grep apache y ademas vemos que los usuarios de los procesos son root y www-data.
Podemos ver los mdulos descargados
Y los sitios activos
Probamos Apache sin virtual hosting
Ahora vamos a mapear el puerto 80 en nuestro router aadiendo una entrada de iptables en el archivo rc.local
Nos conectamos ahora desde nuestro anfitrin a nuestra web Apache
Apache con modulo phpEmpezamos por convertir nuestro index en una pagina php
Pero como podemos observar el modulo php esta cargado pero no habilitado.
Al intentar entrar en la pagina, en vez de interpretar el archivo php lo que hace es descargarlo
Lo que tenemos que hacer es descargar el modulo mediante el comando a2enmod y el nombre del modulo.
Ahora si interpreta el archivo
Modulo de autenticacion simple.Lo primero es comprobar si el modulo esta cargado o habilitado y como no lo esta lo cargaremos como hicimos anteriormente (a2enmod auth_basic).
Vamos a agregar ahora un usuario
A continuacin debemos configurar el archivo 000-default para indicarle que tipo de autenticacion es (ahora mismo es bsica), la base de datos donde se encuentran los usuarios y el nombre del usuario.
Reiniciamos Apache (como siempre que cargamos un modulo) mediante service apache2 reload.
Intentamos entrar de nuevo a nuestra pagina web y esta vez nos pide contrasea y usuario
Metemos los datos vistos anteriormente (usuario1 como usuario y contrasea).
Y ya podemos entrar en la pagina de nuevo
Modulo de estadsticas Apache
Este modulo me venia ya cargado por defecto, tan solo tecleamos en el navegador server-status tras la ip y nos aparece una pagina con estadsticas sobre el trafico de mi pagina.
Autenticacion digest en Apache.
Lo primero sera cargar el modulo digest ( y como no, recargar Apache, como siempre).
Vamos a crear un usuario en la base de datos de digest mediante el comando htdigest -c usuarios_digest.db asir.com user (user es el usuario y la contrasea). Ojo. Es importante poner el nombre de dominio de nuestro Mini host (yo me confund y puse otro dominio y no haba manera de autenticarse).
Vamos a nuestro fichero de configuracin sites-enabled/default y lo modificamos poniendo el nombre de dominio, el tipo de autenticacion y decirle donde esta la base de datos con los usuarios que se podrn autenticar (aqu de nuevo insisto, hay que poner el nombre de dominio de nuestro server porque si no no funcionar).
Intentamos entrar con el nuevo usuario y efectivamente nos muestra la pagina
Apache con SSL
Vamos a cargar ahora el modulo de autenticacion SSL. Como siempre nos vamos a mods-available y ejecutamos el comando a2enmod seguido del nombre del modulo. Recargamos nuestro servicio Apache para que surja efecto.
Apache ya trae por defecto un sitio con certificados y llaves y es el que vamos a usar nosotros. Cargamos este sitio y recargamos de nuevo Apache.
Como lo vamos a probar desde nuestro anfitrin tenemos que mapear el puerto https (443) en nuestro ruter.
Cuando intentemos acceder desde nuestro ordenador nos aparecer un aviso sobre la seguridad del certificado. Damos a continuar.
Efectivamente la pagina carga.
En el archivo de configuracin de default-ssl podemos ver como el servicio ssl viene activado y las llaves que vienen por defecto ( y donde se guardan).
Instalacin de ftp
Instalamos el paquete vsftp
A continuacin ejecutamos el comando netstat -ln para ver si el servidor esta escuchando por el puerto 21 (tambin podemos ver que el 80 de Apache esta funcionando).
Vamos a modificar ahora el fichero vsftpd.conf para que nos permita logearnos de forma local y ademas tambin permitiremos la inclusin de usuarios annimos.
De nuevo volvemos a mapear puertos para poder acceder desde fuera.
Aqu podemos ver como desde el anfitrin nos conectamos por ftp al servidor.
Y tambin desde un cliente dentro de la red interna
FTP Usuario annimo
Ya que hemos habilitado el usuario annimo vamos a ingresar con el
Vamos a modificar nuestro fichero de configuracin vsftpd.conf ahora para que el usuario annimo no pueda entrar.
Reiniciamos el servicio una vez mas (como siempre que hagamos un cambio).
Efectivamente, el usuario annimo ya no puede logearse.
FTP: Usuario enjaulado
Vemos al conectarnos que el usuario jmdelaroza no esta enjaulado
Vamos al archivo etc/vsftpd.chroot_list y aadimos al usuario que vamos a enjaular.
A continuacin en nuestro archivo de configuracin de etc/vsftpd.conf descomentamos las lineas que habilitan el archivo anterior y que indican donde se encuentra.
Reiniciamos nuestro servicio con service vsftpd restart.Al ingresar de nuevo e intentar salirnos de la carpeta, aunque diga que lo hemos logrado con xito, vemos que seguimos en la misma carpeta (no pude poner un pantallazo mas grande pero se puede observar que los ltimos archivos de la carpeta anterior son los mismos que los de la carpeta actual una vez hemos salido de la carpeta).
FTP mediante Filezilla.
Vamos a crear un par de archivos en nuestra carpeta home para el usuario jmdelaroza
A continuacin nos vamos a nuestra maquina XP dentro de nuestra red interna y ejecutamos el agente Filezilla. En la parte superior debemos indicar la direccin de nuestro servidor, el nombre y contrasea del usuario y no hace falta escribir el puerto puesto que Filezilla se conectara por defecto a los puertos 21. Podemos ver como se conecta sin problemas y vemos los archivos creados. Ahora tan solo tenemos que arrastrarlos a la carpeta de nuestro ordenador donde queramos guardarlos.
FTP Usuarios que no se pueden conectar.
En el archivo etc/ftpusers podemos poner una lista de usuarios que no pueden conectarse al servicio ftp. Vamos a probarlo con el usuario jmdelaroza. Lo inscribimos en nuestra lista y reiniciamos el servicio como siempre.
Efectivamente jmdelaroza ya no se puede conectar.
Tras la prueba lo eliminamos de la lista y reiniciamos el servicio.
FTP Banner.
En nuestro archivo de configuracin vsftpd.conf descomentamos la linea del banner y escribimos uno adecuado.
Al reiniciar el servicio y conectarnos nos aparece.
FTP con mascara.
En nuestro archivo vsftpd.conf descomentamos la linea local_umask y le asignamos unos permisos de escritura y lectura para el propietario y de lectura para grupo y resto.
Como podemos observar se cumple.
Servidor de Correos
En nuestro servidor Debian instalamos el paquete de postfix mediante un apt-get install postfix y seguimos los pasos que nos va indicando el programa de instalacin. El nombre de nuestro sistema de correo sera el de nuestro servidor: ServerDebian.asir.com
Una vez instalado nos vamos al archivo de configuracin y nos aseguramos de que los nombres de dominio estn bien y las redes en las que vamos a trabajar.
Ahora instalaremos dovecot mediante el comando apt-get install dovecot-imapd dovecot-pop3d dovecot-common. Una vez instalado nos vamos a su archivo de configuracin y descomentamos la linea donde vienen los protocolos con los que puede trabajar nuestro correo.
Comprobamos que nuestro servidor esta escuchando por esos puertos:
El 110 es el puerto pop3, el 143 es el puerto imap entrante, el puerto 25 es el puerto smtp saliente y los puerto 993 y 995 son puertos SSL de imap y pop3 respectivamente.
Nos aseguramos de que el programa dovecot este funcionando
Enviamos un correo de prueba al usuario root y desde nuestro equipo anfitrin vemos que el correo llega
Instalacin del servidor de mensajera openfire.
Antes que nada necesitaremos instalar mysql, y phpmyadmin ademas de la plataforma de desarrollo open java (la versin 7 no me funciono asi que tuve que instalar la 6). Este ultimo se instala mediante el comando sudo apt-get install openjdk-6-jdk openjdk-7-jre
Necesitamos crear una base de datos para nuestro sistema de mensajera:
Es el momento de descargar el openfire mediante el comando wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_3_7_1.tar.gz y seguidamente lo descomprimimos mediante el comando tar -xvzf openfire_3_7_1.tar.gz
Actualizamos el esquema:
No hizo falta entrar en el archivo de configuracin de openfire para modificar la linea INSTALL4J_ADD_VM_PARAMS="-Xms512m -Xmx2048m" porque ya venia por defecto bien.Ahora iniciamos nuestro openfire
Vamos a crear un grupo y un usuario openfire en la base de datos.
Podemos observar como nuestro puerto 9090 esta a la escucha, este puerto es necesario para poder acceder a la consola web de administracin (podemos ver tambin que el puerto mysql 3306 esta abierto).
Ademas vamos a mapear el puerto 9090 para poder acceder mediante web desde fuera.
Entramos en la interfaz mediante web desde nuestro servidor indicando nuestra IP local y el puerto 9090. Una vez dentro elegimos idioma.
En el siguiente apartado introduciremos el dominio y los puertos para su administracin por consola
Nos pregunta como queremos realizar la conexin a la base de datos openfire y elegimos estndar.
En el siguiente apartado indicaremos donde se encuentra nuestra base de datos, y el usuario y contrasea
Tras esto, indicamos como queremos que se guarden los datos de grupos y usuarios.
Introducimos los datos del administrador.
Ya hemos terminado la instalacin del servidor.
Creacin de un usuario en openfire
Vamos a crear ahora un usuario
Ahora en nuestro anfitrin descargamos el programa spark para mensajera. Indicamos nuestra cuenta de usuario, contrasea y el servidor (en este caso el router que redirigir directamente al servidor una vez que mapeemos los puertos 5222 y el 5223 que es el seguro).
Vemos como se conecta un cliente desde la red externa (anfitrin) y otro desde la interna.
Instalacin de telefona asterisk
Instalamos el paquete asterisk mediante el comando wgethttp://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.19.1.tar.gz y lo descomprimimos con el comando tar-zxfv asterisk-1.8.19.1.tar.gz Seguidamente me met en el archivo de configuracin sip.conf en el que agregue dos extensiones para que se puedan comunicar entre ellas. Aqu hay que poner que el numero a marcar para conectarse con el, la contrasea, el puerto por el que conecta (es 5060 udp) y luego negamos todos los tipos de conexiones para mas tarde agregar solo el tipo de conexin que nos interese. Qualify se refiere a la latencia (necesita un mnimo de calidad para que el telfono acepte una llamada).
Ahora desde la terminal nos metemos en la consola de linea de comando con asterisk -vvvcUna vez dentro recargamos el archivo sip
De nuevo volvemos a mapear puertos (5060 udp como dijimos antes) para poder acceder desde fuera de nuestra red interna
3xcphone para comunicarnos con asterisk
Lo siguiente es descargarnos el programa 3cxphone en nuestros clientes para poder llamarnos entre nosotros. Una vez instalados toca configurarlos poniendo el nombre de usuario, numero de extensin, identificador, password y direccin del servidor (de nuevo, en nuestro anfitrin pondremos la direccin del router).
Lamentablemente el archivo de configuracin sip estaba mal y tuve que aadir que el tipo de host era dinmico y que los usuarios eran tipo friend.
Ademas, debemos modificar el archivo extensions.conf y aadir lo siguiente.
Desde la CLI podemos observar como alguien esta llamando y le llega a nuestro servidor (letras en amarillo, NOTICE).
Ahora tan solo tenemos que arrancar nuestros telfonos en ambos equipos y teclear el numero de extensin.
Desde la CLI podemos observar como alguien esta llamando y le llega a nuestro servidor (letras en amarillo, NOTICE).
VoIP Buzon de voz.
En nuestro archivo Sip.conf agregamos un mailbox (buzn de llamadas) en ambas extensiones.
Pero esto no es suficiente. Tambin tendremos que entrar en el archivo extesions.conf y bajo la linea de cada extensin, escribiremos que las llamadas que no se cojan tras n tonos vayan al buzon de voz por defecto de cada extensin (no es necesario escribir Exten en cada linea, basta con escribir same y la flechita).
Intente ejecutarlo as, pero segua sin funcionar as que tuve que modificar tambin el archivo voicemail.conf y escribir las siguientes lineas.
Finalmente hacemos la llamada y vemos desde la CLI como carga el buzn de voz
/
Top Related