Capítulo 5. Problemas que debe tener en cuenta para buster

Tabla de contenidos

5.1. Actualizar elementos específicos para buster
5.1.1. Opción de montaje hidepid de procfs no soportada
5.1.2. ypbind no puede iniciarse con -no-dbus
5.1.3. sshd falla al autenticar
5.1.4. Los demonios no arrancan o el sistema parece colgarse durante el arranque
5.1.5. Migración de los nombres de interfaz de red antiguos
5.1.6. Configuración de módulos para interfaces agrupados y «dummy»
5.1.7. Versión por omisión de OpenSSL e incremento del nivel de seguridad
5.1.8. Algunas aplicaciones no funcionan con GNOME en Wayland
5.1.9. Paquetes obsoletos notables
5.1.10. Componentes obsoletos de buster
5.1.11. Cosas a hacer después de la actualización y antes de reiniciar
5.1.12. Los paquetes relacionados con SysV init ya no son necsearios
5.2. Limitaciones en el soporte de seguridad
5.2.1. Estado de seguridad en los navegadores web y sus motores de render
5.2.2. Paquetes basados en Go
5.3. Problemas específicos de paquetes
5.3.1. Cambio en las semánticas del uso de variables de entorno para su
5.3.2. Reindexación necesaria en bases de datos PostgreSQL existentes
5.3.3. mutt y neomutt
5.3.4. Acceso de la configuración de GNOME sin ratón
5.3.5. gnome-disk-utility fails to change LUKS password causing permanent data loss (buster 10.0 only)
5.3.6. evolution-ews se ha eliminado, y se eliminarán los buzones de correo que utilicen Exchange, Office365 o un servidor de Outlook
5.3.7. El instalador Calamares deja claves de cifrado de disco legibles
5.3.8. S3QL URL changes for Amazon S3 buckets

Algunas veces los cambios tienen efectos colaterales que no podemos evitar, o aparecen fallos en otro lugar. A continuación se documentan los problemas que conocemos. Puede leer también la fe de erratas, la documentación de los paquetes relevantes, los informes de fallos y otra información mencionada en Sección 6.1, “Para leer más”.

5.1. Actualizar elementos específicos para buster

Esta sección cubre los elementos relacionados con la actualización de stretch a buster

5.1.1. Opción de montaje hidepid de procfs no soportada

Se han detectado ciertos problemas con las opción de montaje hidepid para /proc y las versiones recientes de systemd, los desarrolladores de systemd consideran ésta una configuración no soportada. Se recomienda a los usuarios que han modificado /etc/fstab para activar estas opciones que las deshabiliten antes de la actualización, para asegurar que las sesiones login funcionen en buster. (Una alternativa posible para re-activarlas está descrita en la página del wiki Hardening.)

5.1.2. ypbind no puede iniciarse con -no-dbus

Las opciones por omisión de ypbind han cambiado. Sin embargo, si ha modificado este archivo los valores anteriores no se actualizarán y debe asegurarse de que la opción YPBINDARGS= en /etc/default/nis no incluye -no-dbus. Si la opción -no-dbus está presente, ypbind no podrá arrancar y es posible que no pueda acceder al sistema. Para más información consulte la errata bug #906436.

5.1.3. sshd falla al autenticar

Las semánticas de las opciones PubkeyAcceptedKeyTypes y HostbasedAcceptedKeyTypes de sshd han cambiado. Estas opciones ahora especifican los algoritmos de firma que se aceptan por los respectivos mecanismos de autenticación, mientras que antes especificaban los tipos de clave aceptados. Esta distinción es importante cuando se utiliza el algoritmo de firma RSA/SHA2 rsa-sha2-256, rsa-sha2-512 y sus certificados equivalentes. Las configuraciones que sobreescriben estas opciones pero omiten los nombres de estos algoritmos pueden causar fallos de autenticación inesperados.

No se requiere una acción para las configuraciones que aceptan los valores por omisión para estas opciones.

5.1.4. Los demonios no arrancan o el sistema parece colgarse durante el arranque

El sistema puede bloquearse durante minutos e incluso hors si el susbistema de información aleatoria no está suficientemente inicializado (random: crng init done). Esto sucede debido a la necesidad de systemd e entropía durante el arranque y el núcleo tratando estas llamadas como bloqueantes cuando la entropía disponible es baja. Para sistemas amd64 que soportan la instrucción RDRAND este problema se puede evitar si el núcleo de Debian utiliza esta instrucción por omisión (CONFIG_RANDOM_TRUST_CPU).

