Antunez Plaza

Espacio para compartir esa reflexión

Alojar WordPress en tu NAS Synology: así lo hice yo

¿Alguna vez has pensado en alojar tu propio sitio WordPress directamente desde la red de tu casa usando tu NAS Synology? ¡Es totalmente posible! Te da control total y, sinceramente, es un proyecto bastante interesante. Yo mismo he pasado por el proceso, y aquí dejo una guía para mi propia referencia futura y para poder ayudar a configurarlo a cualquiera que lo necesite.

Cuando tengo ya un sitio funcionando y quiero incluir otro, aparte del tema de la compra y configuración del dominio del paso 2, el resto es seguir el manual a partir del paso 5.

(Opcional: «Si prefieres una guía visual, el vídeo en inglés Tutorial Vídeo que utilicé también cubre estos pasos.»)

Antes de Empezar: Prerrequisitos

Hay algunas cosas que necesitarás tener listas antes de comenzar:

  1. Un Nombre de Dominio: Necesitas una dirección web (como tublog.com). Puedes conseguir uno de registradores que hay en internet. Aunque yo lo hice con Google Domains, se trata de un servicio que ya no ofrecen así que toca buscar otros y, aunque hay muchos como Namecheap, etc mi consejo es busca el que quieras que te permita configurar lo básico y que te de una buena oferta, pero después de que pase el tiempo de oferta, mueve el dominio a CLOUDFLARE, son líderes mundiales en control de tráfico web y el nivel de gestión que te ofrecen está en otra liga. El precio, una vez pasadas ofertas de primer año, como todos más o menos.
  2. Acceso al Router y Redirección de Puertos (Port Forwarding): Necesitarás acceso a la configuración de tu router doméstico para abrir puertos específicos (80 y 443) y dirigirlos a la dirección IP interna de tu NAS.
  3. No tener CGNAT: Comprueba con tu Proveedor de Servicios de Internet (ISP) que tienes una dirección IP pública. Si estás detrás de Carrier-Grade NAT (CGNAT), el acceso externo podría ser complicado o imposible sin pasos adicionales (como un túnel VPN).
  4. Considera tus Necesidades: Para blogs personales, experimentos o sitios con poco tráfico, un NAS es genial. Para sitios profesionales, de alto tráfico o críticos para un negocio, o con plugins que requieran cantidad de proceso o gestiones grandes de bases de datos, un hosting dedicado (como AWS, SiteGround, etc.) podría ser más robusto y fiable.

Paso 1: Configurando el DNS Dinámico (DDNS)

La dirección IP de tu conexión a internet doméstica probablemente cambia periódicamente (es dinámica). El DDNS asegura que tu nombre de dominio siempre apunte a tu NAS, incluso cuando la IP cambie.

  • Inicia sesión en tu DSM (DiskStation Manager) de Synology.
  • Ve a Panel de control > Acceso externo > DDNS.
  • Haz clic en Añadir y elige un proveedor de DDNS (Synology ofrece uno gratuito, o puedes usar otros).
  • Sigue las indicaciones para configurar tu nombre de host DDNS (por ejemplo, tunas.synology.me). Este nombre de host rastreará ahora tu IP doméstica.

Paso 2: Apuntando tu Nombre de Dominio (Registros DNS)

Ahora, vamos a decirle a tu nombre de dominio (ej. tublog.com) que apunte a tu NAS Synology usando el nombre de host DDNS que acabas de crear. Este ejemplo usa Google Domains, pero el principio es similar en otros registradores.

  • Inicia sesión en tu registrador de dominios (ej. Google Domains).
  • Busca la sección de gestión de DNS para tu dominio.
  • Crea un registro CNAME:
    • Nombre/Host: Es el prefijo que quieres (ej. www para www.tublog.com, o quizás blog para blog.tublog.com. Si quieres que sea el dominio principal, a veces se usa @ o se deja en blanco, pero revisa la documentación de tu registrador. Para subdominios como wp02.antunezplaza.com, introducirías wp02).
    • Tipo: CNAME
    • Valor/Apunta a: Introduce el nombre de host DDNS completo que creaste en el Paso 1 (ej. tunas.synology.me).
  • (Opcional pero Recomendado): Quizás quieras configurar también el reenvío de dominio para que si alguien escribe tublog.com (sin www), sea redirigido a www.tublog.com.
