Plataforma Educativa Informática

Bienvenidos a la página personal de José Domingo Muñoz Rodríguez

Últimas entradas

Microblog

Feed RSS/Atom: Novedades del portal de educación de la Junta de Andalucía

Hace unos meses, posiblemente en la última actualización de la página de Novedades del portal de educación de la Junta de Andalucía, la opción de sindicación de contenidos mediante RSS desapareció y dejé de recibir actualizaciones en mi lector.

Como no soy dado a revisar la página periódicamente, he desarrollado un pequeño script en Python que genera automáticamente el archivo XML del feed. Al alojarlo en GitHub Pages, puedo volver a acceder a él desde mi cliente RSS habitual.

Gracias a GitHub Actions, el feed se actualiza automáticamente. Podéis suscribiros a las novedades accediendo a: https://josedom24.github.io/educacion-novedades-rss/feed.xml.

Para quienes tengan curiosidad o quieran ver el código, os dejo el repositorio.

Detalle →
Blog

Migración de Pledin a Astro

pledin

Desde septiembre de 2018, mi página Pledin - Plataforma Educativa Informática ha sido una web estática generada por Jekyll, si quieres más información de como fue construida te invito a leer el artículo: Bienvenidos a PLEDIN 3.0. Después de estos años usando Jekyll como generador de sitios estáticos para este blog, he decidido migrar a Astro. En este artículo explico qué es Astro, por qué lo he elegido y el proceso que he llevado a cabo para esta migración.

¿Qué es Astro?

Astro es un framework moderno para construir sitios web, especialmente pensado para sitios donde el contenido es lo más importante: blogs, documentación, portfolios...

La filosofía de Astro es sencilla: generar páginas HTML simples y rápidas, enviando al navegador solo lo imprescindible. Mientras otros frameworks cargan grandes cantidades de JavaScript aunque no haga falta, Astro hace justo lo contrario.

Algunas de sus características más interesantes:

  • Flexible: puedes usar componentes de React, Vue, Svelte... o simplemente los componentes propios de Astro, que tienen una sintaxis muy parecida al HTML de toda la vida.
  • Gestión de contenido integrada: permite organizar los ficheros Markdown de forma estructurada, con validación automática de los metadatos de cada página.
  • Extensible: dispone de un sistema de plugins oficial para añadir funcionalidades como generación de sitemap, feed RSS, soporte para MDX, etc.
  • Rendimiento: genera sitios extremadamente rápidos gracias a la eliminación de JavaScript innecesario.
Seguir leyendo →
Blog

Seguridad y control de acceso en una VPN tailscale/headscale: ACLs y Tags

vpn

Hasta ahora, nuestra red mesh ha funcionado bajo una confianza total: cualquier dispositivo que uníamos a nuestra red podía comunicarse con los demás. Sin embargo, en entornos educativos o profesionales, necesitamos aplicar el principio de mínimo privilegio. En este artículo aprenderemos a usar las ACLs y los Tags para crear una red donde los alumnos puedan acceder a los recursos del aula, pero estén aislados entre sí.

Conceptos claves: ACLs y Tags

  • Las ACLs (Listas de Control de Acceso) son un conjunto de reglas en formato JSON (o HuJSON) que definen quién puede hablar con quién. Si no hay una regla que permita la conexión, Headscale la denegará por defecto.
  • Los Tags (etiquetas) nos permiten agrupar dispositivos por su función en lugar de por su nombre o usuario. Por ejemplo, podemos etiquetar un equipo como tag:servidor y otros como tag:alumno. Cuando un dispositivo se registra con un Tag, deja de "pertenecer" al usuario que lo registró y pasa a ser propiedad del sistema, lo que facilita la gestión de permisos globales.

Caso práctico: El Aula Aislada

Para entender los conceptos de seguridad usando ACLs y Tags vamos a ver un ejemplo concreto. en este ejemplo vamos a estudiar dos aproximaciones distintas para tener un conjunto de clientes (en nuestro caso alumnos) que acceden a una red local (en nuestro caso una red de un aula). Los objetivos a cumplir son los siguientes:

  1. Los alumnos se conectan a la VPN.
  2. Existe un Router que anuncia la red local del aula (192.168.100.0/24).
  3. Los alumnos pueden acceder a los equipos de la red local.
  4. Los alumnos NO pueden verse ni hacerse ping entre ellos.

Para conseguir dichos objetivos, vamos a estudiar dos aproximaciones distintas:

  • Estrategia 1: Red Unificada con Control por Etiquetas (Tags)
  • Estrategia 2: Segmentación por Usuarios (Namespaces Aislados)
Seguir leyendo →
Microblog

Nuevo editor Zed

En los últimos días estoy usando un nuevo editor de texto llamado ZED y la experiencia está siendo bastante interesante. ZED es un editor de código construido desde cero en Rust, lo que lo hace increíblemente rápido y ligero. Arranca en milisegundos y no consume apenas memoria, algo que se nota mucho si vienes de editores más pesados.

Algunas de las características que más me están gustando:

  • Alto rendimiento..
  • Colaboración en tiempo real.
  • IA integrada.
  • Minimalista pero potente.
  • Extensiones para aportar más funcionalidades.

Página web

Detalle →
Microblog

Licencia: Puedes copiar y modificar todos los contenidos, pero siempre respetando los términos de la licencia CC-BY-SA.