Los sistemas que no sean amd64 y algunos tipos de máquinas virtuales y algunos tipos de máquinas virtuales deben disponer de diferentes fuentes de entropía para poder arrancar rápidamente. El programa haveged ha sido elegido para ésto por el proyecto del Instalador de Debian y puede ser una opción válida si no hay entropía hardware en el sistema. En máquinas virtuales puede considerar reenviar la entropía del huésped a la máquina virtual a través de virtio_rng.

Si lee esto después de actualizar a sistemas remotos de buster, envíe pings al sistema en la red de forma contínua puesto que ésto añade entropía a la fuente de información aleatoria y el sistema será alcanzable por ssh de nuevo.

Consulte el wiki y al resumen de DLange de este problema para ver más opciones.

5.1.5. Migración de los nombres de interfaz de red antiguos

Si su sistema se actualizó de una versión anterior y aún utiliza los nombres de interfaces de red antiguos que quedaron obsoletos en stretch (como eth0 o wlan0), debería tener en cuenta que el mecanismo de definir sus nombres a través de /etc/udev/rules.d/70-persistent-net.rules ya no está soportado oficialmente por udev en buster (aunque puede funcionar en algunos casos). Para evitar el problema de que su equipo pierda conectividad durante la actualización de buster, se recomienda que migre de forma anticipada al nuevo esquema de nombres (habitualmente esto significa utilizar los nombres como enp0s1 o wlp2s5, que incorporan nombre del bus PCI y números d eranura). Tenga cuidado de actualizar cualquier nombre de interfaz que se haya introducido en otros elementos de configuración como cortafuegos, ifupdown, etc.

The alternative is to switch to a supported mechanism for enforcing the old naming scheme, such as a systemd .link file (see systemd.link(5)). The net.ifnames=0 kernel commandline option might also work for systems with only one network interface (of a given type).

Para encontrar los nombres del nuevo formato que se van a utilizar debe primero encontrar los nombres actuales de los interfaces relevantes:

$ echo /sys/class/net/[ew]*
    

Para cada uno de estos nombres, compruebe si se están utilizando en los archivos de configuración y qué nombre udev prefiere utilizar para ellos:

$ sudo rgrep -w eth0 /etc
$ udevadm test-builtin net_id /sys/class/net/eth0 2>/dev/null
    

This should give enough information to devise a migration plan. (If the udevadm output includes an onboard or slot name, that takes priority; MAC-based names are normally treated as a fallback, but may be needed for USB network hardware.)

Una vez esté preparado para hacer el cambio, deshabilite 70-persistent-net.rules bien renombrándolo o bien comentando las líneas individuales. En máquinas virtuales tiene que eliminar los archivos /etc/systemd/network/99-default.link y (si utiliza interfaces de red virtio) /etc/systemd/network/50-virtio-kernel-names.link. Después reconstruya initrd:

$ sudo update-initramfs -u
    

y reinicie. Su sistema debería utilizar ahora los nombres de interfaces en el nuevo estilo. Ajuste cualquier configuración pendiente y vuelva a probar su sistema.

See the wiki, upstream documentation, and the udev README.Debian for further information.

5.1.6. Configuración de módulos para interfaces agrupados y «dummy»

Los sistemas que utilizan interfaces con canales agrupados o «dummy», como por ejemplo en los sistemas que están configurados como enrutadores, pueden tener problemas durante la actualización a buster. Las nuevas versiones de systemd instalan un archivo /lib/modprobe.d/systemd.conf (dirigido a simplificar la configuración via systemd-networkd) que contiene las líneas

 options bonding max_bonds=0
 options dummy numdummies=0
    

Los administradores que dependen de valores distintos tienen que asegurarse que están definidos de la forma correcta para que tengan precedencia. Un archivo en /etc/modprobe.d tendrá precedencia sobre el mismo nombre bajo /lib/modprobe.d, pero los nombres se procesan en orden alfabético, por lo que /lib/modprobe.d/systemd.conf sigue y tiene precedencia sobre (por ejemplo) /etc/modprobe.d/dummy.conf. Asegúrese de que cualquier archivo de configuración local tiene un nombre que quede ordenado después de systemd.conf, como /etc/modprobe.d/zz-local.conf.

5.1.7. Versión por omisión de OpenSSL e incremento del nivel de seguridad

Siguiendo distintas recomendaciones de seguridad, la versión mínima de TLS por omisión se ha modificado de TLSv1 a TLSv1.2.

