Table des matières
Parfois, des changements ont des effets de bord que nous ne pouvons pas raisonnablement éviter sans nous exposer à des bogues à un autre endroit. Cette section documente les problèmes que nous connaissons. Veuillez également lire l'errata, la documentation des paquets concernés, les rapports de bogues et les autres sources d'informations mentionnées en Section 6.1, « Lectures pour aller plus loin ».
Cette section concerne les éléments liés à la mise à niveau de Stretch vers Buster
Utiliser l'option de montage hidepid
pour
/proc
est connu pour causer des problèmes avec les
versions actuelles de systemd et est considéré par l'amont comme une
configuration non prise en charge. Il est recommandé aux utilisateurs, ayant
modifié /etc/fstab
pour activer cette option, de la
désactiver avant la mise à niveau pour être sûr que les sessions de login
fonctionnent sur Buster. (Un moyen possible de réactiver cette option
est résumé sur la page Hardening du
wiki.)
Les options par défaut de ypbind
ont
changé. Cependant, si vous avez modifié ce fichier, les anciennes valeurs
par défaut ne seront pas mises à jour et vous devrez vous assurer que
l'option YPBINDARGS=
dans
/etc/default/nis
n'inclut pas
-no-dbus
. En présence de -no-dbus
,
ypbind échouera à se lancer et vous pourriez être dans
l'incapacité de vous connecter. Pour plus d'informations, consultez le rapport de bogue nº 906436.
The default behavior of rpcbind
has
changed to no longer answer remote calls from NIS clients. On NIS servers
you will need to add the (Debian-specific) -r
flag to the
command line options of rpcbind, otherwise users will not
be able to log into your NIS client machines. For more info see bug #935492.
La signification des options PubkeyAcceptedKeyTypes
et
HostbasedAcceptedKeyTypes
de sshd
a changé. Ces options indiquent désormais
les algorithmes de signature acceptés pour leurs mécanismes
d’authentification respectifs, alors qu'elles indiquaient précédemment les
types de clés acceptés. Cette distinction est importante quand les
algorithmes de signature RSA/SHA2, rsa-sha2-256
,
rsa-sha2-512
et leurs équivalents de certificats sont
utilisés. Les configurations qui changent ces options mais oublient ces noms
d'algorithmes pourraient subir des échecs d'authentification.
Aucune action n'est nécessaire pour les configurations qui acceptent les valeurs par défaut de ces options.
À cause du besoin d'entropie de systemd
pendant le démarrage et comme le noyau
considère ces appels bloquants quand l'entropie disponible est faible, le
système pourrait être bloqué entre plusieurs minutes et plusieurs heures
jusqu'à ce que le sous-système de nombres aléatoires soit suffisamment
initialisé (random: crng init done
). Pour les systèmes
amd64
prenant en charge l'instruction
RDRAND
, ce problème est évité car le noyau fourni par
Debian utilise cette instruction par défaut
(CONFIG_RANDOM_TRUST_CPU
).
Les autres systèmes et certains types de machines virtuelles doivent fournir
une autre source d'entropie pour continuer à démarrer
rapidement. haveged
a été choisi
pour cela par le projet de l'installateur Debian et peut être une option
valable si l'entropie matérielle n'est pas disponible sur le système. Sur
les machines virtuelles, il est possible de transférer de l'entropie depuis
l'hôte vers les VM grâce à virtio_rng
.
Si vous lisez cela après avoir mis à niveau un système distant vers Buster, envoyez une commande ping sur le réseau en continu car cela ajoute des valeurs aléatoires à la réserve d'entropie et le système finira par être à nouveau accessible par ssh.
Veuillez consulter le wiki pour plus de détails et le résumé du problème par DLange (en anglais) pour d'autres options.
Si votre système a été mis à niveau depuis une version précédente et utilise
toujours les anciens noms d'interface réseau dépréciés depuis Stretch (comme
eth0
ou wlan0
), sachez que le
mécanisme pour définir leurs noms avec
/etc/udev/rules.d/70-persistent-net.rules
n’est
officiellement plus pris en charge par udev
dans Buster (bien qu’il puisse toujours
fonctionner dans certains cas). Pour éviter que votre machine ne perde le
réseau après la mise à niveau vers Buster, il est recommandé que vous
fassiez d'abord la migration vers le nouveau schéma de nommage (avec des
noms du type enp0s1
ou wlp2s5
, qui
incluent les numéros de bus et d'emplacement PCI). Veillez à mettre à jour
toutes les interfaces écrites en dur dans les configurations des pare-feux,
de ifupdown
, etc.
Une autre possibilité est de passer à un mécanisme pris en charge pour
conserver l'ancien schéma de nommage, tel qu’un fichier systemd
.link
(consultez systemd.link(5)). L'option en ligne de
commande du noyau net.ifname=0
pourrait également
fonctionner pour les systèmes n’ayant qu’une seule interface réseau (pour un
type donné).
Pour trouver les nouveaux noms qui seront utilisés, déterminez d'abord les noms en cours des interfaces pertinentes :
$ echo /sys/class/net/[ew]*
Pour chacun de ces noms, vérifiez s'il est utilisé dans des fichiers de
configuration et quel nom udev
préférerait utiliser à la place :
$ sudo rgrep -weth0
/etc $ udevadm test-builtin net_id /sys/class/net/eth0
2>/dev/null
Cela devrait donner suffisamment d'informations pour concevoir un plan de
migration. (si la sortie de udevadm
contient un nom
« onboard » ou « slot », il prend la priorité ; les
noms basés sur les adresses MAC sont normalement traités comme des solutions
de repli, mais pourraient être nécessaires aux matériels réseau USB).
Lorsque vous être prêt à procéder au changement, désactivez
70-persistent-net.rules
soit en le renommant, soit en
commentant ses lignes. Sur les machines virtuelles, il vous faudra supprimer
les fichiers /etc/systemd/network/99-default.link
et
/etc/systemd/network/50-virtio-kernel-names.link
(si
vous utilisez les périphériques réseau virtio). Puis reconstruisez
l'initrd
:
$ sudo update-initramfs -u
et redémarrez. Votre système devrait maintenant avoir les nouveaux noms d'interface réseau. Ajustez tous les fichiers de configurations restants et testez votre système.
Consultez le wiki,
la
documentation amont et le README.Debian
de
udev
pour de plus amples informations.
Les systèmes utilisant le lien de canal (channel bonding) et/ou les
interfaces factices, par exemple pour configurer une machine en tant que
routeur, peuvent rencontrer des problèmes en mettant à niveau vers
Buster. Les nouvelles versions de systemd
installent un fichier
/lib/modprobe.d/systemd.conf
(prévu pour simplifier la
configuration avec systemd-networkd) qui contient les
lignes suivantes
options bonding max_bonds=0 options dummy numdummies=0
Les administrateurs qui dépendaient de valeurs différentes doivent s’assurer
qu’elles sont réglées de façon à avoir la priorité. Un fichier dans
/etc/modprobe.d
surchargera tout fichier du même nom
situé dans /lib/modprobe.d
, mais les noms sont traités
dans l’ordre alphabétique, donc
/lib/modprobe.d/systemd.conf
suit et surcharge (par
exemple) /etc/modprobe.d/dummy.conf
. Assurez-vous que
tout fichier de configuration local ait un nom passant après
« systemd.conf
», tel que
« /etc/modprobe.d/zz-local.conf
».
Suite à diverses recommandations de sécurité, la version minimum de TLS a été changée de TLSv1 vers TLSv1.2.
Le niveau de sécurité par défaut pour les connexions TLS a également été augmenté de niveau 1 vers le niveau 2. Cela fait passer du niveau de sécurité à 80 bits au niveau de sécurité à 112 bits et nécessite des clés RSA et DHE de 2048 bits ou plus, des clés ECC de 224 bits ou plus, et SHA-2.
Les paramètres du système peuvent être modifiés dans
/etc/ssl/openssl.cnf
. Les applications pourraient avoir
un moyen spécifique de surcharger ces valeurs par défaut.
Le fichier /etc/ssl/openssl.cnf
contient une ligne
MinProtocol
et une ligne
CipherString
. CipherString
peut
également régler le niveau de sécurité. Des informations à propos des
niveaux de sécurité peuvent être trouvées dans la page de manuel SSL_CTX_set_security_level(3ssl).
La liste des chaînes valables pour la version minimale de protocole est
disponible dans SSL_CONF_cmd(3ssl). D’autres
informations sont disponibles dans ciphers(1ssl) et config(5ssl).
Changer les valeurs par défaut de /etc/ssl/openssl.cnf
pour tout le système vers les anciennes valeurs peut être réalisé en
configurant :
MinProtocol = None CipherString = DEFAULT
Il est recommandé que vous contactiez le site distant si les valeurs par défaut posent problème.
GNOME dans Buster a changé de serveur d'affichage par défaut, passant de
Xorg à Wayland (Section 2.2.11, « GNOME utilise Wayland par défaut »). Certaines
applications, comme le gestionnaire de paquets populaire synaptic
, la méthode de saisie pour le chinois
simplifié, fcitx
et la plupart des
applications d'enregistrement d'écran, n'ont pas été mises à jour pour
fonctionner correctement avec Wayland. Pour pouvoir utiliser ces paquets, il
est nécessaire de s'authentifier avec une session GNOME on
Xorg
.
La liste suivante contient des paquets connus et obsolètes (voir Section 4.8, « Paquets obsolètes » pour une description).
La liste des paquets obsolètes contient :
Le paquet mcelog
n'est plus pris en
charge dans les noyaux 4.12 et suivants. rasdaemon
peut être utilisé comme remplacement.
Le paquet revelation
, qui est
utilisé pour stocker des mots de passe, n'est pas inclus dans
Buster. keepass2
peut
importer les fichiers XML de mots de passe exportés précédemment depuis
revelation
. Veuillez vous assurer
que vous pouvez exporter vos données depuis revelation avant de faire la
mise à niveau pour éviter de perdre l'accès à vos mots de passe.
ipsec-tools
et racoon
ont été supprimés de Buster car leurs
sources prenaient trop de temps à s'adapter aux nouvelles menaces.
Les utilisateurs sont encouragés à migrer vers libreswan
qui a une plus grande compatibilité de
protocoles et est activement maintenu en amont.
libreswan
devrait être pleinement
compatible en terme de protocoles de communication car il implémente un
sur-ensemble des protocoles pris en charge par racoon
.
L'agent de transfert de courriel simple ssmtp
a été retiré de Buster car il ne
valide actuellement pas les certificats TLS (voir le bogue nº 662960).
Le paquet ecryptfs-utils
ne fait pas
partie de Buster à cause d’un bogue sérieux non corrigé (nº 765854). À l’écriture de ce paragraphe,
aucune recommandation claire n’est disponible, à part celle de ne pas mettre
à niveau.
Avec la prochaine publication de Debian 11 (nom de code Bullseye), certaines fonctionnalités seront déconseillées. Les utilisateurs devront migrer vers des alternatives pour éviter les problèmes lors de la mise à jour vers Debian 11.
Cela comprend les fonctionnalités suivantes :
Python 2 ne sera plus pris en charge par l'amont à partir du premier janvier
2020. Debian espère abandonner python-2.7
pour Debian 11. Si des
utilisateurs ont des fonctionnalités qui reposent sur
python, ils devraient se préparer à migrer vers
python3.
Icinga en version 1.x n'est plus maintenu par l'amont depuis le
31 décembre 2018 ; même si le paquet icinga
est toujours présent, les utilisateurs
devraient profiter du cycle de vie de Buster pour migrer vers Icinga 2
(paquet icinga2
) et Icinga Web 2
(icingaweb2
). Le paquet icinga2-classicui
est toujours présent pour
utiliser l'interface web CGI d'Icinga 1.x avec Icinga 2, mais sa prise en
charge sera supprimée dans Icinga 2.11. Icinga Web 2 devrait être utilisé à
la place.
La version 3 de la suite de gestion de listes de diffusion Mailman fait son
apparition dans cette publication. Mailman a été séparé en divers
composants ; le cœur est disponible dans le paquet mailman3
et la suite complète peut être obtenue
grâce au métapaquet mailman3-full
.
L'ancienne version 2.1 de Mailman reste disponible dans cette publication
dans le paquet mailman
, afin que
vous puissiez migrer les installations existantes à votre rythme. Le paquet
Mailman 2.1 sera maintenu en état de fonctionnement dans un avenir proche,
mais ne verra plus de modifications ou améliorations d'importance. Il sera
supprimé de la première publication de Debian suivant l'arrêt de la prise en
charge de cette branche par les développeurs amont de Mailman.
Chacun est encouragé à mettre à niveau vers Mailman 3, la version moderne et en cours de développement actif.
Les paquets spf-milter-python
et
dkim-milter-python
ne sont plus
activement développés en amont, mais leurs remplaçants pyspf-milter
et dkimpy-milter
, plus riches en fonctionnalités,
sont disponibles dans Buster. Les utilisateurs devraient migrer vers les
nouveaux paquets avant que les anciens ne soit supprimés de Bullseye.
Lorsque apt full-upgrade
a terminé, la mise à niveau
« formelle » est complète. Pour la mise à niveau vers
Buster il n'y a rien de particulier à faire avant de redémarrer.
![]() | Note |
---|---|
Cette section ne s'applique pas si vous avez décidé de conserver sysvinit-core. |
Après le changement vers systemd en tant que système de démarrage par défaut dans Jessie puis des perfectionnements dans Stretch, divers paquets liés à SysV ne sont plus nécessaires et peuvent maintenant être purgés en toute sécurité avec
apt purge initscripts sysv-rc insserv startpar
Il y a certains paquets pour lesquels Debian ne peut pas garantir de rétroportages minimaux pour les problèmes de sécurité. Ceux-ci sont couverts dans les sous-sections suivantes.
![]() | Note |
---|---|
Le paquet |
Debian 10 inclut plusieurs moteurs de navigateur web qui sont
affectés par un flot continu de vulnérabilités de sécurité. Ce taux élevé de
vulnérabilités ainsi que le manque partiel de prise en charge amont sous la
forme de branches maintenues à long terme rendent difficiles les corrections
de sécurité rétroportées. De plus, les interdépendances des bibliothèques
rendent impossible la mise à niveau vers une nouvelle version. Par
conséquent les navigateurs basés par exemple sur les moteurs webkit,
qtwebkit et khtml[6] sont inclus dans
Buster mais ne sont pas couverts par une prise en charge complète de
la sécurité. Ces navigateurs ne devraient pas être utilisés sur des sites
web non fiables. Le paquet source webkit2gtk
est couvert par une prise en charge
complète de la sécurité.
Pour une utilisation classique, nous recommandons les navigateurs Firefox ou Chromium. Ceux-ci seront maintenus à jour en recompilant les versions ESR actuelles pour stable. La même stratégie sera appliquée pour Thunderbird.
L’infrastructure de Debian ne permet actuellement pas de recompiler correctement à grande échelle les paquets qui lient statiquement des parties d’autres paquets. Jusqu’à Buster, cela n’a pas été un problème en pratique, mais la croissance de l’écosystème de Go signifie que les paquets basés sur Go ne seront pas couverts par le processus normal de prise en charge de sécurité jusqu’à ce que l’infrastructure soit améliorée pour pouvoir les gérer durablement.
Si les mises à jour sont justifiées, elles ne peuvent venir que des mises à jour intermédiaires normales, ce qui pourrait mettre du temps à arriver.
Dans la plupart des cas, les paquets devraient se mettre à jour sans incident entre Stretch et Buster. Il existe un petit nombre de cas pour lesquels une intervention pourrait être nécessaire, avant ou pendant la mise à niveau ; ces cas sont détaillés ci-dessous paquet par paquet.
À partir de glibc
2.26, la
version 3.2 ou supérieure du noyau Linux est nécessaire. Pour éviter de
casser totalement le système, le script de préinstallation de libc6
réalise une vérification. Si celle-ci
échoue, cela interrompra l'installation du paquet, ce qui empêchera la mise
à niveau de se terminer. Si le système fonctionne avec un noyau plus ancien
que la version 3.2, veuillez le mettre à jour avant de débuter la mise à
niveau de la distribution.
La sémantique de su
a changé dans Buster et ne
préserve plus les variables d’environnement DISPLAY
et
XAUTHORITY
de l’utilisateur. Si vous devez exécuter des
applications graphiques avec su
, vous devrez les
renseigner explicitement pour permettre l'accès à votre écran. Consultez le
bogue nº 905409 pour une discussion
complète sur le sujet.
Pendant la mise à niveau de Stretch vers Buster, les données locales de
glibc
sont mises à niveau. En
particulier, cela change la façon dont PostgreSQL trie les données dans les
index de texte. Pour éviter une corruption, ces index doivent être réindexés
avec la commande REINDEX
immédiatement après la mise à
niveau des paquets locales
ou
locales-all
, avant de remettre la
base de données en production.
Commande suggérée :
sudo -u postgres reindexdb --all
Autrement, mettez à niveau les bases de données vers PostgreSQL 11 avec
pg_upgradecluster. (Cette commande utilise
pg_dump par défaut, ce qui va reconstruire tous les
index. Utiliser -m upgrade
ou
pg_upgrade n'est pas sûr car ces
commandes préservent le mauvais ordre de tri des index).
Veuillez vous référer au wiki de PostgreSQL pour plus d'informations.
Dans Stretch, le paquet mutt
avait
des correctifs appliqués depuis des sources venant de https://neomutt.org. À partir de Buster,
le paquet fournissant /usr/bin/mutt
sera à la place basé
uniquement sur les sources originales en provenance de http://www.mutt.org et un paquet
neomutt
séparé, fournissant
/usr/bin/neomutt
, est disponible.
Cela signifie que certaines des fonctionnalités qui étaient auparavant
fournies par mutt
ne sont plus
disponibles. Si cela casse votre configuration, vous pouvez installer
neomutt
à la place.
Sans dispositif de pointage, il n’y a pas de moyen direct de modifier les
réglages dans l’application GNOME Settings fournie par gnome-control-center
. Pour contourner cela, il
est possible de naviguer de la barre latérale vers le contenu principal en
appuyant deux fois sur Flèche droite. Pour revenir à la
barre latérale, vous pouvez commencer une recherche avec Ctrl+F, taper
quelque chose, puis appuyer sur Echap. pour annuler la
recherche. Maintenant, vous pouvez utiliser Flèche haut et
Flèche bas pour naviguer dans la barre latérale. Il est
n’est pas possible de sélectionner les résultats de recherche au clavier.
Les utilisateurs des premières images de la publication de Buster ne
devraient pas changer le mot de passe LUKS de disques chiffrés avec
l’interface graphique de GNOME pour la gestion de disque. Le paquet
gnome-disk-utility
dans Buster avait
un bogue nº 928893 très grave quand il
est utilisé pour modifier le mot de passe LUKS : il supprimait l’ancien mot
de passe mais échouait à régler le nouveau correctement, rendant toutes les
données du disque inaccessibles. Ce problème a été corrigé dans la première
publication intermédiaire.
Les utilisateurs du client de messagerie evolution
se connectant à un serveur Exchange,
Office365 ou Outlook en utilisant le greffon evolution-ews
ne devraient pas mettre à niveau
vers Buster sans sauvegarder leurs données et trouver une solution de
secours d’abord, car evolution-ews a été supprimé à cause du bogue nº 926712 et leurs boîtes de réception,
calendriers, listes de contacts et tâches seront supprimés et rendus
inutilisables avec Evolution.
Le paquet evolution-ews
a été
réintroduit dans l'archive buster-backports. Les utilisateurs, qui ont
effectué la mise à niveau de Stretch vers Buster, peuvent activer l'archive
buster-backports pour être en mesure de réinstaller evolution-ews
.
Quand Debian est installée depuis un média autonome en utilisant l’installateur Calamares (Section 2.2.13, « Nouveautés de l'équipe Debian Live ») et que le chiffrement complet du disque est sélectionné, la clé de déverrouillage du disque est stockée dans l’initramfs qui est lisible par tout le monde. Cela permet à des utilisateurs ayant accès au système de fichiers local de lire la clé privée et d’avoir accès au système de fichiers à l’avenir.
Cela peut être contourné en ajoutant UMASK=0077
à
/etc/initramfs-tools/conf.d/initramfs-permissions
et en
exécutant la commande update-initramfs -u. Cela récréera
l’initramfs sans les permissions de lecture pour tout le monde.
Un correctif pour l’installateur est prévu (voir le bogue nº 931373) et sera publié dans debian-security. En attendant, les utilisateurs du chiffrement complet devraient utiliser le contournement présenté plus haut.
Lors de l'utilisation de s3ql
avec
des compartiments Amazon S3, il est nécessaire de modifier la
configuration. Le nouveau format de l'URL est le suivant :
s3://<region>/<bucket>/<prefix>
The shipped configurations for /var/log/btmp
and
/var/log/wtmp
have been split from the main
configuration file (/etc/logrotate.conf
) into separate
standalone files (/etc/logrotate.d/btmp
and
/etc/logrotate.d/wtmp
).
If you have modified /etc/logrotate.conf
in this
regard, make sure to re-adjust the two new files to your needs and drop any
references to (b|w)tmp from the main file, since duplicate definitions can
cause errors.
[6] Ces moteurs sont fournis dans un certain nombre de paquets source différents
et le problème s'applique à tous les paquets qui les fournissent. Il s'étend
aussi à tous les moteurs de rendu web qui ne sont pas explicitement
mentionnés ici, à l'exception de webkit2gtk
.