306 lines
14 KiB
Markdown
306 lines
14 KiB
Markdown
# Plan: Unión de pc-dasu0 al Dominio DASUTEN (P2601 Fase 6.1.B)
|
|
|
|
**Fecha:** 11 de marzo de 2026 (Actualizado: 16/03/2026)
|
|
**Autor:** Sistema ADN
|
|
**Versión:** 4.1
|
|
**Estado:** ⏳ EN EJECUCIÓN (Fase 1 - Normalización de Nombres)
|
|
**Proyecto:** [P2601 DASUTEN](../P2601_dasuten.md)
|
|
|
|
## 📋 Resumen Ejecutivo
|
|
|
|
Unir la PC física `pc-dasu0` (oficina DASUTEN) al dominio `dasuten.utnlr`. La infraestructura de soporte (DC, SQL, red) ya está operativa y validada con la VM de pruebas.
|
|
|
|
> **Fase 0 en curso:** Normalización de nombres de nodos para convención unificada.
|
|
|
|
**Nodos involucrados:**
|
|
|
|
| Nodo | Nuevo Nombre | Tipo | IP Interna | Tailscale | SSH 7022 | Estado |
|
|
|:-----|:-------------|:-----|:----------:|:---------:|:--------:|:------:|
|
|
| `dasu-srvv-dc` | (✅ antes dc-dasuten) | VM 100 (DC/DNS) | `10.0.100.10` | ✅ | ❓ Fallando | ✅ Renombrado |
|
|
| `dasu-srvv-sql` | (✅ antes sql-dasuten) | VM 101 (SQL) | `10.0.100.11` | ✅ | ✅ | ✅ Renombrado |
|
|
| `dasu-pcv` | (antes pcv-dasu0) | VM 102 (Test) | `10.0.100.12` | ❌ | ✅ | ✅ Renombrado |
|
|
| `dasu-pc0` | (antes pc-dasu0) | PC Física | `192.168.1.13` (DHCP) | ❌ offline | ✅ | ⏳ Por renombrar |
|
|
| `srv-dasu` | — | Hypervisor | `10.0.100.1` | ✅ (`100.112.46.104`) | ✅ | ✅ Operativo |
|
|
|
|
## 🔧 Topología de Red
|
|
|
|
```
|
|
[Internet] ← Router ISP → [srv-dasu (192.168.1.27)] ↔ [pc-dasu0 (192.168.1.13)]
|
|
│ │
|
|
│ NAT (10.0.100.1) │ Misma LAN física
|
|
▼ │
|
|
┌──────────────┐ │
|
|
│ 10.0.100.x │ │
|
|
│ dasu-srvv-dc │ Ruta DNS: │
|
|
│ (.10) [AD] │ ← ← ← ← ← ← ← ← ┘
|
|
│ dasu-srvv-sql│
|
|
│ (.11) [SQL] │
|
|
│ dasu-pcv │
|
|
│ (.12) [Test]│
|
|
└──────────────┘
|
|
```
|
|
|
|
**Conectividad de pc-dasu0 al dominio:**
|
|
- `pc-dasu0` y `srv-dasu` comparten router ISP → comunicación directa LAN (<2ms)
|
|
- `srv-dasu` actúa como subnet router Tailscale exponiendo `10.0.100.0/24`
|
|
- DNS del dominio (`10.0.100.10`) accesible via `srv-dasu` como gateway
|
|
|
|
## 🔒 Red Tailscale Unificada
|
|
|
|
**Cuenta:** `pcdasu0@frlr.utn.edu.ar` | **Gestión:** `./adn/tools/run tailscale`
|
|
|
|
| Nodo | Estado Tailscale | IP Tailscale |
|
|
|:-----|:----------------:|:------------:|
|
|
| `srv-ns8` | ✅ Activo (switch dual) | — |
|
|
| `srv-dasu` | ✅ Activo (subnet router) | `100.112.46.104` |
|
|
| `dasu-srvv-dc` | ✅ Instalado | — |
|
|
| `dasu-srvv-sql` | ✅ Instalado | — |
|
|
| `pc-dasu0` | ❌ Offline | `100.65.62.44` (anterior) |
|
|
|
|
## 📅 Fases de Implementación
|
|
|
|
### ✅ **FASE 1: Infraestructura y Conectividad** (EN CURSO)
|
|
|
|
> Toda la infraestructura de soporte está operativa. Incluyendo normalización de nombres.
|
|
|
|
#### 1.0 Normalización de Nombres
|
|
|
|
> Renombrar nodos para seguir convención unificada: `dasu-srvv-{rol}` y `dasu-pcv{n}` / `dasu-pc{n}`
|
|
|
|
| ID | Nodo Actual | Nuevo Nombre | Estado |
|
|
| :--- | :--- | :--- | :--- |
|
|
| 1.0.1 | `sql-dasuten` (VM 101) | `dasu-srvv-sql` | ✅ Completado (16/03) |
|
|
| 1.0.2 | `dc-dasuten` (VM 100) | `dasu-srvv-dc` | ✅ Completado (16/03) |
|
|
| 1.0.3 | `pcv-dasu0` (VM 102) | `dasu-pcv` | ✅ Completado (16/03) |
|
|
| 1.0.4 | `pc-dasu0` (PC Física) | `dasu-pc0` | ⏳ Pendiente |
|
|
|
|
**Procedimiento validado (sql-dasuten → dasu-srvv-sql):**
|
|
1. Desplegar clave RSA de `rmonla@srv-dasu` en `administrators_authorized_keys` (una vez, vía sshpass)
|
|
2. `Rename-Computer -NewName <nombre> -DomainCredential $cred -Force -Restart` (PowerShell EncodedCommand)
|
|
3. `sudo qm set <VMID> --name <nombre>` (Proxmox display name)
|
|
4. `git mv nodos/<viejo>.md nodos/<nuevo>.md` + actualizar contenido
|
|
5. Actualizar referencias en manifiesto y plan
|
|
6. Verificar: hostname, dominio, conectividad post-reinicio
|
|
|
|
#### Tarea 1.0.2: dc-dasuten → dasu-srvv-dc
|
|
|
|
> ⚠️ **Bloqueador:** SSH 7022 no accesible desde srv-dasu. Windows Firewall filtra el puerto.
|
|
|
|
**Opciones para desbloquear (evaluar en orden):**
|
|
|
|
| # | Opción | Método | Riesgo | Requiere |
|
|
| :--- | :--- | :--- | :--- | :--- |
|
|
| A | **qm guest exec** | Ejecutar comando via QEMU Guest Agent desde Proxmox | Bajo | GA instalado en VM |
|
|
| B | **Tailscale SSH** | Conectar vía IP Tailscale directa de dc-dasuten | Bajo | Tailscale activo y alcanzable |
|
|
| C | **Consola Proxmox** | Abrir consola noVNC y ejecutar manualmente | Nulo | Acceso web a Proxmox |
|
|
|
|
**Sub-tareas:**
|
|
|
|
| ID | Tarea | Estado |
|
|
| :--- | :--- | :--- |
|
|
| 1.0.2.a | Verificar si QEMU Guest Agent está instalado: `sudo qm agent 100 ping` | ❌ Falló (No instalado) |
|
|
| 1.0.2.b | Si GA activo → ejecutar `netsh advfirewall firewall add rule...` | ❌ Omitido |
|
|
| 1.0.2.c | Alternativa: probar SSH vía IP Tailscale directa | ❌ Falló (No registrado) |
|
|
| 1.0.2.d | **Alternativa 3:** Ejecutar comandos vía **WinRM** desde dasu-srvv-sql | ✅ Exitoso |
|
|
| 1.0.2.e | Abrir SSH 7022 Firewall vía WinRM `Invoke-Command` | ✅ Agregado |
|
|
| 1.0.2.f | El servidor SSHD no inicia (Broken AD permissions issue). Se operó el nodo enteramente por WinRM | ⚠️ Documentado |
|
|
| 1.0.2.g | Renombrar nodo vía `netdom computername` (Add + MakePrimary) sobre WinRM | ✅ Completado |
|
|
| 1.0.2.h | Actualizar Proxmox: `sudo qm set 100 --name dasu-srvv-dc` | ✅ Completado |
|
|
| 1.0.2.i | Limpiar alternate name: `netdom /remove` | ✅ Completado |
|
|
| 1.0.2.j | Actualizar ficha `nodos/dc-dasuten.md` → `nodos/dasu-srvv-dc.md` | ✅ Completado |
|
|
|
|
> ⚠️ **Precaución DC:** Al renombrar el Controlador de Dominio, verificar que los registros SRV de DNS se actualicen automáticamente (`_ldap._tcp.dasuten.utnlr`, `_kerberos._tcp.dasuten.utnlr`). Ejecutar `dcdiag /q` post-rename.
|
|
|
|
#### Tarea 1.0.3: pcv-dasu0 → dasu-pcv
|
|
|
|
| ID | Tarea | Estado |
|
|
| :--- | :--- | :--- |
|
|
| 1.0.3.a | Verificar SSH accesible desde srv-dasu (7022) | ✅ SSH probado |
|
|
| 1.0.3.b | Desplegar clave RSA vía sshpass (si no está desplegada) | ✅ Desplegada |
|
|
| 1.0.3.c | Rename-Computer -NewName dasu-pcv -Force -Restart | ✅ Completado |
|
|
| 1.0.3.d | Actualizar Proxmox: `sudo qm set 102 --name dasu-pcv` | ✅ Completado |
|
|
| 1.0.3.e | Actualizar ficha `nodos/pcv-dasu0.md` → `nodos/dasu-pcv.md` | ✅ Completado |
|
|
| 1.0.3.f | Verificar conectividad y actualización de DNS | ✅ Confirmado DNS |
|
|
|
|
#### Tarea 1.0.4: pc-dasu0 → dasu-pc0
|
|
|
|
> Requiere acceso físico o SSH/Tailscale funcional a la PC de la oficina.
|
|
|
|
| ID | Tarea | Estado |
|
|
| :--- | :--- | :--- |
|
|
| 1.0.4.a | Verificar conectividad (Tailscale o SSH directo) | ⏳ |
|
|
| 1.0.4.b | Renombrar equipo (PowerShell o GUI según acceso) | ⏳ |
|
|
| 1.0.4.c | Actualizar ficha `nodos/pc-dasu0.md` → `nodos/dasu-pc0.md` | ⏳ |
|
|
| 1.0.4.d | Verificar tras reinicio | ⏳ |
|
|
|
|
#### 1.1-1.13 Tareas de Infraestructura
|
|
|
|
- [x] **1.1** Diagnóstico de topología de red (IPs locales, subredes, latencia)
|
|
- [x] **1.2** Validar DNS: `10.0.100.10` resuelve `dasu-srvv-dc.dasuten.utnlr` ✅
|
|
- [x] **1.3** Conectividad directa LAN entre `pc-dasu0` ↔ `srv-dasu` (<2ms) ✅
|
|
- [x] **1.4** Instalar SSH 7022 en `pc-dasu0` via w-zombi ✅
|
|
- [x] **1.5** Migrar `srv-dasu` a red Tailscale `pcdasu0@frlr.utn.edu.ar` ✅
|
|
- [x] **1.6** Configurar NAT en `srv-dasu` → VMs con acceso internet ✅
|
|
- [x] **1.7** Backups VZDump de dasu-srvv-dc y dasu-srvv-sql ✅
|
|
- [x] **1.8** Instalar Tailscale en dasu-srvv-dc y dasu-srvv-sql ✅
|
|
- [x] **1.9** Obtener acceso sudo a `srv-dasu` ✅
|
|
- [x] **1.10** Verificar credenciales de dominio (`admindasu` en bóveda `candados`) ✅
|
|
- [x] **1.11** Documentar problemas de conectividad intermitente ✅
|
|
- [x] **1.12** Verificar SSH 7022 funcional en dasu-srvv-dc (SSHD roto y Firewall cerrado)
|
|
- [ ] **1.13** Reactivar Tailscale en `pc-dasu0`
|
|
|
|
### 🛠 **FASE 2: Preparación de pc-dasu0** (PRÓXIMA)
|
|
|
|
**Hito:** Configuración base lista para unión al dominio.
|
|
|
|
**Herramientas ADN:** `ssh <nodo> <cmd>`, `nodos info <nodo>`, `contexto <nodo>`
|
|
|
|
- [ ] **2.1** Verificar requisitos: Windows 10 (versión, updates, .NET Framework)
|
|
```powershell
|
|
# Via SSH o RustDesk
|
|
systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
|
|
```
|
|
- [ ] **2.2** Configurar red de `pc-dasu0`:
|
|
- **DNS Primario:** `10.0.100.10` (dasu-srvv-dc, via ruta a srv-dasu)
|
|
- **DNS Secundario:** `8.8.8.8`
|
|
- **Suffix DNS:** `dasuten.utnlr`
|
|
- **Gateway:** Router ISP local (default)
|
|
- [ ] **2.3** Agregar ruta estática a `10.0.100.0/24` via `srv-dasu` (192.168.1.27)
|
|
```powershell
|
|
route add 10.0.100.0 MASK 255.255.255.0 192.168.1.27 -p
|
|
```
|
|
- [ ] **2.4** Validar conectividad a puertos de dominio:
|
|
```powershell
|
|
Test-NetConnection -ComputerName 10.0.100.10 -Port 389 # LDAP
|
|
Test-NetConnection -ComputerName 10.0.100.10 -Port 636 # LDAPS
|
|
Test-NetConnection -ComputerName 10.0.100.10 -Port 3268 # Global Catalog
|
|
Test-NetConnection -ComputerName 10.0.100.10 -Port 445 # SMB
|
|
```
|
|
- [ ] **2.5** Verificar resolución de nombres: `nslookup dasu-srvv-dc.dasuten.utnlr`
|
|
- [ ] **2.6** Configurar firewall local (permitir puertos AD en subred `10.0.100.0/24`)
|
|
- [ ] **2.7** Crear backup de sistema y perfiles (Andrea/Romina)
|
|
- [ ] **2.8** Reactivar Tailscale con cuenta `pcdasu0@frlr.utn.edu.ar`
|
|
|
|
### 🔗 **FASE 3: Unión al Dominio**
|
|
|
|
**Hito:** `pc-dasu0` unida exitosamente a `dasuten.utnlr`.
|
|
|
|
- [ ] **3.1** Ejecutar unión al dominio:
|
|
```powershell
|
|
Add-Computer -DomainName "dasuten.utnlr" -Credential DASUTEN\admindasu -Restart
|
|
```
|
|
- [ ] **3.2** Verificar nombre en dominio: `pc-dasu0.dasuten.utnlr`
|
|
- [ ] **3.3** Reiniciar y validar login con cuenta de dominio
|
|
- [ ] **3.4** Verificar membresía en grupos AD
|
|
- [ ] **3.5** Aplicar GPOs básicas del dominio
|
|
|
|
### 👥 **FASE 4: Migración de Perfiles y Cierre**
|
|
|
|
**Hito:** Sistema en producción estable.
|
|
|
|
- [ ] **4.1** Migrar perfiles locales (Andrea/Romina) a cuentas de dominio
|
|
- [ ] **4.2** Configurar mapeo de unidades de red
|
|
- [ ] **4.3** Verificar acceso al sistema DASUTEN desde dominio
|
|
- [ ] **4.4** Monitorear estabilidad 48hs (conectividad, autenticación, GPO)
|
|
- [ ] **4.5** Actualizar ficha `nodos/pc-dasu0.md` con estado final
|
|
- [ ] **4.6** Registrar hitos en DB: `./adn/tools/run db hito:crear`
|
|
|
|
## 🚨 Procedimientos de Rollback
|
|
|
|
| Escenario | Acción |
|
|
|:----------|:-------|
|
|
| Fallo en unión | Desunir con credenciales locales, restaurar DNS original |
|
|
| Conectividad rota | Activar Tailscale como ruta alternativa, diagnosticar LAN |
|
|
| Perfiles perdidos | Restaurar desde backup pre-unión (Fase 2.7) |
|
|
| DC inaccesible | Revertir a `pcv-dasu0` (VM) para operaciones críticas |
|
|
|
|
## 🔧 Notas Técnicas
|
|
|
|
### Puertos Críticos (AD DS)
|
|
| Puerto | Protocolo | Servicio |
|
|
|:-------|:----------|:---------|
|
|
| 389/636 | TCP | LDAP/LDAPS |
|
|
| 3268/3269 | TCP | Global Catalog |
|
|
| 445 | TCP | SMB |
|
|
| 135, 137-139 | TCP/UDP | NetBIOS/RPC |
|
|
| 123 | UDP | NTP |
|
|
| 88 | TCP/UDP | Kerberos |
|
|
|
|
### Dependencias
|
|
|
|
1. **Router ISP:** Comunicación LAN entre `pc-dasu0` ↔ `srv-dasu`
|
|
2. **NAT srv-dasu:** Ruta `pc-dasu0` → `10.0.100.0/24` via `192.168.1.27`
|
|
3. **dasu-srvv-dc operativo:** DNS + AD DS funcional
|
|
4. **Credenciales:** `DASUTEN\admindasu` (bóveda: `candados`, clave: `admindasu`)
|
|
5. **Sincronización NTP:** Entre todos los nodos del dominio
|
|
|
|
### Herramientas ADN Disponibles
|
|
|
|
```bash
|
|
# Diagnóstico y contexto
|
|
./adn/tools/run nodos info pc-dasu0
|
|
./adn/tools/run contexto dasu-srvv-dc
|
|
./adn/tools/run ssh srv-dasu "ping -c3 10.0.100.10"
|
|
|
|
# Registro de progreso (DB-First)
|
|
./adn/tools/run db evento:crear --nodo pc-dasu0 --titulo "Título" --inicio HH:MM
|
|
./adn/tools/run db evento:listar --desde FECHA --detalle
|
|
|
|
# Verificación
|
|
./adn/tools/run salud --dashboard
|
|
```
|
|
|
|
## 📊 Métricas de Éxito
|
|
|
|
| Métrica | Objetivo |
|
|
|:--------|:---------|
|
|
| Conectividad LAN | >99% uptime `pc-dasu0` ↔ `srv-dasu` |
|
|
| Conectividad dominio | >95% uptime `pc-dasu0` → `dasu-srvv-dc` |
|
|
| Login dominio | <15 segundos |
|
|
| Latencia LAN | <5ms |
|
|
| Estabilidad post-unión | 0 incidentes críticos en 72hs |
|
|
| Perfiles migrados | Sin pérdida de datos |
|
|
|
|
## 📚 Referencias
|
|
|
|
1. [Proyecto P2601 DASUTEN](../P2601_dasuten.md)
|
|
2. [Nodo: pc-dasu0](../../../nodos/pc-dasu0.md)
|
|
3. [Nodo: dasu-pcv](../../../nodos/dasu-pcv.md) *(VM referencia, ya unida al dominio)*
|
|
4. [Nodo: dasu-srvv-dc](../../../nodos/dasu-srvv-dc.md)
|
|
5. [Nodo: srv-dasu](../../../nodos/srv-dasu.md)
|
|
6. [Plan 06.01: Red srv-dasu](P2601.06.01_Red-SrvDasu.md)
|
|
|
|
---
|
|
|
|
## 📋 Historial de Sesiones
|
|
|
|
### 16/03/2026 — Sesión de Seguimiento (Mañana)
|
|
- ✅ Inicio de jornada remota 10:00-10:01 (#1104)
|
|
- ✅ Verificación SSH dc-dasuten: puertos SSH no accesibles desde srv-dasu (probable filtro Windows Firewall)
|
|
- ✅ Clave RSA generada en srv-dasu (rmonla) y desplegada en sql-dasuten (#1117)
|
|
- ✅ **Hostname sql-dasuten → dasu-srvv-sql** completado: Rename-Computer + Proxmox + ficha (#1117)
|
|
- ✅ **Hostname dc-dasuten → dasu-srvv-dc** completado: netdom vía Invoke-Command (WinRM) desde dasu-srvv-sql porque el SSH Server estaba roto en el DC (#1118)
|
|
- ✅ **Hostname pcv-dasu0 → dasu-pcv** completado: Rename-Computer (via domain credential) + Proxmox + Clave RSA + DNS OK (#1119)
|
|
|
|
### 15-16/03/2026 — Sesión de Infraestructura (Madrugada)
|
|
- ✅ Backups VZDump de dc-dasuten (#1093) y sql-dasuten (#1094)
|
|
- ✅ Tailscale instalado en dc-dasuten (#1096) y sql-dasuten (#1097)
|
|
- ❌ VM proxy fallida (#1091) → Revertida (#1090, #1092)
|
|
- ✅ Acceso sudo a srv-dasu configurado (#1089)
|
|
- ⏳ SSH 7022 en dc-dasuten pendiente verificar (#1098)
|
|
|
|
### 15/03/2026 — Sesión Principal
|
|
- ✅ Herramienta SSH CLI creada (P2604-S11) y refactorizada (S12-S14)
|
|
- ✅ Diagnóstico remoto via SSH ADN (#1076)
|
|
- ✅ DNS validado: `10.0.100.10` resuelve dominio (#1083)
|
|
- ✅ NAT configurado, VMs con internet (#1081)
|
|
- ✅ README ADN actualizado con estructura real (#1080)
|
|
|
|
### 15/03/2026 — Análisis Inicial
|
|
- ✅ Análisis de plan AD-Join (#1082)
|
|
- ✅ Documentar problemas conectividad (#1086)
|
|
- ✅ Decisión: mantener subnet router + Tailscale directo en VMs (#1084-#1085)
|
|
|
|
### 11/03/2026 — Creación del Plan (v1.0)
|
|
- Creación inicial del plan con topología de red identificada.
|
|
- Identificación de comunicación directa LAN como estrategia primaria. |