Captura de pantalla de la configuración del registro CNAME en el DNS

Paso 3: Abriendo las Puertas (Redirección de Puertos – Port Forwarding)

El tráfico web necesita una forma de entrar en tu red para llegar al NAS.

  • Inicia sesión en la interfaz de administración de tu router (normalmente algo como 192.168.1.1 o 192.168.0.1).
  • Busca la sección Port Forwarding o Servidor Virtual.
  • Crea dos reglas:
    1. Regla 1: Redirige el puerto externo 80 (HTTP) al puerto interno 80 en la dirección IP interna de tu NAS (ej. 192.168.1.100).
    2. Regla 2: Redirige el puerto externo 443 (HTTPS/SSL) al puerto interno 443 en la dirección IP interna de tu NAS.
  • Asegúrate de saber la dirección IP interna de tu NAS (puedes encontrarla en DSM en Panel de control > Red > Interfaz de red). Es mejor asignar una IP interna estática a tu NAS a través de la configuración de reserva DHCP de tu router para que no cambie.

Paso 4: Instalando el Software del Servidor Web en Synology

Tu NAS necesita el software adecuado para servir páginas web y ejecutar WordPress.

  • Ve al Centro de paquetes en DSM.
  • Instala los siguientes paquetes:
    • Web Station: El gestor principal del servidor web.
    • Apache HTTP Server 2.4 (o tu versión preferida de Apache): El software del servidor web en sí.
    • MariaDB 10: La base de datos donde WordPress almacenará su contenido. Durante la instalación, establece una contraseña fuerte para el usuario ‘root’ de la base de datos – ¡no la olvides!
    • PHP 7.4 (o una versión compatible más reciente como 7.8, 8.0, 8.1, etc. – comprueba los requisitos de WordPress): El lenguaje de scripting en el que corre WordPress. Ten en cuenta que hay una configuración concreta para PHP y que no es conveniente activar lo que no necesite WordPress si quieres tener el mejor rendimiento posible.
    • phpMyAdmin: Una herramienta basada en web para gestionar fácilmente tus bases de datos MariaDB.

Paso 5: Preparando WordPress

  • Ve al sitio web oficial WordPress.org y descarga el último paquete .zip.
  • Abre File Station en tu NAS Synology.
  • Navega a la carpeta compartida web por defecto.
  • Crea una nueva subcarpeta dentro de web para tu sitio web (ej. miwpblog).
  • Sube el archivo .zip de WordPress que descargaste a esta nueva carpeta (web/miwpblog).
  • Haz clic derecho en el archivo .zip en File Station y elige Extraer > Extraer aquí para descomprimir los archivos de WordPress directamente en la carpeta web/miwpblog.

Paso 6: Creando la Base de Datos y el Usuario para WordPress

WordPress necesita su propio espacio dedicado (base de datos) y una cuenta de usuario para acceder a ella.

  • Abre phpMyAdmin desde el menú principal de DSM.
  • Inicia sesión usando:
    • Nombre de usuario: root
    • Contraseña: La contraseña root de MariaDB que estableciste durante la instalación (Paso 4).
  • Crear la Base de Datos:
    • Haz clic en la pestaña Bases de datos.
    • Introduce un nombre para tu base de datos (ej. wp01_db) bajo «Crear base de datos».
    • Elige una colación como utf8mb4_general_ci.
    • Haz clic en Crear.
  • Crear el Usuario de la Base de Datos:
    • Haz clic en la pestaña Cuentas de usuario.
    • Haz clic en Agregar cuenta de usuario.
    • Nombre de usuario: Elige un nombre de usuario (ej. wp01_user). Evita usar ‘admin’ o nombres simples.
    • Nombre del host: Selecciona Local del desplegable (esto se resuelve a localhost).
    • Contraseña: Genera o introduce una contraseña muy fuerte. ¡Guarda esta contraseña de forma segura!
    • Asegúrate de que «Otorgar todos los privilegios en la base de datos *» NO esté marcado todavía, y que «Crear base de datos con el mismo nombre…» tampoco esté marcado.
    • Haz clic en Continuar (normalmente abajo a la derecha).
