Refactor(DIIAA): Evolución del ADN a dtic-DIIAA, renombrando scripts/ a automatizacion/ y actualizando manifiestos y URLs de servicios web

This commit is contained in:
Ricardo Monla
2026-03-10 21:42:37 -03:00
parent 188d31f611
commit 174ef7d53c
17 changed files with 25 additions and 25 deletions
+1 -1
View File
@@ -1 +1 @@
# dtic-srv-NS8 # dtic-DIIAA
+1 -1
View File
@@ -49,7 +49,7 @@ Los IDs y estados deben ser consistentes a través del tiempo. Los hipervínculo
- **Objetivo**: Asegurar la integridad y el historial de cambios del proyecto. - **Objetivo**: Asegurar la integridad y el historial de cambios del proyecto.
- **Directiva**: - **Directiva**:
- **Frecuencia**: Al finalizar una tarea significativa o conjunto de tareas relacionadas (hito). - **Frecuencia**: Al finalizar una tarea significativa o conjunto de tareas relacionadas (hito).
- **Alcance**: Todo cambio en `adn/`, `servicios/config`, `scripts/` y documentación `docs/`. - **Alcance**: Todo cambio en `adn/`, `servicios/config`, `automatizacion/` y documentación `docs/`.
- **Formato Mensaje**: `[Categoría] Descripción breve del cambio`. - **Formato Mensaje**: `[Categoría] Descripción breve del cambio`.
## 5. Evolución Progresiva (Mejora Continua) ## 5. Evolución Progresiva (Mejora Continua)
@@ -1,6 +1,6 @@
#!/usr/bin/env ruby #!/usr/bin/env ruby
# script: alta_nodo.rb # script: alta_nodo.rb
# Uso: ruby scripts/alta_nodo.rb <IP> <HOSTNAME> [USUARIO] # Uso: ruby automatizacion/alta_nodo.rb <IP> <HOSTNAME> [USUARIO]
# Descripción: Automatiza la configuración SSH y la documentación del ADN para un nuevo nodo. # Descripción: Automatiza la configuración SSH y la documentación del ADN para un nuevo nodo.
require 'fileutils' require 'fileutils'
@@ -21,8 +21,8 @@ user = ARGV[1] || 'rmonla'
unless ip unless ip
puts "❌ Error: Falta la IP." puts "❌ Error: Falta la IP."
puts "Uso correcto: ruby scripts/alta_nodo.rb <IP> [USUARIO]" puts "Uso correcto: ruby automatizacion/alta_nodo.rb <IP> [USUARIO]"
puts "Ejemplo: ruby scripts/alta_nodo.rb 10.0.10.205 rmonla" puts "Ejemplo: ruby automatizacion/alta_nodo.rb 10.0.10.205 rmonla"
exit 1 exit 1
end end
@@ -35,7 +35,7 @@ def verificar_autorizacion!
unless File.exist?(TOKEN_FILE) unless File.exist?(TOKEN_FILE)
puts "\n⛔ ACCESO DENEGADO: No se encontró token de autorización." puts "\n⛔ ACCESO DENEGADO: No se encontró token de autorización."
puts "🔒 Protocolo de seguridad activo. El Agente requiere permiso explícito." puts "🔒 Protocolo de seguridad activo. El Agente requiere permiso explícito."
puts "👉 Ejecuta: ruby scripts/candado.rb" puts "👉 Ejecuta: ruby automatizacion/candado.rb"
exit 1 exit 1
end end
@@ -46,7 +46,7 @@ def verificar_autorizacion!
if Time.now > expires_at if Time.now > expires_at
puts "\n⛔ ACCESO DENEGADO: El token de autorización ha EXPIRADO." puts "\n⛔ ACCESO DENEGADO: El token de autorización ha EXPIRADO."
puts "💀 Expiró a las: #{expires_at.strftime('%H:%M:%S')}" puts "💀 Expiró a las: #{expires_at.strftime('%H:%M:%S')}"
puts "👉 Ejecuta nuevamente: ruby scripts/candado.rb" puts "👉 Ejecuta nuevamente: ruby automatizacion/candado.rb"
exit 1 exit 1
end end
@@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
# Script: alta_nodo.sh # Script: alta_nodo.sh
# Uso: ./scripts/alta_nodo.sh <IP> <HOSTNAME> [USUARIO] # Uso: ./automatizacion/alta_nodo.sh <IP> <HOSTNAME> [USUARIO]
# Descripción: Automatiza la configuración SSH local y el despliegue de claves al nuevo nodo. # Descripción: Automatiza la configuración SSH local y el despliegue de claves al nuevo nodo.
IP=$1 IP=$1
@@ -10,8 +10,8 @@ USER_SSH=${3:-rmonla} # Por defecto usa 'rmonla' si no se especifica
# Validar argumentos básicos # Validar argumentos básicos
if [ -z "$IP" ] || [ -z "$NAME" ]; then if [ -z "$IP" ] || [ -z "$NAME" ]; then
echo "❌ Error: Faltan argumentos." echo "❌ Error: Faltan argumentos."
echo "Uso correcto: ./scripts/alta_nodo.sh <IP> <HOSTNAME> [USUARIO]" echo "Uso correcto: ./automatizacion/alta_nodo.sh <IP> <HOSTNAME> [USUARIO]"
echo "Ejemplo: ./scripts/alta_nodo.sh 10.0.10.205 srv-pmox4 rmonla" echo "Ejemplo: ./automatizacion/alta_nodo.sh 10.0.10.205 srv-pmox4 rmonla"
exit 1 exit 1
fi fi
@@ -20,7 +20,7 @@ echo -e "${YELLOW}[2/3] Aplicando configuraciones de servicios...${NC}"
# rm /etc/nginx/sites-enabled/default 2>/dev/null # rm /etc/nginx/sites-enabled/default 2>/dev/null
# Enlazar configs # Enlazar configs
CONFIG_DIR="/home/rmonla/Documentos/GitHub/dtic-srv-NS8/servicios/nginx/conf.d" CONFIG_DIR="/home/rmonla/Documentos/GitHub/dtic-DIIAA/servicios/nginx/conf.d"
ln -sf $CONFIG_DIR/*.conf /etc/nginx/conf.d/ ln -sf $CONFIG_DIR/*.conf /etc/nginx/conf.d/
echo -e "${YELLOW}[3/3] Iniciando servicio...${NC}" echo -e "${YELLOW}[3/3] Iniciando servicio...${NC}"
@@ -21,7 +21,7 @@ apt-get install -y certbot python3-certbot-nginx
echo -e "${YELLOW}[2/4] Activando configuración del dominio $DOMAIN...${NC}" echo -e "${YELLOW}[2/4] Activando configuración del dominio $DOMAIN...${NC}"
# Enlazar la nueva config si no existe # Enlazar la nueva config si no existe
ln -sf /home/rmonla/Documentos/GitHub/dtic-srv-NS8/servicios/nginx/conf.d/ns8.conf /etc/nginx/conf.d/ns8.conf ln -sf /home/rmonla/Documentos/GitHub/dtic-DIIAA/servicios/nginx/conf.d/ns8.conf /etc/nginx/conf.d/ns8.conf
echo -e "${YELLOW}[3/4] Verificando y Recargando Nginx...${NC}" echo -e "${YELLOW}[3/4] Verificando y Recargando Nginx...${NC}"
nginx -t && systemctl reload nginx nginx -t && systemctl reload nginx
@@ -2,16 +2,16 @@
# scripts/respaldar_configs.sh # scripts/respaldar_configs.sh
# Sistema de respaldo de configuraciones críticas para srv-NS8 # Sistema de respaldo de configuraciones críticas para srv-NS8
BACKUP_ROOT="/home/rmonla/Documentos/GitHub/dtic-srv-NS8/backups/configs" BACKUP_ROOT="/home/rmonla/Documentos/GitHub/dtic-DIIAA/backups/configs"
TIMESTAMP=$(date +%Y%m%d_%H%M) TIMESTAMP=$(date +%Y%m%d_%H%M)
LOG_FILE="/home/rmonla/Documentos/GitHub/dtic-srv-NS8/logs/backup_${TIMESTAMP}.log" LOG_FILE="/home/rmonla/Documentos/GitHub/dtic-DIIAA/logs/backup_${TIMESTAMP}.log"
RED='\033[0;31m' RED='\033[0;31m'
GREEN='\033[0;32m' GREEN='\033[0;32m'
NC='\033[0m' NC='\033[0m'
mkdir -p "$BACKUP_ROOT" mkdir -p "$BACKUP_ROOT"
mkdir -p "/home/rmonla/Documentos/GitHub/dtic-srv-NS8/logs" mkdir -p "/home/rmonla/Documentos/GitHub/dtic-DIIAA/logs"
echo -e "${GREEN}Iniciando respaldo de configuraciones...${NC}" | tee -a "$LOG_FILE" echo -e "${GREEN}Iniciando respaldo de configuraciones...${NC}" | tee -a "$LOG_FILE"
@@ -23,7 +23,7 @@ PATHS=(
"/home/rmonla/.config/rustdesk" "/home/rmonla/.config/rustdesk"
"/var/lib/tailscale" "/var/lib/tailscale"
"/etc/nginx" "/etc/nginx"
"/home/rmonla/Documentos/GitHub/dtic-srv-NS8/servicios/homepage/.env" "/home/rmonla/Documentos/GitHub/dtic-DIIAA/servicios/homepage/.env"
) )
for SRC in "${PATHS[@]}"; do for SRC in "${PATHS[@]}"; do
+1 -1
View File
@@ -23,4 +23,4 @@
## Acceso y Mantenimiento ## Acceso y Mantenimiento
- **Gestión**: SSH sobre Tailscale (IP `100.88.252.26`). - **Gestión**: SSH sobre Tailscale (IP `100.88.252.26`).
- **Dashboard**: `https://ns8.frlr.utn.edu.ar` (Homepage). - **Dashboard**: `https://ns8.frlr.utn.edu.ar` (Homepage).
- **Respaldo**: Git repository para documentación y scripts (`dtic-srv-NS8`). - **Respaldo**: Git repository para documentación y scripts (`dtic-DIIAA`).
+4 -4
View File
@@ -10,13 +10,13 @@ Este directorio contiene la configuración para el servidor web Nginx que actúa
- Entrada por IP Pública (`190.x`) vía Policy Routing. - Entrada por IP Pública (`190.x`) vía Policy Routing.
## Scripts de Gestión ## Scripts de Gestión
Los scripts operativos se encuentran en `../../scripts/`: Los scripts operativos se encuentran en `../../automatizacion/`:
1. **Instalación Básica**: `sudo ./scripts/instalar_nginx_simple.sh` 1. **Instalación Básica**: `sudo ./automatizacion/instalar_nginx_simple.sh`
- Instala Nginx y enlaza las configuraciones. - Instala Nginx y enlaza las configuraciones.
2. **Configuración de Red**: `sudo ./scripts/configurar_red_hibrida.sh` 2. **Configuración de Red**: `sudo ./automatizacion/configurar_red_hibrida.sh`
- Agrega IP Pública y reglas de enrutamiento con mecanismo de seguridad (Hombre Muerto). - Agrega IP Pública y reglas de enrutamiento con mecanismo de seguridad (Hombre Muerto).
3. **Seguridad SSL**: `sudo ./scripts/instalar_ssl.sh` 3. **Seguridad SSL**: `sudo ./automatizacion/instalar_ssl.sh`
- Instala Certbot y obtiene certificados para `ns8.frlr.utn.edu.ar`. - Instala Certbot y obtiene certificados para `ns8.frlr.utn.edu.ar`.
## Configuración de Sitios (`conf.d/`) ## Configuración de Sitios (`conf.d/`)
+1 -1
View File
@@ -1,5 +1,5 @@
# Archivo: apps.conf # Archivo: apps.conf
# Ubicación original centralizada: /home/rmonla/Documentos/GitHub/dtic-srv-NS8/servicios/nginx/conf.d/apps.conf # Ubicación original centralizada: /home/rmonla/Documentos/GitHub/dtic-DIIAA/servicios/nginx/conf.d/apps.conf
# Este bloque de NGINX maneja el servicio de APPs (TinyFileManager) # Este bloque de NGINX maneja el servicio de APPs (TinyFileManager)
location /apps/ { location /apps/ {
+1 -1
View File
@@ -1,5 +1,5 @@
# Archivo: bitacoras.conf # Archivo: bitacoras.conf
# Ubicación original centralizada: /home/rmonla/Documentos/GitHub/dtic-srv-NS8/servicios/nginx/conf.d/bitacoras.conf # Ubicación original centralizada: /home/rmonla/Documentos/GitHub/dtic-DIIAA/servicios/nginx/conf.d/bitacoras.conf
# Este bloque de NGINX maneja todos los endpoints de dtic-BITACORAs # Este bloque de NGINX maneja todos los endpoints de dtic-BITACORAs
# P2603 - dtic-BITACORAs API # P2603 - dtic-BITACORAs API
+1 -1
View File
@@ -1,5 +1,5 @@
# Archivo: homepage.conf # Archivo: homepage.conf
# Ubicación original centralizada: /home/rmonla/Documentos/GitHub/dtic-srv-NS8/servicios/nginx/conf.d/homepage.conf # Ubicación original centralizada: /home/rmonla/Documentos/GitHub/dtic-DIIAA/servicios/nginx/conf.d/homepage.conf
# Este bloque de NGINX maneja el sitio principal (Homepage) # Este bloque de NGINX maneja el sitio principal (Homepage)
location / { location / {
@@ -62,7 +62,7 @@
description: Scripts de despliegue description: Scripts de despliegue
- AI Secret Vault: - AI Secret Vault:
icon: si-rubyonrails # SimpleIcons icon: si-rubyonrails # SimpleIcons
href: "https://github.com/rmonla/dtic-srv-NS8/blob/main/scripts/secret_box.rb" href: "https://github.com/rmonla/dtic-DIIAA/blob/main/automatizacion/secret_box.rb"
description: AES-256-GCM Vault description: AES-256-GCM Vault
- Aplicaciones y Herramientas: - Aplicaciones y Herramientas: