Instalación CMS · 8 min read · Dec 21, 2025
Cómo instalar Concrete5 CMS con Apache y SSL gratuito de Let's Encrypt en Ubuntu 20.04

Concrete5 es un sistema de gestión de contenido de código abierto utilizado para publicar contenido en internet. Está escrito en PHP y utiliza MariaDB como backend de base de datos. Proporciona un constructor fácil de usar que te ayuda a crear páginas y contenido a través del navegador web. Es flexible, seguro, listo para móviles y se basa en la arquitectura Modelo-Vista-Controlador. Ofrece un rico conjunto de características que incluyen, editor de contenido WYSIWYG, gestor de medios, contenido de arrastrar y soltar, edición en contexto y muchas más.
En esta publicación, te mostraremos cómo instalar Concrete5 CMS con Apache y SSL de Let’s Encrypt en un servidor Ubuntu 20.04.
Requisitos
- Un servidor que ejecute Ubuntu 20.04.
- Un nombre de dominio válido apuntado a la IP del servidor.
- Una contraseña de root configurada en tu servidor.
Comenzando
Primero, necesitarás actualizar el índice de paquetes APT a la última versión. Puedes actualizarlo con el siguiente comando:
apt-get update -yUna vez que el índice de APT esté actualizado, puedes proceder al siguiente paso.
Instalar Apache, MariaDB y PHP
A continuación, necesitarás instalar el servidor web Apache, el servidor de base de datos MariaDB, PHP y otras extensiones de PHP en tu servidor. Puedes instalar todos ellos usando el siguiente comando:
apt-get install apache2 mariadb-server php libapache2-mod-php libapache2-mod-php php-common php-mbstring php-xmlrpc php-soap php-gd php-xml php-intl php-mysql php-cli php-ldap php-zip php-curl -yUna vez que todos los paquetes estén instalados, edita el archivo php.ini y establece los valores deseados:
nano /etc/php/7.4/apache2/php.iniCambia las siguientes líneas:
file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 64M
date.timezone = Asia/KolkataGuarda y cierra el archivo cuando termines, luego reinicia el servicio de Apache para aplicar los cambios:
systemctl restart apache2Una vez que hayas terminado, puedes proceder al siguiente paso.
Crear una base de datos Concrete5
A continuación, necesitarás crear una base de datos y un usuario para Concrete5. Primero, inicia sesión en MariaDB con el siguiente comando:
mysqlUna vez dentro, crea una base de datos y un usuario con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE concrete5;
MariaDB [(none)]> CREATE USER 'concrete5user'@'localhost' IDENTIFIED BY 'password';A continuación, otorga todos los privilegios a la base de datos Concrete5 con el siguiente comando:
MariaDB [(none)]> GRANT ALL ON concrete5.* TO 'concrete5user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;Luego, actualiza los privilegios y sal de la consola de MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;Una vez que hayas terminado, puedes proceder al siguiente paso.
Descargar Concrete5 CMS
Primero, ve al sitio web de Concrete5 CMS, copia la URL de la última versión de Concrete5 y descárgala con el siguiente comando:
wget --trust-server-names https://www.concrete5.org/download_file/-/view/115589/ -O concrete5.zipUna vez que se complete la descarga, extrae el archivo descargado con el siguiente comando:
unzip concrete5.zipA continuación, mueve el directorio extraído al directorio raíz web de Apache usando el siguiente comando:
mv concrete5-* /var/www/html/concrete5Luego, establece los permisos y la propiedad adecuados para el directorio concrete5 con el siguiente comando:
chown -R www-data:www-data /var/www/html/concrete5/
chmod -R 755 /var/www/html/concrete5/Una vez que hayas terminado, puedes proceder al siguiente paso.
Configurar Apache para Concrete5 CMS
A continuación, necesitarás crear un archivo de configuración de host virtual de Apache para Concrete5 CMS. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/concrete5.confAgrega las siguientes líneas:
ServerAdmin [email protected]
DocumentRoot /var/www/html/concrete5/
ServerName concrete5.example.com
Options +FollowSymlinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Guarda y cierra el archivo, luego habilita el host virtual de Apache y el módulo de reescritura con el siguiente comando:
a2ensite concrete5.conf
a2enmod rewriteA continuación, reinicia el servicio de Apache para aplicar los cambios:
systemctl restart apache2También puedes verificar el estado del servicio de Apache usando el siguiente comando:
systemctl status apache2Deberías obtener la siguiente salida:
? apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2021-05-15 15:00:03 UTC; 4s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 15566 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 15585 (apache2)
Tasks: 6 (limit: 2353)
Memory: 13.5M
CGroup: /system.slice/apache2.service
??15585 /usr/sbin/apache2 -k start
??15586 /usr/sbin/apache2 -k start
??15587 /usr/sbin/apache2 -k start
??15588 /usr/sbin/apache2 -k start
??15589 /usr/sbin/apache2 -k start
??15590 /usr/sbin/apache2 -k start
May 15 15:00:03 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...En este punto, el servidor web Apache está configurado para alojar Concrete5 CMS. Ahora puedes proceder al siguiente paso.
Acceder a la interfaz web de Concrete5 CMS
Ahora, abre tu navegador web y accede a la interfaz web de Concrete5 CMS usando la URL http://concrete5.example.com. Serás redirigido a la siguiente página:

Selecciona tu idioma y haz clic en el botón Flecha. Deberías ver la siguiente página:

Asegúrate de que todas las bibliotecas requeridas estén instaladas, luego haz clic en el botón Continuar con la instalación, deberías ver la siguiente página:

Aquí, proporciona el nombre de usuario de Admin, la contraseña, el nombre de usuario de la base de datos, la contraseña y el nombre de la base de datos, luego haz clic en el botón Instalar Concrete5 para comenzar la instalación. Una vez que la instalación se complete, deberías ver la siguiente página:


Ahora, haz clic en el botón Editar tu sitio, deberías ver el panel de control de Concrete5 en la siguiente página:

Asegurar Concrete5 con SSL de Let’s Encrypt
A continuación, se recomienda asegurar tu sitio web con SSL de Let’s Encrypt. Primero, instala el cliente Certbot usando el siguiente comando:
apt-get install python3-certbot-apache -yUna vez instalado, ejecuta el siguiente comando para asegurar tu sitio web con SSL de Let’s Encrypt:
certbot --apache -d concrete5.example.comSe te pedirá que proporciones tu correo electrónico y aceptes los términos del servicio como se muestra a continuación:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for concrete5.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/concrete5-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/concrete5-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/concrete5-le-ssl.confA continuación, selecciona si deseas o no redirigir el tráfico HTTP a HTTPS como se muestra a continuación:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2Escribe 2 y presiona Enter para instalar el SSL de Let’s Encrypt para tu sitio web:
Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/concrete5.conf to ssl vhost in /etc/apache2/sites-available/concrete5-le-ssl.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://concrete5.example.com
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=concrete5.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/concrete5.example.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/concrete5.example.com/privkey.pem
Your cert will expire on 2020-10-23. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-leAhora, puedes acceder a Concrete 5 de forma segura usando la URL https://concrete5.example.com.
Conclusión
En la guía anterior, aprendiste cómo instalar Concrete5 CMS con Apache y SSL de Let’s Encrypt en Ubuntu 20.04. Ahora puedes publicar tu contenido en internet fácilmente usando el CMS Concrete5. No dudes en preguntarme si tienes alguna pregunta.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.