Cómo instalar Flarum Next Generation Forum en Ubuntu 24.04
Flarum es un software de foros gratuito y de código abierto en PHP, JavaScript y TypeScript. Es un software de foro de nueva generación diseñado para ser mínimo con una gran extensibilidad mediante extensiones. Flarum es una solución moderna para el software de foros, es rápido, sencillo y fácil de usar e instalar.
En este tutorial, te mostraremos cómo instalar Flarum en Ubuntu 24.04. Instalarás Flarum con la pila LAMP (Linux, Apache, MySQL/MariaDB y PHP), y luego lo asegurarás mediante HTTPS utilizando Certbot y letsencrypt.
Requisitos previos
Para seguir con este tutorial, asegúrate de que tienes los siguientes requisitos:
- Un Ubuntu 24.04 ‘Noble Numbat’.
- Un usuario no root con privilegios de administrador.
- Un UFW (Cortafuegos sin complicaciones) en ejecución.
- Un nombre de dominio apuntando a una dirección IP del servidor.
Instalación de dependencias
Flarum es un software de foro de código abierto escrito en PHP. Para instalarlo, necesitas instalar dependencias en tu servidor Ubuntu. Esto incluye la pila LAMP (Linux, Apache, MySQL/MariaDB), Git y Composer.
En esta sección, instalarás dependencias para Flarum a través del repositorio de Ubuntu.
En primer lugar, ejecuta el siguiente comando para actualizar el índice de paquetes de Ubuntu.
sudo apt update
Ahora ejecuta los siguientes comandos para instalar dependencias como LAMP Stack (Linux, Apache, MySQL/MariaDB y PHP), Composer y Git en tu sistema Ubuntu.
sudo apt install apache2 mariadb-server php php-common php-mysql libapache2-mod-php php-gd php-curl php-json php-xmlrpc php-intl php-bcmath php-zip php-apcu php-mbstring php-fileinfo php-xml php-soap php-tokenizer composer git
Escribe Y para confirmar la instalación.
Tras la instalación, comprueba el estado del servicio Apache con el siguiente comando. Verás que el servidor web Apache está habilitado con el estado«activo (en ejecución)«.
sudo systemctl is-enabled apache2 sudo systemctl status apache2
Ahora comprueba el servidor MariaDB con el siguiente comando. Verás una salida similar, en la que MariaDB está habilitado y en ejecución.
sudo systemctl is-enabled mariadb sudo systemctl status mariadb
Por último, comprueba las versiones de PHP y Composer con el siguiente comando. Verás que PHP 8.3 y Composer 2.7.1 están instalados en tu sistema Ubuntu.
php -v sudo -u www-data composer -v
Configurar UFW (Cortafuegos sin complicaciones)
Después de instalar las dependencias, tienes que permitir el acceso al servidor web Apache a través de UFW (Uncomplicated Firewall). El servidor web Apache proporciona un perfil de aplicación UFW‘Apache Full‘ para permitir el acceso tanto HTTP como HTTPS.
Ejecuta el siguiente comando para abrir tanto el acceso HTTP como el HTTPS a través del perfil ‘Apache Full’. Cuando se añada, verás una salida‘Reglas añadidas‘.
sudo ufw allow 'Apache Full'
Ahora verifica la lista de reglas en tu UFW con el siguiente comando.
sudo ufw status
Deberías obtener el perfil «Apache Completo» habilitado en tu cortafuegos. Con esto, se permite tanto el acceso HTTP como HTTPS a tu servidor web Apache.
Configurar PHP
En esta sección, configurarás PHP para Flarum editando el archivo ‘php.ini’. Tendrás que ajustar algunas configuraciones de PHP como memory_limit y upload_max_filesize para tu instalación de Flarum.
Abre la configuración PHP por defecto ‘php.ini‘ utilizando el siguiente comando del editor nano.
sudo nano /etc/php/8.3/apache2/php.ini
Cambia la configuración PHP por defecto con lo siguiente. Asegúrate de ajustar el valor de las opciones memory_limit y date.timezone.
memory_limit = 512M upload_max_filesize = 150M max_execution_time = 600 date.timezone = Europe/Paris
Cuando hayas terminado, guarda el archivo y sal.
Ahora ejecuta el siguiente comando para reiniciar el servidor web Apache y aplicar la nueva configuración PHP.
sudo systemctl restart apache2
Configurar el servidor MariaDB
Después de configurar PHP, asegurarás el servidor MariaDB y crearás una nueva base de datos y un nuevo usuario que utilizará Flarum. Puedes asegurar MariaDB mediante el comando‘mariadb-secure-installation‘, y luego crear una nueva base de datos y un nuevo usuario mediante el cliente‘mariadb‘.
Para asegurar el servidor MariaDB, ejecuta el comando ‘mariadb-secure-installation‘ que aparece a continuación. Con esto, se te preguntarán algunas configuraciones de MariaDB.
sudo mariadb-secure-installation
A continuación se muestra la configuración que se te pedirá:
- La instalación por defecto de MariaDB viene sin contraseña, pulsa ENTER cuando se te pida la contraseña.
- Ahora introduce Y para configurar la contraseña de root de MariaDB. A continuación, escribe la nueva contraseña para MariaDB y repite la contraseña.
- Introduce Y para eliminar el usuario anónimo de tu instalación de MariaDB.
- Vuelve a introducir Y cuando se te pida para desactivar el inicio de sesión remoto para el usuario raíz de MariaDB.
- Introduce Y para eliminar la prueba de base de datos por defecto de tu MariaDB.
- Por último, introduce Y para recargar los privilegios de las tablas y aplicar los nuevos cambios.
Una vez asegurada MariaDB, inicia sesión en el servidor MariaDB con el siguiente comando. Escribe tu contraseña de root de MariaDB cuando se te solicite.
sudo mariadb -u root -p
Ahora ejecuta las siguientes consultas para crear una nueva base de datos y un nuevo usuario para Flarum. En este ejemplo, crearás una nueva base de datos‘flarum‘, un usuario‘flarum‘, con la contraseña‘password‘. Puedes sustituirlos por tus datos.
CREATE DATABASE flarum; CREATE USER flarum@localhost IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON flarum.* TO flarum@localhost; FLUSH PRIVILEGES;
A continuación, ejecuta la siguiente consulta para verificar los privilegios del usuario ‘flarum‘. Esto garantizará que el usuario ‘flarum‘ pueda acceder a la base de datos‘flarum‘.
SHOW GRANTS FOR flarum@localhost;
Puedes ver a continuación que el usuario «flarum» puede acceder a la base de datos «flarum«.
Ahora escribe quit para salir del servidor MariaDB.
Descargar el código fuente de Flarum
Con todas las dependencias configuradas, estás listo para descargar el código fuente de Flarum. En esta sección, crearás un nuevo directorio raíz de documentos para Flarum y, a continuación, descargarás el código fuente de Flarum a través de Composer.
En primer lugar, ejecuta el siguiente comando para crear un nuevo directorio de instalación de Flarum‘/var/www/flarum/‘ y los directorios para Composer‘/var/www/.cache‘ y‘/var/www/.config‘. A continuación, cambia la propiedad de esos directorios al usuario‘www-data‘.
mkdir -p /var/www/{.cache,.config,flarum} chown -R www-data:www-data /var/www/{.cache,.config,flarum}
Ahora dirígete al directorio‘/var/www/flarum/‘ y descarga el código fuente de Flarum mediante el siguiente comando de Composer.
cd /var/www/flarum/ sudo -u www-data composer create-project flarum/flarum .
A continuación puedes ver el proceso de descarga del código fuente de Flarum.
Una vez finalizado el proceso de descarga, ejecuta el siguiente comando‘ls‘ para comprobar el código fuente de Flarum.
ls -ah
Deberías ver el código fuente de Flarum descargado como el siguiente:
Configurar el host virtual Apache para Flarum
Después de descargar Flarum, necesitas crear un nuevo host virtual Apache. Para ello, asegúrate de haber preparado tu nombre de dominio para la instalación de Flarum.
Antes de crear un host virtual, ejecuta el siguiente comando para habilitar los módulos de Apache‘ssl‘,‘rewrite’ y‘headers‘.
sudo a2enmod ssl rewrite headers
Ahora crea una nueva configuración de host virtual‘/etc/apache2/sites-available/flarum.conf‘ utilizando el siguiente comando del editor nano.
sudo nano /etc/apache2/sites-available/flarum.conf
Introduce la configuración que aparece a continuación, y asegúrate de cambiar la opción ServerName con el nombre de tu dominio, y la ruta del directorio Document-Root de tu instalación de Flarum.
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/flarum/public ServerName forum.hwdomain.io <Directory /var/www/flarum/public/> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /var/www/flarum/public/> RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*) index.php [PT,L] </Directory> </VirtualHost>
Cuando hayas terminado, guarda el archivo y sal del editor.
A continuación, ejecuta el siguiente comando para activar el archivo de host virtual ‘flarum.conf’ y verificar la sintaxis de tu Apache.
sudo a2ensite flarum.conf sudo apachectl configtest
Deberías tener una salida‘Sintaxis OK‘ cuando tengas una configuración correcta de Apache.
Por último, ejecuta el siguiente comando para reiniciar el servidor web Apache y aplicar la nueva configuración del host virtual de Flarum. Con esto, tu Flarum debería ser accesible.
sudo systemctl restart apache2
Asegurar Flarum con HTTPS
Si estás ejecutando Flarum en un dominio público, puedes asegurarlo con HTTPS utilizando certificados Certbot y Letsencrypt. Si utilizas un dominio local, puedes utilizar certificados autofirmados.
Instala Certbot y el plugin de Certbot para Apache con el siguiente comando. Escribe Y para confirmar la instalación.
sudo apt install certbot python3-certbot-apache
Ahora ejecuta el siguiente comando ‘certbot’ para generar certificados SSL/TLS para tu instalación de Flarum. Asegúrate de cambiar los detalles del nombre de dominio y la dirección de correo electrónico con tu información.
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d forum.hwdomain.io
Una vez completado el proceso, tu instalación de Flarum debería estar protegida con HTTPS. Y tus certificados SSL/TLS deberían estar disponibles en el directorio‘/etc/letsencrypt/live/domain.com‘.
Instalar Flarum
Abre tu navegador web y visita tu nombre de dominio, por ejemplo https://forum.hwdomain.io/. Si la configuración es correcta, debería aparecerte el asistente de instalación de Flarum.
Introduce el título de tu foro, los datos de la base de datos MariaDB, el usuario y la contraseña. A continuación, introduce los datos del usuario administrador, el correo electrónico y la contraseña de tu nueva instalación de Flarum.
Haz clic en el botón«Instalar Flarum» para continuar con la instalación.
Una vez completada la instalación, se te mostrará el panel de administración de Flarum como el siguiente:
Ahora haz clic en el icono de tu usuario y selecciona Administración. Esto te mostrará los detalles de tu instalación de Flarum.
Como puedes ver a continuación, Flarum 1.8.5 está instalado con PHP 8.3 y el servidor MariaDB 10.11.
Conclusión
¡Enhorabuena! Ya has completado la instalación de Flarum en Ubuntu 24.04. Tienes Flarum funcionando con la pila LAMP (Linux, Apache, MySQL/MariaDB y PHP), también has asegurado Flarum con HTTPS mediante Certbot y Letsencrypt.