El nivel de seguridad por omisión de conexiones TLS se ha incrementado también de nivel 1 a nivel 2. Esto mueve el nivel de seguridad de 80 a 112 bits, y hace necesario utilizar claves RSA y DHE de 2048 o más bits, claves ECC de 224 o más bits, y SHA-2.

Los valores configurados para todo el sistema pueden modificarse en /etc/ssl/openssl.cnf. Algunas aplicaciones pueden tener también una forma específica para la aplicación para cambiar estos valores por omisión.

En el archivo de configuración /etc/ssl/openssl.cnf hay una línea MinProtocol y CipherString. El valor de CipherString también puede definir el nivel de seguridad. Puede encontrar información de los niveles de seguridad en la página de manual SSL_CTX_set_security_level(3ssl). La lista de cadenas válida para la versión mínima del protocolo pueden encontrarse en SSL_CONF_cmd(3ssl). Puede encontrar más información en ciphers(1ssl) y config(5ssl).

Puede modificar los valores por omisión del sistema a los valores anteriores cambiando /etc/ssl/openssl.cnf como se indica a continuación:

        MinProtocol = None
        CipherString = DEFAULT
      

Se recomienda que contacte con el sitio remoto si los valores por omisión provocan problemas.

5.1.8. Algunas aplicaciones no funcionan con GNOME en Wayland

GNOME en buster ha cambiado su servidor de pantalla por omisión de Xorg a Wayland (consulte Sección 2.2.11, “GNOME utiliza Wayland por omisión”). Algunas aplicaciones no se han actualizado para funciona correctamente en Wayland, esto incluye el popular gestor de paquetes synaptic, el método de entrada de chino simplificado, fcitx, y la mayor parte de las herramientas para grabaciń de pantalla. Debe acceder en una sesión GNOME en Xorg si quiere utilizar estos programas.

5.1.9. Paquetes obsoletos notables

A continuación se muestra una lista de los paquetes conocidos y notables que ahora están obsoletos (consulte Sección 4.8, “Paquetes obsoletos” para obtener una descripción).

