Cómo instalar MediaWiki en Debian 12
MediaWiki es un software wiki de código abierto utilizado por los mayores sitios wiki como Wikipedia y Wikimedia. Es un software wiki libre que puede utilizarse como plataforma de colaboración y documentación. Es una implementación wiki potente, escalable y rica en funciones.
Este tutorial te mostrará cómo instalar MediaWiki con la pila LAMP (Apache, MariaDB y PHP) en el servidor Debian 12. Además, también te mostraremos cómo asegurar MediaWiki con HTTPS mediante Certtbot y Letsencrypt.
Requisitos previos
Antes de empezar, asegúrate de que tienes lo siguiente:
- Un servidor Debian 12.
- Un usuario no root con privilegios de administrador.
- Un nombre de dominio apuntando a una dirección IP del servidor.
Instalar la pila LAMP
MediaWiki es un software de código abierto basado en PHP con MySQL/MariaDB como almacén de datos. Actualmente, la versión estable actual de MediaWiki (1.41) requiere al menos PHP 7.3.4 o superior y MariaDB 10.3.0. En cuanto a los servidores web, puedes utilizar Apache o Nginx.
En esta sección, instalarás la pila LAMP (Apache, MariaDB y PHP) que se utilizará para ejecutar tu instalación de MediaWiki.
En primer lugar, actualiza tu repositorio Debian con el siguiente comando.
sudo apt update
Una vez actualizado el repositorio, instala las dependencias de la Pila LAMP con el siguiente comando. Introduce Y para confirmar la instalación.
sudo apt install apache2 mariadb-server imagemagick libapache2-mod-php php php-common php-intl php-xml php-curl php-gd php-mbstring php-mysql php-apcu
Una vez completada la instalación, verifica el servicio Apache y MariaDB para asegurarte de que ambos servicios se están ejecutando.
Verifica el servidor web Apache con el siguiente comando. Si obtienes una salida habilitada, esto confirma que Apache está habilitado y se iniciará automáticamente al arrancar. Si se ejecuta, verás la salida activa (en ejecución).
sudo systemctl is-enabled apache2 sudo systemctl status apache2
A continuación, comprueba el servidor de bases de datos MariaDB con el comando que aparece a continuación. La salida debería ser similar, una salida enabled confirma que MariaDB está habilitado, y active (running) confirma que MariaDB se está ejecutando.
sudo systemctl is-enabled mariadb sudo systemctl status mariadb
Por último, verifica la versión de PHP y la lista de módulos habilitados con el siguiente comando. Verás que PHP 8.2 está instalado en tu servidor Debian.
php -v php -m
Configurar PHP
Después de haber instalado LAMP Stack, configurarás tu instalación de PHP editando el archivo php.ini y cambiando algunos parámetros predeterminados para MediaWiki.
Para configurar PHP, abre la configuración de PHP /etc/php/8.2/apache2/php.ini con el siguiente comando del editor nano.
sudo nano /etc/php/8.2/apache2/php.ini
Cambia la configuración por defecto por la siguiente y asegúrate de ajustar tanto date.timezone como memory_limit con tu entorno actual.
date.timezone = Europe/Amsterdam upload_max_filesize = 80M memory_limit = 512M max_execution_time = 360
Guarda y sal del archivo.
Ahora ejecuta el siguiente comando para reiniciar el servicio Apache y aplicar tus cambios.
sudo systemctl restart apache2
Configurar el servidor MariaDB
Con el PHP configurado, el siguiente paso es asegurar el servidor MariaDB y crear una nueva base de datos y un nuevo usuario para MediaWiki. En este ejemplo, asegurarás el servidor MariaDB utilizando la línea de comandos mariadb-secure-installation y crearás una nueva base de datos y un nuevo usuario a través del cliente MariaDB.
Para asegurar la instalación del servidor MariaDB, ejecuta el comando mariadb-secure-installation que aparece a continuación.
sudo mariadb-secure-installation
Ahora introduce Y para aceptar o n para rechazar la nueva configuración en el servidor MariaDB:
- 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 que hayas asegurado el despliegue del servidor MariaDB, inicia sesión en el servidor MariaDB utilizando el comando mariadb que se indica a continuación. Introduce 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 MariaDB y un nuevo usuario para MediaWiki. En este ejemplo, crearás una nueva base de datos mediawikidb, un usuario mediawiki con la contraseña mediawikipassdb. Puedes ajustar lo siguiente con tus credenciales.
CREATE DATABASE mediawikidb; CREATE USER mediawiki@localhost IDENTIFIED BY 'mediawikipassdb'; GRANT ALL ON mediawikidb.* TO mediawiki@localhost WITH GRANT OPTION; FLUSH PRIVILEGES;
A continuación, ejecuta la siguiente consulta para verificar los privilegios del usuario mediawiki de MariaDB. Asegúrate de que el usuario mediawiki puede acceder a la base de datos mediawikidb.
SHOW GRANTS FOR mediawiki@localhost;
Por último, escribe quit para salir de MariaDB cuando hayas terminado.
Descargar el código fuente de MediaWiki
Ahora que las dependencias están instaladas y configuradas, puedes instalar MediaWiki. Hay varias versiones de MediaWiki: estable, legacy y LTS. En este caso, instalarás la última versión estable de MediaWiki 1.41.
Desplázate al directorio /var/www y descarga el código fuente de MediaWiki mediante el comando wget que aparece a continuación. Asegúrate de visitar la página de descargas de MediaWiki para obtener la última versión.
cd /var/www/ wget https://releases.wikimedia.org/mediawiki/1.41/mediawiki-1.41.0.tar.gz
Una vez descargado, extrae el código fuente con el siguiente comando. A continuación, renombra el directorio extraído a mediawiki. Así, el directorio DocumentRoot para MediaWiki estará en /var/www/mediawiki.
tar -xvzf mediawiki-*.tar.gz mv mediawiki-*/ mediawiki/
Por último, cambia la propiedad del directorio /var/www/mediawiki al usuario www-data y cambia el permiso a 0755.
sudo chown -R www-data:www-data /var/www/mediawiki sudo chmod 755 /var/www/mediawiki
Configurar el host virtual Apache
Ahora que has descargado el código fuente de MediaWiki, en esta sección crearás un nuevo archivo de host virtual de Apache para ejecutar MediaWiki. Así que asegúrate de que tienes el nombre de dominio apuntando a la dirección IP de tu servidor. Para producción, adquiere el dominio público, o también puedes utilizar el nombre de dominio local.
Antes de empezar, activa el módulo de reescritura de Apache con el siguiente comando.
sudo a2enmod rewrite
Ahora crea una nueva configuración de host virtual Apache/etc/apache2/sites-available/mediawiki.conf con el comando del editor nano que aparece a continuación.
sudo nano /etc/apache2/sites-available/mediawiki.conf
Introduce la siguiente configuración y asegúrate de cambiar la opción ServerName con tu nombre de dominio y la ruta de los registros de acceso y error.
<VirtualHost *:80> ServerName wiki.hwdomain.io ServerAdmin [email protected] DocumentRoot /var/www/mediawiki ErrorLog /var/log/apache2/wiki.hwdomain.io_error.log CustomLog /var/log/apache2/wiki.hwdomain.io_access.log combined <Directory /var/www/mediawiki/> Options FollowSymlinks AllowOverride All Require all granted </Directory> </VirtualHost>
Guarda el archivo y sal del editor.
A continuación, activa el archivo de host virtual mediawiki.conf y verifica tu sintaxis de Apache con el comando siguiente. Si la sintaxis de Apache es correcta, verás una salida como Sintaxis OK.
sudo a2ensite mediawiki.conf sudo apachectl configtest
Por último, reinicia el servidor web Apache para aplicar el nuevo host virtual para MediaWiki. Una vez reiniciado, tu instalación de MediaWiki debería estar lista.
sudo systemctl restart apache2
Asegurar MediaWiki con HTTPS
Ahora que has creado una configuración de host virtual Apache para MediaWiki, vamos a asegurar tu instalación con HTTPS mediante Certbot y letsencrypt. Esto sólo es aplicable si utilizas el dominio público, pero si utilizas el dominio local, puedes generar certificados autofirmados y aplicar el HTTPS manualmente.
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
Una vez completada la instalación, ejecuta el comando certbot que aparece a continuación para generar certificados SSL/TLS para tu nombre de dominio MediaWiki. Asegúrate de cambiar el 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 wiki.hwdomain.io
Una vez finalizado el proceso, tu certificado estará disponible en el directorio /etc/letsencrypt/live/domain.com, mientras que tu host virtual también estará configurado con HTTPS.
Instalar MediaWiki
Abre tu navegador web preferido y visita tu nombre de dominio, por ejemplo http://wiki.hwdomain.io/. Si todo va bien, deberías ver la página de bienvenida de MediaWiki. Haz clic en el enlace Configurar la wiki.
Selecciona el idioma por defecto para tu MediaWiki y haz clic en Continuar.
Para las comprobaciones del entorno, asegúrate de que tu sistema cumple con los requisitos de MediaWiki. A continuación, vuelve a hacer clic en Continuar.
Selecciona la base de datos como MariaDB e introduce tu nombre, usuario y contraseña. A continuación, haz clic en Continuar.
A continuación, introduce tu nombre de usuario, correo electrónico y contraseña de administrador para MediaWiki, y haz clic en Continuar.
Para los ajustes adicionales, selecciona el tema por defecto que deseas utilizar, y haz clic en Continuar para proceder con la instalación.
Haz clic en Continuar para confirmar la instalación de MediaWiki.
Una vez finalizada la instalación, el archivo LocalSettings. php se descargará automáticamente en tu ordenador local y verás una instrucción para subir el archivo a tu directorio de instalación de MediaWiki.
Vuelve a tu terminal y ejecuta el siguiente comando para crear un nuevo archivo LocalSettings .php.
sudo -u www-data nano /var/www/mediawiki/LocalSettings.php
Abre el archivo LocalSettings.php que has descargado, y copia y pega el código PHP en tu servidor. A continuación, guarda el archivo y sal.
Vuelve a tu navegador y haz clic en el enlace para entrar en la wiki. Verás la página de inicio por defecto de MediaWiki que has instalado.
Conclusión
¡Enhorabuena! Ya has instalado con éxito MediaWiki en el servidor Debian 12. Has instalado MediaWiki con la pila LAMP (Apache, MariaDB y PHP) y asegurado MediaWiki con HTTPS de Letsencrypt.