Açıklama Yok

David 108fce94b1 setup user, daemons, repository. missing env(port) 10 yıl önce
roles 108fce94b1 setup user, daemons, repository. missing env(port) 10 yıl önce
scripts 37403aad29 nginx certbot 10 yıl önce
templates 5dabde348e rename 10 yıl önce
web edeeaae690 dont update port 10 yıl önce
README.md b77d63da3c db 10 yıl önce
add-senora.yml 108fce94b1 setup user, daemons, repository. missing env(port) 10 yıl önce
create-nginx.yml b20e9394f3 split+señora 10 yıl önce
create-senora.yml bfc72190b5 ufw 10 yıl önce
nginx_hosts.yml 4846a8e6c2 leo los host nginx de archivo externo 10 yıl önce
provision.yml fa804faaaf reestructuro 10 yıl önce

README.md

Planes


                              +-> | VMs(1)  | ---> | [ (usuario, puerto) ] |
internet ---> | nginx(1+) | --+-> | VMs(..) | ---> | [ (usuario, puerto) ] |
                              +-> | VMs(n)  | ---> | [ (usuario, puerto) ] |

nginx

Tiene que:

  • Crear una ruta subdominio <--> VM:Puerto
  • Conseguir certificado Let's encrypt
  • Renovar certificados

VMs(k)

Tiene que:

  • Tener distintos usuarios(unix) por cliente (señora), distintos $HOME con distintos puertos para backend.
  • Droppear TODO el trafico que no sea de nginx.
  • Backup? por proxy nginx?

Ansible

  • Crear VM nginx
    • DO VM + Agregar a lista de nginx
    • Instalar SSH, nginx, certbot
    • Configurar subdominios (DO) para señoras
    • Configurar subdominios (nginx) para señoras
    • Conseguir certificados para señoras
  • Crear VM(k) señora
    • DO VM + Agregar a lista de VMs existentes
    • Instalar SSH, python, pip
    • sacar passwd login de ssh
    • iptables/ufw que dropee todo el trafico que no sea ssh y que no sea de VM nginx
  • Asignar señora a VM
    • crear usuario señora, con HOME
    • asignarle un puerto disponible a la señora
    • Agregar (señora,VM,puerto) a lista de señoras

Ansible en orden de resolucion

  • Crear VM nginx
    • DO VM + Agregar a lista de nginx (requerido para IP en ufw, dns)
    • Instalar SSH, nginx, certbot
  • (Si es necesario) Crear VM(k) señora
    • DO VM + Agregar a lista de VMs existentes (requerido para dns, subdominio, certificado)
    • Instalar SSH, python, pip
    • sacar passwd login de ssh
    • iptables/ufw que dropee todo el trafico que no sea ssh y que no sea de VM nginx (sigue faltando obtener la whitelist)
  • Asignar señora a VM
    • crear usuario señora, con HOME
    • asignarle un puerto disponible (8000-8100) a la señora
    • Agregar (señora,VM,puerto) a lista de señoras
    • Configurar subdominios (DO) para señoras(http POST "https://api.digitalocean.com/v2/domains/davidventura.com.ar/records" type="A" name="senora" data="1.2.3.4" Authorization:"Bearer $DO_API_TOKEN")
    • Configurar subdominios (nginx) para señoras
    • Conseguir certificados para señoras

Listas/Base de datos

  • Lista de VMs nginx(id,ip)
  • Lista de VMs señoras (id, ip)
  • Lista de señoras (datos personales, VM-señora-id, usuario, puerto)