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.

También te podría gustar...