Cómo instalar TYPO3 CMS en Ubuntu 22.04
TYPO3 es un sistema de gestión de contenidos gratuito, de código abierto y de categoría empresarial. Está escrito en PHP y combina código abierto con fiabilidad y escalabilidad. Es multiplataforma y puede instalarse en los principales sistemas operativos, como Windows, Linux, macOS, etc. Está diseñado para usuarios principiantes, por lo que puedes personalizarlo y ampliarlo fácilmente sin escribir código. Es sencillo, receptivo, apto para móviles y una gran opción para poner en marcha rápidamente tu sitio web.
Este tutorial te mostrará cómo instalar TYPO3 CMS con Let’s Encrypt SSL en Ubuntu 22.04.
Requisitos previos
- Un servidor que ejecute Ubuntu 22.04.
- Un nombre de dominio válido está vinculado a la IP de tu servidor.
- Una contraseña de root está configurada en el servidor.
Cómo empezar
En primer lugar, se recomienda actualizar los paquetes de tu sistema con la última versión. Puedes actualizar todos los paquetes ejecutando el siguiente comando:
apt update -y apt upgrade -y
Una vez actualizados todos los paquetes, puedes pasar al siguiente paso.
Instalar Apache, PHP y el servidor MariaDB
A continuación, tendrás que instalar el servidor web Apache, MariaDB, PHP y otras extensiones de PHP en tu servidor. Puedes instalarlos todos con el siguiente comando:
apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-gmp php-curl php-intl php-mbstring php-xmlrpc php-mysql php-gd php-xml php-cli php-zip curl git gnupg2 -y
Después de instalar todos los paquetes, edita el archivo php.ini y cambia algunos ajustes recomendados:
nano /etc/php/8.1/apache2/php.ini
Cambia las siguientes líneas:
memory_limit = 256M upload_max_filesize = 100M post_max_size = 100M max_execution_time = 360 max_input_vars = 1500 date.timezone = UTC
Guarda y cierra el archivo, luego reinicia el servicio Apache para aplicar los cambios:
systemctl restart apache2
Crear una base de datos para TYPO3
A continuación, tendrás que crear una base de datos y un usuario para TYPO3. En primer lugar, inicia sesión en el intérprete de comandos MariaDB con el siguiente comando:
mysql
Una vez iniciada la sesión, crea una base de datos y un usuario con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE typo3db;
A continuación, concede todos los privilegios a la typo3db con el siguiente comando:
MariaDB [(none)]> GRANT ALL ON typo3db.* TO 'typo3user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
A continuación, vacía los privilegios y sal de MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
En este punto, tu base de datos MariaDB está configurada. Ya puedes pasar al siguiente paso.
Instalar TYPO3 CMS
En primer lugar, visita el sitio web oficial de TYPO3 y descarga la última versión de TYPO3 utilizando el comando curl:
curl -L -o typo3_src.tgz https://get.typo3.org/11
Una vez finalizada la descarga, extrae el archivo descargado con el siguiente comando:
tar -xvzf typo3_src.tgz
A continuación, mueve el directorio extraído al directorio raíz web de Apache:
mv typo3_src-11.5.15 /var/www/html/typo3
A continuación, da el permiso y la autorización adecuados con el siguiente comando:
chown -R www-data:www-data /var/www/html/typo3 chmod -R 775 /var/www/html/typo3
Una vez que hayas terminado, puedes pasar al siguiente paso.
Crear un host virtual Apache para TYPO3
A continuación, crea un archivo de configuración de host virtual de Apache para alojar TYPO3 CMS. Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/typo3.conf
Añade las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/typo3 ServerName typo3.example.com <Directory /var/www/html/typo3> Options +FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Guarda y cierra el archivo, luego habilita el archivo de configuración del host virtual y el módulo de reescritura con el siguiente comando:
a2ensite typo3.conf a2enmod rewrite
A continuación, reinicia el servicio Apache para aplicar los cambios:
systemctl restart apache2
En este punto, el servidor web Apache está configurado para servir a TYPO3. Ya puedes pasar al siguiente paso.
Acceder a TYPO3 CMS
Si estás instalando TYPO3 en un servidor nuevo, tendrás que crear un archivo FIRST_INSTALL dentro del directorio raíz web de TYPO3. Puedes crearlo con el siguiente comando:
touch /var/www/html/typo3/FIRST_INSTALL chown -R www-data:www-data /var/www/html/typo3/FIRST_INSTALL
Ahora, abre tu navegador web y accede a TYPO3 utilizando la URL http://typo3.example.com. Deberías ver la siguiente página:
Proporciona el nombre de usuario, la contraseña y el host de tu base de datos y haz clic en el botón Continuar. Deberías ver la página siguiente:
Selecciona el nombre de tu base de datos TYPO3 y pulsa el botón Continuar. Deberías ver la siguiente página:
A continuación, proporciona tu nombre de usuario de administrador, contraseña, nombre del sitio y haz clic en el botón Continuar. Se te redirigirá a la página de inicio de sesión de TYPO3:
Introduce tu nombre de usuario y contraseña de administrador y haz clic en el botón Iniciar sesión. Deberías ver el panel de TYPO3 en la siguiente página:
Proteger TYPO3 con Let’s Encrypt
Asegurar tu sitio web con Let’s Encrypt Free SSL es una buena idea. Primero, instala el cliente Certbot para instalar y gestionar el SSL. Puedes instalarlo con el siguiente comando:
apt-get install python3-certbot-apache -y
Una vez instalado, ejecuta el siguiente comando para proteger tu sitio web con Let’s Encrypt SSL:
certbot --apache -d typo3.example.com
Se te pedirá que proporciones tu correo electrónico y aceptes las condiciones 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 typo3.example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/typo3-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/typo3-le-ssl.conf Enabling available site: /etc/apache2/sites-available/typo3-le-ssl.conf
A 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): 2
Escribe 2 y pulsa Intro para instalar Let’s Encrypt SSL para tu sitio web:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/typo3.conf to ssl vhost in /etc/apache2/sites-available/typo3-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://typo3.example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=typo3.example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/typo3.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/typo3.example.com/privkey.pem Your cert will expire on 2022-12-07. 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-le
Ahora, puedes acceder al CMS TYPO3 de forma segura utilizando la URL https://typo3.example.com.
Conclusión
¡Enhorabuena! Has instalado correctamente TYPO3 CMS y lo has protegido con Let’s Encrypt SSL en Ubuntu 22.04. Ahora puedes crear tu sitio web y blog fácilmente a través de un navegador web. No dudes en preguntarme si tienes alguna duda.