Pantalla de phpMyAdmin – Añadir cuenta de usuario
  • Otorgar Privilegios:
    • Deberías estar de vuelta en la pantalla de Cuentas de usuario. Encuentra el usuario que acabas de crear (wp01_user @ localhost).
    • Haz clic en Editar privilegios para ese usuario.
    • Ve a la pestaña Base de datos dentro de la pantalla de privilegios.
    • Bajo «Agregar privilegios en la siguiente base de datos», selecciona la base de datos que creaste antes (wp01_db).
    • Haz clic en Continuar.
    • En la siguiente página («Privilegios específicos de la base de datos»), haz clic en Marcar todos para dar al usuario control total solo sobre esa base de datos específica.
    • Haz clic en Continuar.
Pantalla de phpMyAdmin – Privilegios específicos de la base de datos

Paso 7: Configurando Web Station y PHP

Ahora le decimos a Web Station sobre tu nuevo sitio y nos aseguramos de que PHP esté configurado correctamente.

  • (Limpieza Opcional): Si hay un archivo index.html directamente dentro de la carpeta principal /web de tu NAS, considera renombrarlo o eliminarlo, especialmente si planeas configuraciones multi-sitio más adelante, para evitar conflictos.
  • Abre Web Station en DSM.
  • Configurar PHP:
    • Ve a Configuración de lenguaje de script > PHP.
    • Selecciona tu perfil PHP deseado (ej. Perfil Predeterminado 7.4) y haz clic en Editar, o haz clic en Crear para hacer un nuevo perfil específicamente para WordPress.
    • Dale un nombre/descripción si estás creando uno nuevo.
    • Ve a la pestaña Extensiones.
    • Busca y marca (habilita) todas las extensiones PHP requeridas por WordPress. Puedes encontrar la lista actual en la página oficial de requisitos de hosting de WordPress: Requisitos del Entorno del Servidor WordPress. Asegúrate de que las comunes como mysqli, curl, gd, imagick, openssl, mbstring, zip, etc., estén habilitadas.
    • Haz clic en Guardar.
  • Crear el Host Virtual:
    • Ve a Portal de servicios web.
    • Haz clic en Crear > Portal de servicio basado en nombre (Host virtual).
    • Rellena los detalles:
      • Nombre de host: Introduce el dominio/subdominio completo que configuraste en el Paso 2 (ej. wp02.antunezplaza.com).
      • Puertos: Deja marcados 80/443.
      • Raíz del documento: Haz clic en Examinar y selecciona la carpeta donde extrajiste WordPress (ej. /web/miwpblog).
      • Servidor back-end HTTP: Selecciona Apache 2.4.
      • PHP: Selecciona el perfil PHP que configuraste/editaste arriba (ej. PHP 7.4).
      • Haz clic en Guardar.

Captura de pantalla de la configuración del Host Virtual en Web Station

Paso 8: Estableciendo Permisos de Archivo

WordPress necesita permiso para escribir archivos (para subidas, instalaciones de plugins/temas, actualizaciones).

  • Abre File Station.
  • Navega a la carpeta principal web.
  • Haz clic derecho en la carpeta de tu sitio WordPress (ej. miwpblog).
  • Selecciona Propiedades.
  • Ve a la pestaña Permiso.
  • Haz clic en Crear.
  • En el desplegable Usuario o grupo, busca y selecciona HTTP. (A veces puede aparecer como usuario interno SYSTEM o similar – necesitas el usuario del servidor web).
  • En la sección Permisos de abajo, marca la casilla Escritura (Lectura ya debería estar marcada).
  • Haz clic en OK.
  • Importante: Marca la casilla «Aplicar a esta carpeta, subcarpetas y archivos».
  • Haz clic en Guardar u OK.

