Otra utilidad que quería darle a mi servidor casero era la de poder acceder a Internet de manera segura desde mi teléfono o desde mi portátil cuando estoy conectado a una red de la que no me fío, como la red wifi de un hotel o una cafetería. Por ello voy a crear una red privada virtual (VPN) que me permita navegar por redes no confiables de manera privada y segura, como si estuviera en mi red privada.
El tráfico se inicia en el servidor de la VPN y continúa su camino hacia el destino. Cuando se combina con conexiones HTTPS, esta configuración permite proteger los inicios de sesión y las operaciones que realizo por medios inalámbricos. También se podría usar para evitar censuras y restricciones geográficas, o proteger la ubicación y el tráfico de HTTP no cifrado contra la actividad de la red no confiable.
Voy a utilizar OpenVPN que es una solución de capa de conexión segura (SSL) de funciones completas y de código abierto que cuenta con una amplia variedad de configuraciones.
Primero creo el contenedor docker
de nombre openvpn-as
el fichero:
|
|
Lo siguiente es ponerlo en funcionamiento
|
|
Configuración de la aplicación
Una vez que el contenedor se ha puesto en marcha sin contratiempos puedo configurarlo entrando en la aplicación a través de su interface web desde https://DOCKER-HOST-IP:943/admin
.
Me identifico con el usuario “admin”
y la contraseña “password”
que son las credenciales asignadas por defecto.
Durante el primer inicio de sesión me aseguro de que la “Autenticación” en el interface web esté configurada como "Local"
en lugar de "PAM"
. Luego configuro las cuentas de usuario que necesito (me parece que solo deja 2) con sus contraseñas (las cuentas de usuario creadas bajo “PAM”
no sobreviven a la actualización o recreación del contenedor).
Creación de usuarios
- Creo otro usuario y lo configuro como administrador
- Inicio sesión como el nuevo usuario
- Elimino el usuario
"admin"
en la interfaz gráfica de usuario - Modifico el archivo as.conf en config / etc y reemplazo la línea
boot_pam_users. 0 = admin
conboot_pam_users.0 = nombreotrousuario
(esto solo debe hacerse una vez y sobrevivirá a la recreación del contenedor)
Dentro del menú de configuración en la opción “VPN settings”
la configuración la tengo así. No le he dado acceso a los clientes a mi red local 192.168.300.0
Dentro de “Network settings”
puedes configurar los parámetros de la red a tu gusto.
Me conecto con el cliente “usuariodocker”
a través de la dirección https://<<YourIpAddress>>:943
.
Me dirige a la siguiente página desde donde me puedo bajar el perfil del cliente.ovpn
Solo queda que lo agregue a la aplicación del teléfono inteligente.
Después de instalar mi servidor web y el proxy inverso voy a crear un Server Blocks
(virtualhost en Apache) en el servidor web Ngnix. En el alojaré un sitio web creado con WordPress al que accederé desde internet con el subominio de pruebas pruebas.misubdominio.duckdns.org
que he creado.
Recojo en este breve post un pequeño listado de comandos docker para trabajar con imágenes y contenedores.
Tengo un pequeño ordenador con varios servidores (Web, SQL, VPN, Nextcloud) al que voy a cambiar el disco duro. Después de barajar las distintas opciones disponibles, he decidido instalar Debian 10 server en el que por facilidad de mantenimiento quiero virtualizar todos estos servicios.
Voy a crear un proyecto con laravel a partir de otro alojado en un repositorio de Github.
Voy a crear una máquina virtual con Ubuntu Server 20.04 en VirtualBox donde instalaré todas las herramientas y servicios necesarios para el entorno de desarrollo con Laravel.