Actualizar el Servidor Perfecto ISPConfig de Ubuntu 20.04 a Ubuntu 22.04

Este tutorial te llevará a través de la actualización de un servidor gestionado por ISPConfig de Ubuntu 20.04 (Focal Fossa) a Ubuntu 22.04 (Jammy Jellyfish). Esta guía sirve tanto para configuraciones monoservidor como multiservidor. Sólo tienes que repetir los mismos pasos en cada servidor.

Advertencia: mailman2 no está soportado en Ubuntu 22.04, y mailman3 no está (todavía) soportado por ISPConfig.

Ten en cuenta que el proceso de actualización puede causar algún tiempo de inactividad.

Requisitos previos

  • Asegúrate de que has iniciado sesión como usuario root

1. Actualizar el sistema de Ubuntu 20.04 a Ubuntu 22.04

Consulta la guía para actualizar el propio Ubuntu: https://www.howtoforge.com/ubuntu-20-04-to-22-04-upgrade/

2. Limpiar mailman

Si se instaló mailman2, debemos renombrar el directorio de datos para evitar conflictos de transporte de correo.

mv /var/lib/mailman /var/lib/mailman-bk

A continuación, ejecuta estos comandos

mkdir -p /var/lib/mailman/data/
touch /var/lib/mailman/data/{aliases,transport-mailman,virtual-mailman}
postmap /var/lib/mailman/data/{aliases,transport-mailman,virtual-mailman}

para crear algunos archivos vacíos en su lugar.

3. Instalar los paquetes PHP que faltan

Ubuntu 22.04 viene con PHP 8.1 como versión de PHP por defecto, así que tenemos que instalarlo (junto con curl, necesario más adelante):

apt -y install php8.1 php8.1-cli php8.1-cgi php8.1-fpm php8.1-gd php8.1-mysql php8.1-imap php8.1-curl php8.1-intl php8.1-pspell php8.1-sqlite3 php8.1-tidy php8.1-xsl php8.1-zip php8.1-mbstring php8.1-soap php8.1-opcache php8.1-common php8.1-readline php8.1-xml curl

No olvides ajustar los archivos de configuración de PHP si es necesario.

Si aún quieres utilizar PHP 7.4 para algunos sitios web, instálalo como versión adicional siguiendo https://www.howtoforge.com/tutorial/how-to-install-php-7-for-ispconfig-3-from-debian-packages-on-debian-8-and-9/

4. Ejecuta una actualización forzada de ISPConfig

Para reconfigurar los servicios de forma que estén correctamente configurados para Debian 11, necesitamos ejecutar el script de actualización de ISPConfig y dejar que reconfigure los servicios. Ejecuta el script desde la línea de comandos con

ispconfig_update.sh --force

Sigue los pasos de actualización. Cuando te pregunte si quieres reconfigurar los servicios o no, pulsa intro. Si te saltas este paso respondiendo «no», ISPConfig no configurará tus servicios para Ubuntu 22.04 y algunos servicios podrían estar rotos.

5. Actualiza las rutas para usar PHP 8.1 como versión PHP por defecto

Como PHP 8.1 es la versión PHP por defecto que viene con Ubuntu 22.04, necesitamos actualizar las rutas PHP en ISPConfig.

Entra en el panel como usuario administrador y luego ve a Sistema -> Configuración del Servidor -> servidor1.ejemplo.com (el nombre de host de tu servidor) -> Web -> Configuración PHP

Sustituye las referencias a 7.4 por 8.1, para que quede así:

Apache php.ini path: /etc/php/8.1/apache2/php.ini
CGI php.ini path: /etc/php/8.1/cgi/php.ini
PHP-FPM init script: php8.1-fpm
PHP-FPM php.ini path: /etc/php/8.1/fpm/php.ini
PHP-FPM pool directory: /etc/php/8.1/fpm/pool.d
PHP-FPM socket directory: /var/lib/php8.1-fpm

Ten en cuenta que todos los sitios web de este servidor que utilicen la versión de PHP «Predeterminada» utilizarán ahora PHP 8.1 en lugar de la versión antigua.

También tenemos que dejar que el sistema utilice PHP 8.1 como gestor PHP por defecto para las acciones que no sean de ISPConfig. Para ello, ejecuta:

update-alternatives --config php

Si necesitas seleccionar una versión de PHP, selecciona PHP 8.1. A continuación, ejecuta

update-alternatives --config php-cgi

Si necesitas seleccionar una versión de PHP, selecciona también PHP 8.1. Por último, ejecuta

update-alternatives --config php-fpm.sock

Si necesitas seleccionar una versión de PHP, vuelve a seleccionar PHP 8.1.

Para servidores con Apache2 instalado, tenemos que desactivar PHP-FPM 7.4 como gestor de PHP por defecto y activar PHP-FPM 8.1 ejecutando estos comandos:

a2disconf php7.4-fpm
a2enconf php8.1-fpm
systemctl restart apache2

6. Actualizar phpMyAdmin (opcional)

Si tienes instalado phpMyAdmin, te recomendamos que actualices tu instalación, ya que muchos usuarios tienen instalada una versión obsoleta.

Ejecuta este comando para ejecutar nuestro script de actualización de phpMyAdmin:

curl https://git.ispconfig.org/ispconfig/tools/-/raw/master/auto_update_phpmyadmin.sh -sL | sh

Puedes mantener phpMyAdmin actualizado automáticamente a partir de ahora utilizando este mismo script. Consulta este mensaje del foro para obtener más información: https://www.howtoforge.com/community/threads/keep-your-phpmyadmin-installation-up-to-date-automatically.88495/

¡Ya está! Si tienes algún problema, abre un hilo de conversación en el foro.

Scroll al inicio