La lista de paquetes obsoletos incluye:

  • Ya no se da soporte al paquete mcelog con las versiones del núcleo superiores a la 4.12. Puede utilizar rasdaemon como sustituto.

  • Ya no se incluye al paquete revelation, utilizado para almacenar contraseñas, en buster. keepass2puede importar los archivos de contraseñas XML previamente exportados de revelation. Asegúrese de exportar los datos de revelation antes de actualizar para evitar perder acceso a sus contraseñas.

  • El paquete phpmyadmin no está incluido en buster.

  • Se ha eliminado de buster ipsec-tools y racoon porque el código fuente no está actualizándose suficientemente rápido y no está adaptado a nuevas amenazas.

    Se recomienda a los usuarios a migrar a libreswan, que tiene un compatibilidad de protocolos más amplia y está manteniéndose de forma activa por sus desarrolladores.

    El paquete libreswan debería ser totalmente compatible en términos de protocolos de comunicación dado que implementa un superconjunto de los protocolos soportados por racoon.

  • El MTA sencillo ssmtp ya no se distribuye en buster. Esto se debe a que no valida actualmente certificados TLS. Para más información consulte bug #662960.

  • El paquete ecryptfs-utils no es parte de buster debido a una errata serie que aún no está arreglada (#765854). En el momento de escribir estas líneas no hay una recomendación disponible para los usuarios de eCryptfs, excepto no actualizar.

5.1.10. Componentes obsoletos de buster

Con la publicación de Debian 11 (nombre en clave bullseye) algunas funcionalidades estarán obsoletas. Los usuarios deben migrar a otras alternativas para evitar problemas al actualizar a Debian 11.

Esto incluye las siguientes funcionalidades:

  • Python 2 dejará de estar soportado por sus desarrolladores el 1 de enero del 2020. Debian espera dejar de distribuir python-2.7 en Debian 11. Los usuarios que tienen funcionalidades que dependen de python deberían preparar la migración a python3.

  • Icinga 1.x está fuera de soporte por los desarrolladores principales desde el 31 de diciembre de 2018. Mientras el paquete icinga esté instalado los usuarios pueden utilizar el ciclo de vida de buster para migrar a Icinga 2 (icinga2) y a Icinga Web 2 (icingaweb2). El paquete icinga2-classicui aún está disponible para usar la interfaz CGI web de Icinga 1.x CGI con Icinga 2, pero se va a eliminar el soporte de esta interfaz en Icinga 2.11. Debería utilizarse Icinga Web 2 en su lugar.

  • El gestor de listas Mailman versión 3 es una novedad de esta publicación. Se ha dividido mailman en distintos componentes: el componente core está disponible en el paquete mailman3 y el conjunto completo puede obtenerse a través del metapaquete mailman3-full.

    La versión antigua 2.1 de Mailman está aún disponible en esta publicación en el paquete mailman. Puede migrar una instalación existente a la nueva versión cuando lo desee. Se mantendrá el paquete versión 2.1 de Mailman en el futuro cercano, pero no se introducirán cambios importantes ni mejoras. Este paquete se eliminará de la primera publicación de Debian que se realice después de que los desarrolladores de Mailman dejen de dar soporte a esta rama.

    Se recomienda a todos que actualicen a Mailman 3, la versión más reciente y que está desarrollándose de forma activa.

  • Los paquetes spf-milter-python y dkim-milter-python ya no están siendo mantenidos por los desarrolladores originales. Pero sus reemplazos pyspf-milter y dkimpy-milter tienen más funcionalidades y están disponibles en buster. Los usuarios debería migrar a los nuevos paquetes antes de que los antiguos se eliminen en bullseye.

5.1.11. Cosas a hacer después de la actualización y antes de reiniciar

Cuando haya terminado apt full-upgrade la actualización formal se habrá completado. No hay que hacer ninguna acción especial antes del siguiente reinicio del sistema tras la actualización a buster.

5.1.12. Los paquetes relacionados con SysV init ya no son necsearios

[Nota]Nota

Esta sección no aplica si ha decidido continuar utilizando sysvinit-core.

Después de haber cambiado a systemd como sistema de arranque por omisión en Jessie, y las mejoras realizadas en Strecth, ya no es necesario tener instalados algunos paquetes relacionados con SysV. Estos paquetes pueden borrarse de forma segura como sigue

apt purge initscripts sysv-rc insserv startpar

5.2. Limitaciones en el soporte de seguridad

Hay algunos paquetes para los que Debian no puede comprometerse a proporcionar versiones actualizadas resolviendo problemas de seguridad. La información de estos paquetes se cubre en las siguientes subsecciones.

[Nota]Nota

El paquete debian-security-support ayuda a supervisar el estado de soporte de seguridad de los paquetes instalados en el sistema.

5.2.1. Estado de seguridad en los navegadores web y sus motores de render

Debian 10 incluye varios motores de navegadores web que están afectados por un flujo constante de vulnerabilidades de seguridad. La alta tasa de vulnerabilidades y la falta de un soporte por parte de los desarrolladores a versiones anteriores hace muy difícil dar soporte a estos navegadores y motores con arreglos de seguridad preparados para las versiones distribuidas. Además, las interdependencias entre bibliotecas hacen extremadamente díficil actualizar a las nuevas versiones distribuidas. Por tanto, los navegadores basados p.ej. en los motores de webkit y khtml[6] están incluidos en buster, pero no están cubiertos por el soporte completo de seguridad. No deberían utilizarse estos navegadores para acceder a sitios no confiables. El paquete fuente webkit2gtk está cubierto por el soporte de seguridad.

Para la navegación web general se recomienda utilizar Firefox o Chromium. Se mantendrá actualizadas recompilando las versiones ESR más recientes para estable. La misma estrategia se aplicará a Thunderbird.

5.2.2. Paquetes basados en Go

La infrastructura de Debian no proporciona soporte a gran escala para la reconstrucción de paquetes que enlazan de forma estática con otros paquetes. Hasta buster esto no ha sido un problema en la práctica, pero con el crecimiento del ecosistema de Go esto significa que los paquetes basados en Go no están cubiertos por el soporte regular de seguridad. Estarán cubiertos cuando se mejore la infrastructura se actualice y mejore para poder gestionarlos de una forma mantenible.

Si es necesario producir una actualización, éstas sólo pueden ofrecerse a través de una nueva publicación, que tardará un tiempo en producirse.

5.3. Problemas específicos de paquetes

La actualización de los paquetes entre stretch y buster debería ser esencial en la mayoría de los casos. Existe un pequeño número de casos en los que es necesaria una intervención manual, bien antes o bien después de la actualización. Estos casos se detallan a continuación para cada paquete.

5.3.1. Cambio en las semánticas del uso de variables de entorno para su

Se han modificado las semánticas de su en buster y el programa ya no mantiene las variables del entorno de usuario DISPLAY y XAUTHORITY. Tendrá que fijar explícitamente estas variables si desea ejecutar aplicaciones gráficas con su. Puede leer una discusión extensiva sobre este comportamiento en bug #905409.

5.3.2. Reindexación necesaria en bases de datos PostgreSQL existentes

Los datos de localización de glibc se actualizarán cuando se actualice de stretch a buster. Específicamente, esto modifica como PostgreSQL ordena los datos en texto en los índices. Para evitar corrupción de datos, estos índices tienen que REINDEXarse inmediatamente después de actualizar los paquetes locales o locales-all y en cualquier caso antes de poner la base de datos de nuevo en producción.

Orden sugerida

sudo -u postgres reindexdb --all

Alternativamente, actualice la base de datos a PostgreSQL 11 utilizando pg_upgradecluster. (Este utiliza por omisión pg_dump que reconstruye todos los índices. No es seguro utilizar la opción -m upgrade o pg_upgrade porque mantienen el orden incorrecto de los índices.)

Consulte el Wiki de PostgreSQL Wiki para más información.

5.3.3. mutt y neomutt

En stretch, el paquete mutt tiene parches aplicados de las fuentes de https://neomutt.org. A partir de buster, el paquete que ofrece /usr/bin/mutt incluirá en su lugar las fuentes originales de http://www.mutt.org, y se ofrece un paquete separado neomutt que ofrece /usr/bin/neomutt.

Esto significa que algunas de las funcionalidades que estaban disponibles previamente en mutt. Si esto rompe su configuración puede instalar neomutt en su lugar.

5.3.4. Acceso de la configuración de GNOME sin ratón

No hay una forma directa de cambiar la configuración en la aplicación de Configuración de GNOME ofrecida por gnome-control-center sin un dispositivo apuntador. Como alternativa, puede navigar de la barra lateral al contenido principal pulsando dos veces Flecha derecha. Para volver a la barra lateral, puede empezar a escribir con Ctrl+F, escriba algo y luego pulse Esc para cancelar la búsqueda. Ahora puede utilizar las teclas Flecha arriba y Flecha abajo para navegar a la barra lateral. No es posible seleccionar resultados con el teclado.

5.3.5. gnome-disk-utility fails to change LUKS password causing permanent data loss (buster 10.0 only)

Users of the initial buster release images should not change the LUKS password of encrypted disks with the GNOME graphical interface for disk management. The gnome-disk-utility package in buster had a very nasty bug (#928893) when used to change the LUKS password: it deleted the old password but failed to correctly set the new one, making all data on the disk inaccessible. This has been fixed in the first point release.

5.3.6. evolution-ews se ha eliminado, y se eliminarán los buzones de correo que utilicen Exchange, Office365 o un servidor de Outlook

Los usuarios que utilicen como su cliente de correo evolution y se conecten a un servidor ejecutando Exchange, Office365 o Outlook con el complemento evolution-ews no deberían actualizarse a buster sin guardar sus datos y sin tener disponible una solución alternativa de antemano. El complemento evolution-ews se ha eliminado debido a la errata #926712 y, si se actualizan, perderán acceso a sus buzones personales, calendario, listas de contactos y tareas y no podrá acceder a ellos con Evolution.

The evolution-ews package has been reintroduced via buster-backports. Users upgrading from stretch to buster can enable buster-backports after the upgrade and then they will be able to reinstall evolution-ews.

5.3.7. El instalador Calamares deja claves de cifrado de disco legibles

Cuando se instala Debian desde los medios «live» con el instalador de Calamares (Sección 2.2.13, “Noticias del grupo Debian Live”) y seleccionan la funcionalidad de cifrado completo de disco, la clave de desbloqueo del disco se guarda en initramfs que puede ser leída por cualquier usuario. Esto permite que los usuarios que tengan acceso al sistema de fichero local puedan leer la clave privada y obtener acceso al sistema de ficheros en el futuro.

Esto puede evitarse añadiendo UMASK=0077 a /etc/initramfs-tools/conf.d/initramfs-permissions y ejecutando update-initramfs -u. Esto generará un nuevo initramfs sin los permisos de lectura universales.

Se ha planeado un arreglo para el instalador (consulte la errata #931373) y se subirá a debian-security. Mientras tanto, los usuarios del cifrado completo de disco deben aplicar la configuración descrita anteriormente.

5.3.8. S3QL URL changes for Amazon S3 buckets

When using s3ql with Amazon S3 buckets, the configuration needs updating for a change in the URL. The new format is:

s3://<region>/<bucket>/<prefix>



[6] Estos motores se distribuyen con un número diferente de paquetes fuente y la problemática aplica a todos los paquetes que los incluyen. Estos problemas también se extenden a los montores de render web que no se mencionen aquí explícitamente, con la excepción de webkit2gtk.