Cómo configurar Textpattern CMS en CentOS 8

Textpattern es un sistema de gestión de contenidos PHP gratuito y de código abierto. Es bastante ligero, rápido y fácil de usar, a la vez que proporciona una personalización decente a través de temas y plugins. En esta guía, instalaremos Textpattern en un sistema CentOS 8 fresco.

Requisitos

  • Un sistema CentOS 8 nuevo en el que tengas acceso al usuario root o a cualquier usuario con privilegios sudo.
  • Un nombre de dominio registrado que apunte a tu servidor.

Si has iniciado sesión como usuario sudo, cambia a root para esta configuración:

sudo su -

Establece la variable de entorno $VISUAL a un editor de texto de tu preferencia. Por ejemplo, para utilizar nano:

echo "export VISUAL=nano" >> ~/.bash_profile
. ~/.bash_profile

Paso 1: Instalación del software necesario

Primero, actualiza tu sistema:

dnf update -y

A continuación, instala wget, tar, Apache, PHP, las extensiones de PHP necesarias, MariaDB y las utilidades para gestionar SELinux:

dnf install -y wget tar httpd mariadb-server php php-xml php-mysqli php-json php-mbstring php-zip php-zlib policycoreutils-python-utils

Asegúrate de que los servicios Apache y MariaDB están habilitados y en funcionamiento:

systemctl enable --now httpd.service mariadb.service

Como los repositorios de CentOS 8 no incluyen certbot, utilizaremos un script, certbot-auto, para instalarlo. Descarga e instala certbot-auto como se indica a continuación:

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto

A continuación, utiliza el siguiente comando para instalar certbot:

certbot-auto --install-only

Introduce ‘y’ cuando te lo pida dnf para instalar las dependencias.

Reinicia el servicio de Apache:

systemctl restart httpd.service

Paso 2: Instalación de Textpattern CMS

Copia el enlace de descarga (en formato .tar.gz) de la última versión de Textpattern desde sus Releases en Github y descárgalo en tu servidor con wget de la siguiente manera:

wget https://github.com/textpattern/textpattern/releases/download/4.7.3/textpattern-4.7.3.tar.gz

A continuación, descomprime el archivo y mueve su contenido al directorio raíz de la web:

tar -xzf textpattern*.tar.gz
rm -f textpattern*.tar.gz
mv textpattern* /var/www/html/textpattern

Para que Textpattern funcione correctamente, necesita acceso de escritura a ciertos directorios. Para conceder ese acceso, dale al usuario del sistema Apache la propiedad de todo el directorio:

chown -R apache:apache /var/www/html/textpattern

Y utiliza los siguientes comandos para etiquetar la estructura de directorios con los contextos SELinux adecuados:

semanage fcontext -a -t httpd_sys_content_t "/var/www/html/textpattern(/.*)?"
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/textpattern/themes(/.*)?"
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/textpattern/images(/.*)?"
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/textpattern/files(/.*)?"
restorecon -Rv /var/www/html

Paso 3: Configuración de la base de datos

Comienza ejecutando el script mysql_secure_installation para realizar las mejoras básicas de seguridad:

mysql_secure_installation

Responde a las preguntas como se muestra a continuación y asegúrate de elegir una contraseña segura para el usuario root:

Enter current password for root (enter for none): 
Set root password? [Y/n] y
New password: your_password
Re-enter new password: your_password
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

A continuación, crearemos una base de datos y un usuario que utilizará Textpattern. Accede al shell de MySQL con:

mysql -u root -p

Introduce tu contraseña de root, y luego ejecuta las siguientes sentencias. Asegúrate de sustituir textpattern_user_password por una contraseña adecuada.

MariaDB [(none)]> CREATE DATABASE textpattern_db;
MariaDB [(none)]> CREATE USER textpattern_user IDENTIFIED BY 'textpattern_user_password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON textpattern_db.* TO textpattern_user;
MariaDB [(none)]> \q

Paso 4: Configuración de Apache

En primer lugar, habilita el tráfico HTTP y HTTPS a través del cortafuegos del host:

firewall-cmd --add-service http --add-service https --permanent
firewall-cmd --reload

A continuación, crea un nuevo host virtual para tu sitio Textpattern:

$VISUAL /etc/httpd/conf.d/textpattern.conf

E introduce la siguiente configuración, sustituyendo tu_dominio por tu nombre de dominio.

<VirtualHost *:80>
DocumentRoot "/var/www/html/textpattern"
ServerName your_domain
<Directory "/">
AllowOverride All
</Directory>
</VirtualHost>

Guarda y sal, y luego carga la nueva configuración:

systemctl reload httpd.service

Para obtener un certificado SSL para tu dominio y configurar Apache para que utilice HTTPS, emite el siguiente comando:

certbot-auto --apache -d "your_domain" -m "[email protected]" --redirect

Este comando realizará una serie de tareas:

  • Obtener un certificado para tu dominio (guardado en /etc/letsencrypt/your_domain/).
  • Crea un archivo de configuración de Apache llamado textpattern-le-ssl.conf.
  • Edita textpattern . conf para redirigir todas las peticiones HTTP a HTTPS.

Paso 5: Configuración de Textpattern CMS

Tu instalación de Textpattern debería ser ahora accesible, pero aún no está configurada. Accede a https://your_domain/textpattern/setup/ para iniciar el instalador web. Después de elegir un idioma, introduce los detalles de la base de datos:

  • Nombre de usuario de MySQL: textpattern_user
  • Contraseña de MySQL: Introduce la contraseña elegida para textpattern_user durante el paso 2.
  • Servidor MySQL: localhost
  • Base de datos MySQL: textpattern_db
  • Prefijo de la tabla: deja este campo en blanco

El instalador comprobará las credenciales de la base de datos que has introducido antes de generar la configuración correspondiente. Crea el archivo necesario:

$VISUAL /var/www/html/textpattern/textpattern/config.php

Pega la configuración generada, guarda el archivo y sal. Pasa al siguiente paso del instalador web, donde se te pedirá que introduzcas la información de la cuenta de administrador del CMS y la configuración del sitio. Una vez hecho esto, elimina el directorio de configuración:

rm -rf /var/www/html/textpattern/textpattern/setup

Tu sitio Textpattern ya está listo para ser utilizado.

Más información

También te podría gustar...