by malambra

Categories

  • DevOps
  • SysAdmin
  • docs

Tags

  • VPN
  • docker

Hace algún tiempo, trabaje junto con un compañero en un proyecto para levantar de forma rápida un servidor vpn, con administración web. El proyecto quedó bastante curioso, sobre todo por la facilidad de implantación de cara a ponerlo en marcha…

Introducción:

No había hecho mención a este proyecto y creo que es interesante que quede referenciado en el blog, por si puede ser de utilidad a alguien. Con el podemos en unos minutos tener montado un servidor VPN con una WUI para ser administrado.

Componentes

El proyecto consta de varios componentes, que realizan distintas funcionas.

  • nginx proxy manager: Este componentes es el encargado de gestionar los proxies inversos necesarios, asi como los certificados.

  • pi-hole: Servicio de DNS, y bloqueo de publicidad y rastreadores.

  • WireGuard: Servicio VPN

  • DuckDNS: Servicio de redirección DNS

Quick start

El proyecto esta disponible en(https://github.com/malambra/VPSHomelabs)[https://github.com/malambra/VPSHomelabs]

Nota: El proyecto esta preparado para usar una red 172.21.0.0/24

Nota: Es necesario tener un nombre DNS, para los certificado, para lo que puedes usar DuckDNS tal y como se explica en el README

Pasos:

1.- Editar el fichero .env

WG_HOST= # Dirección IP/DNS del servidor de Wireguard
WG_PASSWORD= # Contraseña del servidor de Wireguard 
PH_WEBPASSWORD= # Contraseña para acceder a la interfaz web de Pihole 
DD_SUBDOMAINS= # Subdominios de DuckDNS separados por coma
DD_TOKEN= # Token de DuckDNS

2.- Levantar el docker compose adjunto. (Es funcional tal y como está)

docker-compose up -d

3.- Realizar comfiguración en las WUI, tal y como se describe en el README del proyecto

Esquema

Como soy de la opinión que una imagen vale más que 1000 palabras incluyo en esquema de los componentes que también esta en el proyecto.

imagen