EN | ES

Una guía para el mantenimiento del servidor gateway

Esta página será una guía sobre cómo ser incorporado como mantenedor del servidor gateway.

La esperanza es que, al final de la guía, hayas configurado con éxito un nuevo servidor gateway, descomisionado el antiguo y te sientas seguro para ayudar a cuidar el servidor gateway colectivo y/o administrar el tuyo propio.

Antes de comenzar, asegúrate también de obtener los secretos y credenciales que necesitas. Envía un mensaje a alguien en Signal que ya los tenga, y te puede enviar un pastebin que se autodestruya después de leerlo, conteniendo las credenciales que necesitas.

Esquema de pasos

  1. Crea un nuevo droplet de Digital Ocean

    • Necesitarás una cuenta de Digital Ocean (esto es gratuito).
    • Deberías hacer esto como parte del equipo de Digital Ocean de gateway-coop (mensaje a alguien que ya esté en el equipo si necesitas ser agregado).
    • Este puede ser un droplet de Digital Ocean con recursos mínimos, lo más barato posible.
    • Elige Debian 12 como el sistema operativo.
    • Elige Nueva York como la ubicación.
  2. Accede a la línea de comandos de este nuevo droplet y ejecuta el script de instalación del servidor gateway.

    • Repositorio de Git: https://codeberg.org/notplants/tunnel-gateway-server
      • Desde el terminal del droplet, puedes usar la siguiente línea para ejecutar el script de instalación:
        • bash <(curl -fsSL https://codeberg.org/notplants/tunnel-gateway-server/raw/branch/main/setup.sh)
  3. Copia manualmente los datos de configuración del túnel desde el antiguo servidor gateway al nuevo en la ubicación correcta.

    • En Digital Ocean, accede a la consola del antiguo droplet. Luego ejecuta cat /etc/nginx/tunnel_map.conf. Copia la salida de este comando para ponerla en un nuevo archivo en el nuevo droplet mediante nano /etc/nginx/tunnel_map.conf.
    • Nota: Ten cuidado en este paso. No quieres perder ningún dato. (En el futuro: también podríamos considerar usar scp o alguna otra manera para automatizar esto).
    • Después de copiar esto, reinicia nginx y asegúrate de que sigue funcionando:
    nginx -t
    systemctl reload nginx
    
  4. En Digital Ocean, modifica la dirección IP reservada para que apunte al nuevo servidor gateway, en lugar del antiguo.

    • Esto está en la pestaña de red (a la izquierda), bajo IPs reservadas, luego puedes hacer clic en " reasignar" y asignarlo al nuevo droplet.
  5. Prueba que todo siga funcionando (excepto por https).

    • Visitando algunas de las URLs de los servidores de inicio y confirmando que siguen funcionando. También puedes revisar http://gateway.commoninternet.net/admin/ y ver que funciona sin el certificado (nota: si tu navegador se está redirigiendo automáticamente a https, esto causará un error; en este punto solo funcionará el enlace http://).
  6. Vuelve a ejecutar el script añadiendo el flag --https (para obtener certificados para gateway.commoninternet.net).

    cd /srv/tunnel-gateway-server
    ./setup.sh --https
    
  7. Prueba que todo sigue funcionando, visitando además https://gateway.commoninternet.net y viendo que todavía funciona.

  8. En Digital Ocean, destruye el droplet del antiguo servidor gateway.

Nota: Max se encargará de considerar la automatización de copias de seguridad a través de Git, para que la destrucción sea menos estresante.