Captura de pantalla de la configuración de Permisos en File Station

Paso 9: Ejecutando la Instalación de WordPress

¡Llegó el momento!

  • Abre tu navegador web y navega al dominio/subdominio que configuraste (ej. http://wp02.antunezplaza.com).
  • Deberías ver la pantalla de selección de idioma de WordPress. Elige tu idioma.
  • En la siguiente pantalla («Bienvenido a WordPress…»), haz clic en ¡Vamos a ello!.
  • Rellena los detalles de conexión a la base de datos que creaste en el Paso 6:
    • Nombre de la base de datos: wp01_db (o como la hayas llamado)
    • Nombre de usuario: wp01_user (o como lo hayas llamado)
    • Contraseña: La contraseña fuerte que creaste para el usuario de la base de datos.
    • Host de la base de datos: localhost (o a veces 127.0.0.1:3307 si MariaDB usa un puerto no estándar – revisa la configuración de tu paquete MariaDB si localhost falla).
    • Prefijo de tabla: wp_ (puedes cambiar esto para una seguridad ligeramente mayor, pero wp_ es el estándar).
  • Haz clic en Enviar. Si los detalles son correctos, verás un mensaje de éxito.
  • Haz clic en Ejecutar la instalación.
  • Rellena el Título del sitio, Nombre de usuario de administrador, Contraseña de administrador (¡usa una fuerte!), y tu dirección de Correo electrónico de administrador.
  • Haz clic en Instalar WordPress.
Captura de pantalla de la conexión a la base de datos de WordPress

Paso 10: Asegurando tu Sitio con HTTPS (Certificado SSL)

¡No te saltes esto! HTTPS cifra el tráfico y genera confianza.

  • En DSM, ve a Panel de control > Seguridad > Certificado.
  • Haz clic en Añadir > Añadir un nuevo certificado.
  • Elige Obtener un certificado de Let's Encrypt.
  • Introduce tu Nombre de dominio (ej. wp02.antunezplaza.com).
  • Introduce tu Correo electrónico (para avisos de renovación).
  • (Opcional) Puedes añadir otros nombres bajo Nombre alternativo del sujeto si es necesario (ej. www.wp02.antunezplaza.com si planeas usarlo también).
  • Haz clic en Aplicar o Siguiente. Tu NAS se comunicará con Let’s Encrypt para verificar la propiedad (esto requiere que los puertos 80/443 estén abiertos y apuntando correctamente).
  • Una vez conseguido, necesitas asignar este certificado. Haz clic en Configurar (o busca la entrada de tu dominio en la lista y haz clic en Configurar).
  • Encuentra el servicio correspondiente a tu Host Virtual (debería coincidir con el nombre de host, ej. wp02.antunezplaza.com).
  • En el desplegable junto a él, selecciona el nuevo certificado de Let’s Encrypt que acabas de crear.
  • Haz clic en OK.

Ahora, intenta acceder a tu sitio usando https://wp02.antunezplaza.com. ¡Deberías ver un icono de candado! Quizás quieras también instalar un plugin dentro de WordPress (como «Really Simple SSL») para manejar la redirección del tráfico HTTP a HTTPS automáticamente.

Solución de Problemas: ¿Pide Credenciales FTP?

A veces, al intentar instalar plugins o temas, WordPress podría pedir detalles de conexión FTP. Esto suele ocurrir por problemas de propiedad/permisos de archivos. Si te encuentras con esto, la guía que enlazo a continuación suele ayudar:

Esencialmente, a menudo implica añadir una línea como define('FS_METHOD', 'direct'); a tu archivo wp-config.php (ubicado en tu carpeta WordPress, ej. /web/miwpblog/wp-config.php). ¡Edita este archivo con cuidado!


¡Y eso es todo! Ahora deberías tener una instalación de WordPress funcionando en tu NAS Synology. Puede parecer un montón de pasos, pero abordarlo etapa por etapa lo hace manejable. ¡Diviértete construyendo tu sitio! Déjame saber en los comentarios si te encontraste con algún problema.

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *