Infraestructura y Red:
- Tailscale v1.94.2 instalado en srv-dasu (IP: 100.116.210.36)
- Configurado como subnet router para 10.0.100.0/24
- Fix: Repositorios enterprise de Proxmox deshabilitados (.sources → .bak)
Despliegue del Sistema (pcv-dasu0):
- Transferencia SCP de runSysDasuten.zip via SSH puerto 7022
- Extracción en C:\Dasuten\runSysDasuten- Kermet.ini configurado: SERVER=sql-dasuten
- InstaladorComponentesKermet.exe (silent install)
- Fuentes TrueType registradas en Windows (Code39, I2OF5)
- Firewall TCP 1433 abierto en sql-dasuten
- Test-NetConnection: TcpTestSucceeded=True
- Login exitoso con usuario aalmiron ✅
ADN y Contexto:
- 05_ia.md: Regla 13 Auto-Contextualización Topológica
- 07_proyectos.md: Sección 'Topología y Red' obligatoria en manifiestos
- P2601_dasuten.md: Contexto de red documentado
- nodos/pcv-dasu0.md: Puerto SSH actualizado a 7022
Dashboard P2601:
- Hitos completados: 8 → 11 (P02.APP, NET01, TEST03)
- Progreso: 67% → 79%
- pcv-dasu0: Testing → Online
- Nuevo hito activo: UAT (verificación presencial)
Bitácoras y Documentación:
- Bitácora 04/03 y 05/03 completas
- Plan de despliegue en docs/plan/260305-1017
- Investigación de ingeniería inversa documentada
- ns8-candados: Instrucciones de uso para IA agregadas
- dtic-BITACORAs: CRUD completo, Dashboard P2601 integrado
Herramientas:
- w-zombi: Mejora anti-loop (max 5 ciclos)
- Payloads de despliegue SQL y sistema generados
151 lines
6.4 KiB
Markdown
151 lines
6.4 KiB
Markdown
# P2601 - Ingeniería Inversa: Sistema DASUTEN
|
|
|
|
> Documento técnico generado el 04/03/2026 a partir del análisis del directorio `dtic-APPs/temp/runSysDasuten/`.
|
|
|
|
## Resumen Ejecutivo
|
|
|
|
El **Sistema DASUTEN** es una aplicación de escritorio Windows desarrollada en **Visual FoxPro 9** sobre el framework propietario **"Kermet"**. Se conecta a **SQL Server** vía ODBC usando autenticación Windows. El ejecutable principal es `DasutenSQL.exe` y la configuración de conexión reside en `Kermet.ini`.
|
|
|
|
---
|
|
|
|
## Tecnología
|
|
|
|
| Componente | Detalle |
|
|
| :--- | :--- |
|
|
| **Lenguaje** | Visual FoxPro 9 (compilado a PE32 GUI Win32) |
|
|
| **Framework** | Kermet (propietario, `Kernel.dll` + `libgen.prg` + `libclas.prg`) |
|
|
| **Base de Datos** | SQL Server (instancia por defecto `MSSQLSERVER`) |
|
|
| **Conexión** | ODBC Driver `SQL Server` — Autenticación Windows Integrada |
|
|
| **Base** | `sysdasuten` |
|
|
| **Sincronización** | FTP + archivos DBF/ZIP empaquetados con PKZIP25 |
|
|
|
|
## Cadena de Conexión (`Kermet.ini`)
|
|
|
|
```ini
|
|
TIPOBASEDEDATOS=SQLServer
|
|
[INFORMIX]
|
|
DRIVER=INFORMIX 2.80 32 BIT
|
|
DATABASE=Sysacad
|
|
UID=informix
|
|
SERVER=utn
|
|
HOST=localhost
|
|
SERVICE=turbo
|
|
PROTOCOL=olsoctcp
|
|
[SQLSERVER]
|
|
DRIVER=SQL Server
|
|
UID=
|
|
ADDRESS=0
|
|
LOCKEO=0
|
|
SERVER=srvFENIX
|
|
DATABASE=sysdasuten
|
|
PWD=(cifrado binario)
|
|
```
|
|
|
|
### Campos Clave
|
|
|
|
| Campo | Valor Original | Valor Migración |
|
|
| :--- | :--- | :--- |
|
|
| `SERVER` | `srvFENIX` | `sql-dasuten` ← **Cambiar** |
|
|
| `DATABASE` | `sysdasuten` | `sysdasuten` (sin cambios) |
|
|
| `DRIVER` | `SQL Server` | `SQL Server` (sin cambios) |
|
|
| `UID` | *(vacío = Windows Auth)* | *(vacío = Windows Auth)* |
|
|
|
|
> [!IMPORTANT]
|
|
> El campo `SERVER` debe apuntar al hostname o IP del nuevo servidor SQL. Para la migración: `sql-dasuten` o `10.0.100.11`.
|
|
|
|
## Estructura del Directorio de Distribución
|
|
|
|
```
|
|
runSysDasuten/
|
|
├── Kermet.ini ← Configuración de conexión SQL (MODIFICAR)
|
|
├── registro.RKI ← Config sincronización (Instancia=30)
|
|
├── SysDasuten_Sincro.lnk ← Acceso directo de sincronización
|
|
├── khr / khw ← Archivos de control (vacíos)
|
|
├── Fonts/
|
|
│ └── Fonts/
|
|
│ ├── code39.ttf ← Fuente código de barras Code39
|
|
│ ├── I2OF5.TTF ← Fuente código de barras Interleaved 2 of 5
|
|
│ ├── I2OF5NT.TTF ← Variante I2OF5
|
|
│ └── PF_I2OF5_W.ttf ← Variante I2OF5
|
|
├── Sistema/
|
|
│ ├── DasutenSQL.exe ← Ejecutable principal (PE32 GUI)
|
|
│ ├── Kernel.dll ← DLL principal del framework Kermet
|
|
│ ├── eztw32.dll ← DLL de escaneo TWAIN
|
|
│ ├── gdiplus.dll ← GDI+ para gráficos
|
|
│ ├── Kermet.ini ← Copia de config (puede ser la efectiva)
|
|
│ ├── registro.RKI ← Config de sincronización
|
|
│ ├── PKZIP25.EXE ← Compresor para sincronización
|
|
│ ├── SysDasuten_Sincro.bat ← Bat de sincro FTP
|
|
│ ├── InstaladorComponentesKermet.exe ← Instalador dependencias
|
|
│ ├── VFP9Rerr.log ← Log de errores VFP
|
|
│ ├── logdasuten2.txt ← Log de sincronización FTP
|
|
│ ├── Manuales de Uso/ ← Documentación del sistema
|
|
│ │ └── Instructivo-Instalacion del sistema.doc
|
|
│ ├── dasutensql.1292.exe ← Versión más reciente del ejecutable
|
|
│ ├── dasutensql.1270.exe
|
|
│ ├── dasutensql.1264.exe
|
|
│ ├── dasutensql.1247.exe
|
|
│ └── _gsdata_/ ← Metadata de sincronización GoodSync
|
|
├── Actus/ ← Actualizaciones históricas
|
|
│ └── Hist/ ← Paquetes .zip y .rar de versiones previas
|
|
└── error sincro/ ← Capturas de errores de sincronización
|
|
```
|
|
|
|
## Versiones del Ejecutable
|
|
|
|
| Archivo | Observaciones |
|
|
| :--- | :--- |
|
|
| `DasutenSQL.exe` | Versión base (sin strings de conexión SQL visibles) |
|
|
| `dasutensql.1247.exe` | Contiene referencias a `sysdasuten` |
|
|
| `dasutensql.1264.exe` | Contiene referencias a `sysdasuten` |
|
|
| `dasutensql.1270.exe` | Contiene referencias a `sysdasuten` |
|
|
| `dasutensql.1292.exe` | **Más reciente**. Apunta a `SERVER=172.16.9.204\SQL2017`, `DATABASE=SYSDASUTEN`. Contiene referencia a `SYSDASUTEN_PRODUCCION`. |
|
|
|
|
> [!WARNING]
|
|
> La versión 1292 conecta a una instancia nombrada `SQL2017` en la IP `172.16.9.204`. Si la nueva infra usa instancia por defecto (`MSSQLSERVER`), el `.exe` base o una versión anterior puede ser más compatible. **Verificar cuál es la versión activa en producción consultando `srvv-fenix`**.
|
|
|
|
## Modo de Ejecución Histórico
|
|
|
|
Según los logs de errores y el bat de sincronización:
|
|
|
|
- **Share UNC original**: `\\Quetzal\Sysdasuten\sistema\` → `\\srvFENIX\Sysdasuten\Sistema\`
|
|
- **Ruta local alternativa**: `D:\SysDasuten\Sistema\dasutensql.exe`
|
|
- **Sincronización**: `dasutensql.exe /RUN=SINCRONIZAR:FTP /usuario=sincro /password=sincroftp`
|
|
- **Kermet.ini efectivo**: Se lee desde `\\servidor\Sysdasuten\kermet.ini` (raíz del share)
|
|
|
|
## Dependencias para Despliegue
|
|
|
|
### En el cliente Windows (pcv-dasu0)
|
|
|
|
1. **Fuentes**: Instalar `code39.ttf`, `I2OF5.TTF`, `I2OF5NT.TTF`, `PF_I2OF5_W.ttf`
|
|
2. **ODBC Driver**: `SQL Server` (incluido en Windows)
|
|
3. **VFP Runtime**: Ya embebido en el `.exe` (no requiere instalación separada)
|
|
4. **Componentes Kermet**: Ejecutar `InstaladorComponentesKermet.exe` si es necesario
|
|
5. **Conectividad SQL**: El cliente debe resolver `sql-dasuten` por DNS o hosts
|
|
|
|
### En el servidor SQL (sql-dasuten)
|
|
|
|
1. **Base de datos**: `sysdasuten` ✅ (ya restaurada en `S:\Data\`)
|
|
2. **Puerto SQL**: TCP 1433 (instancia por defecto) — verificar firewall
|
|
3. **Autenticación**: Windows Integrada (el usuario del dominio `DASUTEN\admindasu` ya es sysadmin)
|
|
4. **SQL Browser**: UDP 1434 — habilitar si se usan instancias nombradas
|
|
|
|
## Plan de Despliegue en pcv-dasu0
|
|
|
|
```
|
|
1. Transferir directorio runSysDasuten/ a pcv-dasu0 vía SCP
|
|
2. Modificar Kermet.ini → SERVER=sql-dasuten (o 10.0.100.11)
|
|
3. Instalar fuentes (Fonts/)
|
|
4. Ejecutar InstaladorComponentesKermet.exe
|
|
5. Verificar firewall SQL 1433 en sql-dasuten
|
|
6. Probar conexión: sqlcmd -S sql-dasuten -E -Q "SELECT DB_NAME()"
|
|
7. Lanzar DasutenSQL.exe y verificar login
|
|
```
|
|
|
|
## Referencias
|
|
|
|
- **Proyecto**: [P2601_dasuten.md](P2601_dasuten.md)
|
|
- **Nodo SQL**: [sql-dasuten.md](../nodos/sql-dasuten.md)
|
|
- **Directorio fuente**: `dtic-APPs/temp/runSysDasuten/`
|
|
- **Bitácora**: [04/03/2026](../bitacoras/2026-03-04.md)
|