Cómo instalar Discourse en un OVH VPS

Hola a todos,

Después de luchar un tiempo para configurar mi VPS con Discourse, decidí compartir una guía sencilla paso a paso para ayudarte a instalar Discourse en un VPS de OVH.

En mi caso, estoy usando:

  • Un VPS de OVH

  • Un nombre de dominio

  • Un correo electrónico profesional (OVH Email Pro)

:warning: Nota: No soy un experto en configuración de servidores. Si notas algún error o mejora, no dudes en hacérmelo saber.


Paso 0 – Prerrequisitos

Necesitarás los siguientes productos de OVH:

  • VPS (con las siguientes opciones al comprar):

    • Elige un centro de datos ubicado en el país de tu público objetivo (recomendado).

    • Sistema Operativo: Debian 12

  • Nombre de dominio

  • Correo electrónico (OVH Email Pro)

Nota: Lee los dos correos electrónicos importantes de OVH que recibirás.

Herramientas y cuentas adicionales:

  • (Opcional) MaxMind – para seguridad adicional:

    • Crea una cuenta: Registro en MaxMind

    • Ve a Gestionar Claves de Licencia > Generar nueva clave de licencia (guarda tanto el ID como la clave, ya que la clave no se mostrará de nuevo).

  • PuTTY (cliente SSH utilizado en esta guía): Descargar PuTTY


Paso 1 – Configurar tus servicios de OVH

  1. Dominio → VPS

    • Ve a: Cloud Web > Nombres de dominio > tudominio.com > Zona DNS

    • Para cada tipo de registro A, reemplaza el destino con la dirección IPv4 de tu VPS.

  2. Dominio → Email Pro

    • Ve a: Cloud Web > Email Pro > Dominios asociados

    • Añade tu dominio comprado.

  3. Crear un correo electrónico

    • Ve a: Cloud Web > Email Pro > Cuentas de correo electrónico

    • Crea una nueva dirección de correo electrónico (por ejemplo, contacto@tudominio.com).


Paso 2 – Configuración del VPS

  1. Conéctate vía SSH

    • Abre PuTTY

    • Nombre de host: IPv4 de tu VPS

    • Puerto: 22

    • En la consola: Inicia sesión con el nombre de usuario y la contraseña enviados por correo electrónico.

  2. Asegura tu servidor

    • Cambia tu contraseña.

    • Cambia el puerto SSH (Recomendado):
      sudo vi /etc/ssh/sshd_config

    • Busca la línea con “Port” (usa las teclas de flecha).

    • Elimina el # y reemplaza el número de puerto (i para insertar) con uno entre 49152 y 65535.

      Guarda y sal (Esc > :wq)

  3. Instalar dependencias (Debian)
    sudo apt install docker.io -y
    sudo apt install git -y

  4. Instalar Discourse
    sudo -s
    git clone https://github.com/discourse/discourse_docker.git /var/discourse
    cd /var/discourse
    chmod 700 containers

  5. Ejecuta el script de configuración
    sudo ./discourse-setup

    Completa las indicaciones:

    1. Nombre de host: tu dominio (por ejemplo, tudominio.com)
    2. Correo electrónico de administrador: tu correo electrónico personal
    3. Dirección del servidor SMTP: se encuentra en el área de cliente de OVH → Email Pro (por ejemplo, proX.mail.ovh.net)
    4. Puerto SMTP: 587
    5. Nombre de usuario SMTP: el correo electrónico que creaste anteriormente (por ejemplo, contacto@tudominio.com)
    6. Contraseña SMTP: contraseña de esa cuenta de correo electrónico
    7. Correo electrónico de notificación: igual que el nombre de usuario SMTP
    8. Correo electrónico de Let’s Encrypt: tu correo electrónico personal (recomendado)
    9. ID de cuenta de MaxMind: de tu cuenta de MaxMind
    10. Clave de MaxMind: clave de licencia que generaste
  6. Ajusta la configuración SMTP
    sudo nano containers/app.yml

    Desplázate hasta la sección SMTP.

    1. Edita de la siguiente manera:
      • Dominio SMTP: igual que tu nombre de host SMTP

      • Autenticación SMTP: reemplaza “plain” con “login”

      • Habilitar STARTTLS: elimina el # antes de la línea

        Guarda y sal (Ctrl + O, Enter, Ctrl + X).

  7. Reconstruye la aplicación
    sudo ./launcher rebuild app


Paso 3 – Prueba final

Comprueba si el envío de correos electrónicos funciona:

sudo ./discourse-doctor

  • Introduce una dirección de correo electrónico de prueba para recibir un mensaje de prueba.

Si todo funciona, ahora puedes finalizar la configuración de Discourse directamente desde tu sitio web en https://tudominio.com

Murffy

4 Me gusta

¿Es el correo electrónico de OVH un servicio de correo electrónico transaccional? No pude encontrar nada relacionado con que sea transaccional con una búsqueda superficial, ¿pero tal vez no?

Genial, necesitábamos algo de documentación para OVH, que es uno de mis proveedores favoritos. Me gusta mucho el hecho de que con cualquier nombre de dominio que compres recibes una dirección de correo electrónico gratuita (no he probado su dirección de correo electrónico con una configuración de Discourse, quizás lo haga más tarde y lo informe aquí).

@murffy Por cierto, si tu VPS de OVH solo tiene Docker + Discourse, ¿podrías incluir una configuración de firewall (iptables/ufw) en la documentación para que sea aún más una documentación “plug and play” para un aficionado?

Aconsejo no hacer esto.
Este no es un servicio de correo electrónico transaccional y es probable que OVH lo bloquee automáticamente por sospecha de spam.
He utilizado un correo electrónico gratuito de OVH para Discourse durante un tiempo y fue una mala idea. Sugiero que busques un servicio de envío de correo electrónico adecuado. :slightly_smiling_face:

1 me gusta

Gracias por el consejo, me puse en contacto con OVH al respecto, ya veremos qué dicen. 200-500 correos electrónicos por semana con DKIM/SPF + encabezados oficiales y botones de cancelación de suscripción no es pedirles demasiado para que no se considere spam.

Actualización de OVH = 200 correos electrónicos por hora; un buen límite para un correo electrónico gratuito, aunque: :slight_smile: y para evitar spam, aquí está su sugerencia:

  • Tres o más palabras en mayúsculas en la línea de asunto de su correo electrónico. * Sin línea de asunto o sin texto en el correo electrónico. * El correo electrónico contiene solo una imagen grande (> 1 MB) y pocas palabras, o muchas imágenes y poco texto. * Ciertas palabras clave en la línea de asunto o al principio del correo electrónico: Hola, GRATIS, COMPRAR, COMPRANDO, etc. * El correo electrónico contiene más del 70% de espacio en blanco (uso excesivo de la tecla ESPACIO o ENTER en el teclado). * La fuente utilizada para escribir el correo electrónico es demasiado grande. * El color de la fuente y el color de fondo son idénticos, lo que hace que el texto sea ilegible. * Los enlaces del correo electrónico son incorrectos. * Las URL no son seguras (por ejemplo, declaradas como https:// cuando la URL solo existe como http://) o enlazan a un sitio pirateado o malicioso. * El correo electrónico contiene términos pornográficos o similares. * El correo electrónico contiene un archivo ejecutable (EXE, BAT, PIF, XML, XLSX o cualquier documento con una macro), incluso si está comprimido. * Sus destinatarios están listados solo en CCO o principalmente, aunque no esté utilizando un sistema adecuado para listas de correo.
1 me gusta

Consejo: 6K ~ 200 días