02
MiNAS
Explorador de archivos web para un NAS, sin VPN y sin exponer SMB a internet.
El problema
Acceder a un NAS desde fuera de la oficina suele exigir una VPN o abrir el puerto 445, un riesgo de seguridad conocido. Quería administrar los archivos desde el celular sin ninguna de las dos cosas.
Lo que construí
- Agente en Python que se conecta al NAS por SMB con pysmb, diseñado para iniciar la conexión hacia afuera y no abrir puertos.
- API en FastAPI que comunica la interfaz con el agente.
- PWA en React y TypeScript para navegar carpetas, subir, descargar, crear, renombrar, eliminar y previsualizar imágenes y PDF.
Reto
La idea inicial era una app nativa de iOS, pero no tengo Mac. La convertí en PWA: funciona en el iPhone y me permitió reutilizar mi stack web.
Arquitectura
Celular
PWA
API
FastAPI
Agente
Python
NAS
SMB