Escenarios de las prácticas con OpenVPN
Transcripción
Escenarios de las prácticas con OpenVPN
Escenarios de las prácticas con OpenVPN Departamento de Sistemas Telemáticos y Computación (GSyC) http://gsyc.urjc.es Abril de 2013 GSyC - 2013 Escenarios de las prácticas 1 c 2013 GSyC Algunos derechos reservados. Este trabajo se distribuye bajo la licencia Creative Commons Attribution Share-Alike 3.0 GSyC - 2013 Escenarios de las prácticas 2 Escenarios de las prácticas con OpenVPN pc01, pc02 y pc03 serán máquinas virtuales de VirtualBox, todas ellas basadas en la misma imagen, que econtrarás en el laboratorio en /var/lib/vms/pcNN/pcNN.ova En estas máquinas, el usuario user con contraseña user puede ejecutar sudo Están preparadas para montar el directorio ~/Dropbox/pcNN del host en el directorio /media/nube del guest (pcNN será pc01, pc02 o, pc03, según corresponda) GSyC - 2013 Escenarios de las prácticas 3 Tendrás que editar las primeras 6 lı́neas del fichero /home/user/monta que encontrarás en pcNN #!/bin/bash #USUARIO= #Tu login en el host #HOST=epsilon01 #Dirección IP o nombre de tu host #HOME_REMOTO=/home/al-05-06/TULOGIN #PATH absoluto de tu home en el host #GUEST_NAME=pc01 #Nombre de este guest. P.e. pc01, pc02, etc #OPENVPN_SERVER=true # true si en este guest correrá el servidor. # Si vale otra cadena (o no definido), correrá el cliente ############################################################### Resultará, p.e. #!/bin/bash USUARIO=jperez HOST=epsilon01 HOME_REMOTO=/home/al-05-06/jperez GUEST_NAME=pc01 OPENVPN_SERVER=true Recuerda que en las asignaciones en bash no puede haber espacios ni a la izquierda ni a la derecha del signo de igual GSyC - 2013 Escenarios de las prácticas 4 Una vez editado, ejecútalo (como root) El script le cambia el nombre a la máquina (visto desde dentro de la máquina, no el nombre del guest en VirtualBox). Pero solo verás el prompt actualizado cuando abras una nueva sesión GSyC - 2013 Escenarios de las prácticas 5 En pcNN, los ficheros /etc/network/interfaces /etc/openvpn/server.conf y /etc/openvpn/client.conf y son enlaces simbólicos a ficheros del mismo nombre en /media/nube y por tanto ficheros en el directorio ~/Dropbox/pcNN del host El directorio tı́pico para guardar las claves de autenticación (tanto secreto compartido como X.509) serı́a /etc/openvpn, pero en las prácticas no usaremos este, sino /media/nube, para que también se almacen en bilo GSyC - 2013 Escenarios de las prácticas 6 Depuración de scen01 Primer escenario: 3 guest en 2 segmentos de red Objetivo: Hacer ping desde cualquier interfaz a cualquier interfaz Si tienes problemas, comprueba que: /media/nube esté correctamente montado en todas las máquinas Todos los interfaces estén levantados y con la dirección correcta pc02 se comporte como un router Las tablas de encaminamientos en las 3 máquinas sean correctas (para el camino de ida y para el de vuelta) GSyC - 2013 Escenarios de las prácticas 7 El cableado virtual es correcto: esto es, en VirtualBox has conectado todos los interfaces de red a la red correcta Los interfaces que comparten segmento de red no tienen direcciones MAC repetidas GSyC - 2013 Escenarios de las prácticas 8 Depuración de scen02 Segundo escenario: VPN mı́nima Objetivo: ping entre las direcciones internas de pc01 y pc03 Si tienes problemas, comprueba que: Lo que hiciste en scen01 sigue funcionando El demonio de OpenVPN está lanzado correctamente en cliente y servidor No has escrito mal el nombre de ninguna de las directivas en los ficheros de configuración No has confundido las direcciones del interior de la VPN con las del exterior Has indicado correctamente, en cliente y servidor, el path completo del fichero con el secreto compartido. Y que los ficheros están donde dices que están GSyC - 2013 Escenarios de las prácticas 9 No hay errores en los logs (ni del cliente ni del servidor) En el servidor, en el directorio /etc/openvpn el fichero server.conf es un enlace a un fichero del mismo nombre en /media/nube Y lo mismo en el cliente con client.conf Si esto no está bien es porque te has equivocado editando /home/user/monta Puedes arreglarlo creando los enlaces simbólicos a mano. Consulta la transparencia 59 de Shell I si no sabes. GSyC - 2013 Escenarios de las prácticas 10 Depuración de scen03 Tercer escenario: Certificados X.509, reparto automático de direcciones Objetivo: ping entre las direcciones internas de pc01 y pc03 Si tienes problemas, comprueba que: Lo que hiciste en scen02 sigue funcionando Has indicado correctamente, en cliente y servidor, el path completo de todos los certificados, claves y ficheros de configuración. Y que los ficheros están donde dices que están GSyC - 2013 Escenarios de las prácticas 11