Índice
Por vezes, as alterações introduzidas num novo lançamento têm efeitos secundários que não podemos evitar razoavelmente, ou porão a descoberto bugs noutro lado. Esta secção documenta os problemas que conhecemos. Por favor leia a errata, a documentação dos pacotes relevantes, relatórios de bugs e outra informação mencionada em Secção 6.1, “Leitura adicional”.
Esta seção cobre itens relacionados com a actualização de stretch para buster.
É conhecido que a opção hidepid
de mount para
/proc
causa problemas com as atuais versões de systemd,
e é considerado pelo seu desenvolvimento como configuração não-suportada. Os
utilizadores que tenham modificado /etc/fstab
para
activar esta opção são aconselhados e desativa-la antes da atualização, para
assegurar que as sessões de login funcionam em buster. (Um caminho
possível para as reactivar é sublinhado na página Hardening do
Wiki.)
As opções predefinidas de ypbind
foram alteradas. No entanto, se alterou este ficheiro então a antiga
predefinição não será atualizada e tem de assegurar que a opção
YPBINDARGS=
em /etc/default/nis
não
inclui -no-dbus
. Se estiver presente
-no-dbus
, ypbind irá falhar o
arranque, e poderá não conseguir fazer login. Para mais informações veja o
bug bug #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.
Foram alteradas as semânticas das opções
PubkeyAcceptedKeyTypes
e a similar
HostbasedAcceptedKeyTypes
para sshd
. Agora estas especificam algoritmos de
assinatura que são aceites pelo seu respectivo mecanismo de autenticação,
onde previamente estas especificavam tipos de chaves aceites. Esta distinção
interessa quando utilizar algoritmos de assinatura RSA/SHA2
rsa-sha2-256
, rsa-sha2-512
e os seus
certificados hómologos. As configurações que ultrapassam estas opções mas
omitam estes nomes de algoritmos podem causar falhas de autenticação
inesperadas.
Não é necessária nenhuma ação para configurações que aceitem as predefinições para estas opções.
Devido ao systemd
necessitar de
entropia durante o arranque e o kernel tratar tais chamadas como bloqueios
quando a entropia disponivel for muito baixa, o sistema pode congelar por
minutos ou horas até que o susbsistema de aleatoriadade esteja iniciado
convenientemente (random: crng init done
). Para sistemas
amd64
que suportem a instrução RDRAND
este problema é evitado pelo kernel Debian ao utilizar esta instrução como
predefinida (CONFIG_RANDOM_TRUST_CPU
).
Sistemas que não amd64
e alguns tipos de máquinas
virtuais necessitam de fornecer uma fonte de entropia diferente para
continuar o arranque rápido. Foi escolhido o haveged
para isto dentro do projecto Instalador
Debian e pode ser uma opção válida se não tiver disponível hardware de
entropia neste sistema. Em máquinas virtuais considere encaminhar entropia
do host para as VMs via virtio_rng
.
Se ler isto após atualizar um sistema remoto para buster, faça ping na rede continuamente ao sistema já que isto acrescenta entropia ao pool de aleatoriedade e o sistema eventalmente ficará novamente acessível por ssh.
Para outras opções veja o wiki e a visão geral de DLange sobre o problema.
Se o seu sistema foi atualizado a partir de um lançamento anterior, e ainda
utiliza o estilo antigo de nomes de interface de rede que foram
descontinuados com o stretch (tais como eth0
ou
wlan0
), deve ter em atenção que o udev
em buster já não suporta o mecanismo de
definir nomes através de
/etc/udev/rules.d/70-persistent-net.rules
(apesar de
ainda poder existir nalguns casos). Para evitar o perigo da sua máquina
perder a ligação à rede após a atualização para buster, é recomendado que
migre em avanço para o novo esquema de nomes (normalmente significa nomes
como enp0s1
ou wlp2s5
, que incorpora
os números do bus e slot PCI). Trate de atualizar qualquer nome de interface
definido explicitamente na configuração de firewalls, ifupdown
, e por aí fora.
A alternativa é mudar para um mecanismo suportado para impor o antigo
esquema de nomes, tal como um ficheiro systemd .link
(veja systemd.link(5)). A opção
de linha de comandos do kernel net.ifname=0
também poderá
funcionar para sistemas com apenas um interface de rede (de um dado tipo).
Para encontrar os nomes com o novo estilo que serão utilizados, primeiro encontre os nomes atuais os interfaces relevantes:
$ echo /sys/class/net/[ew]*
Para cada um destes nomes, verifique nos ficheiros de configuração se é
utilizado, e que nome udev
deve
preferir utilizar para isso:
$ sudo rgrep -weth0
/etc $ udevadm test-builtin net_id /sys/class/net/eth0
2>/dev/null
Isto deve fornecer informação suficiente para conceber um plano de
migração. (se a saída de udevadm
incluir um nome
“onboard” ou “slot”, isso terá prioridade; os
nomes baseados no MAC são normalmente tratados como recurso, mas poderão ser
necessários para hardware USB de rede.)
Assim que estiver preparado para fazer a mudança, desabilite
70-persistent-net.rules
quer renomeando-o ou comentando
as linhas individuais. Em máquinas virtuais irá necessitar de remover os
ficheiros /etc/systemd/network/99-default.link
e (caso
utilize dispositivos de rede virtio)
/etc/systemd/network/50-virtio-kernel-names.link
.
Depois reconstrua o initrd
:
$ sudo update-initramfs -u
e reinicie. O seu sistema deverá agora ter o novo estilo de nomes de interface de rede. Ajuste quaisquer outros ficheiros de configuração, e teste o seu sistema.
Para mais informação veja o wiki, a documentação
original, e o README.Debian
do
udev
.
Os sistemas que utilizam channel bonding e/ou interfaces dummy, por exemplo
para configurar uma máquina como router, podem encontrar problemas ao
atualizar para buster. As novas versões de systemd
instalam um ficheiro
/lib/modprobe.d/systemd.conf
(que se destina a
simplificar a configuração através de systemd-networkd) o
qual contém as linhas
options bonding max_bonds=0 options dummy numdummies=0
Os administradores que dependiam de valores diferentes irão ter de assegurar
que estes são definidos de forma correcta a tomar precedência. Um ficheiro
em /etc/modprobe.d
, irá ultrapassar um com o mesmo nome
em /lib/modprobe.d
, mas os nomes são processados por
ordem alfabética, por isso /lib/modprobe.d/systemd.conf
segue e ultrapassa (por exemplo)
/etc/modprobe.d/dummy.conf
. Assegure-se que qualquer
ficheiro de configuração local tem um nome que é ordenado após
“systemd.conf
”, tal como
“/etc/modprobe.d/zz-local.conf
”.
Seguindo algumas recomendações de segurança, a versão mínima de TLS foi alterada de TLSv1 para TLSv1.2.
O nível predefinido de segurança para ligações TLS foi também aumentado de nível 1 para nível 2. Isto altera do nível de segurança de 80 bit para o nível de seguraça de 112 bit e irá necessitar de chaves de 2048 bit ou chaves RSA e DHE maiores, chaves de 224 bit ou chaves ECC maiores e SHA-2.
As definições para todo o sistema podem ser alteradas em
/etc/ssl/openssl.cnf
. As aplicações podem ter também
uma forma especifica da aplicação para ultrapassar estas predefinições.
No /etc/ssl/openssl.cnf
predefinido, existe uma linha
MinProtocol
e CipherString
. A
CipherString
também pode definir o nível de segurança. A
informação acerca dos níveis de segurança pode ser encontrada na manpage
SSL_CTX_set_security_level(3ssl).
A lista de strings válidas para a mínina versão do protocolo pode ser
encontrada em SSL_CONF_cmd(3ssl). Outra
informação pode ser encontrada em ciphers(1ssl) e config(5ssl).
Podem ser muudadas as definições do sistema completo de volta para os
valores anteriores em /etc/ssl/openssl.cnf
ao definir:
MinProtocol = None CipherString = DEFAULT
É recomendado que contacte o site remoto se as predefinições causarem problemas.
O GNOME, em buster, mudou o seu servidor de display predefinido de Xorg para
Wayland (veja Secção 2.2.11, “GNOME com predefinição para Wayland”). Algumas
aplicações, incluindo o popular gestor de pacotes synaptic
, o método de introdução predefinido de
Chinês Simplificado, fcitx
, e a
maioria das aplicações que gravam o ecrã, ainda não foram atualizadas para
funcionar correctamente sob Wayland. De modo a que possa utilizar estes
pacotes, é necessário fazer login com uma sessão GNOME on
Xorg
.
Os seguintes são uma lista de pacotes conhecidos e relevantes que são obsoletos (para uma descrição, veja Secção 4.8, “Pacotes obsoletos” ).
A lista de pacotes obsoletos inclui:
O pacote mcelog
já não é suportado
em versões de kernel superior a 4.12. Em vez disso pode ser utilizado
rasdaemon
para o substituir.
O pacote revelation
, que é utilizado
para guardar palavras-passe, não é incluido em buster. O keepass2
pode importar palavras-passe exportadas
previamente para ficheiros XML a partir do revelation
. Por favor assegure-se que exporta os
seus dados do revelation antes de fazer a atualização, para evitar perder o
acesso às suas palavras-passe.
o ipsec-tools
e racoon
foi removido de buster já que o seu
código-fonte tem ficado para trás em adaptar-se a novas ameaças.
Os utilizadores são encorajados a migrar para libreswan
, o qual tem um espectro de
compatibilidade mais largo e é mantido ativamente pelos autores.
libreswan
deverá ser totalmente
compatíveis em termos de protocolos de comunicação já que implementa um
conjunto dos protocolos suportados por racoon
.
O MTA simples ssmtp
foi abandonado
para buster. Isto é devido a atualmente não validar certificados TLS;
veja bug #662960.
O pacote ecryptfs-utils
não faz
parte de buster devido a um bug sério não corrigido (#765854). Na altura em que foi escrito este
parágrafo, não havia uma recomendação clara para os utilizadores com
Ecryptfs, excepto não atualizar.
Com o próximo lançamento de Debian 11 (nome de código bullseye) serão depreciadas algumas funcionalidades. Os utilizadores irão necessitar de migrar para outras alternativas para prevenir problemas ao actualizar para 11.
Isto inclui as seguintes funcionalidades:
Python 2 irá deixar de ser suportado pelos seus autores em 1 de Janeiro de
2020. Debian espera abandonar python-2.7
em Debian 11. Se os
utilizadores tiverem funcionalidades que dependam de
python, devem preparar-se para migrar para
python3.
O Icinga 1.x atingiu o final do suporte pelos seus autores desde 2018-12-31,
apesar do pacote icinga
ainda estar
presente, os utilizadores devem utilizar o tempo de vida do buster para
migrar para o pacote Icinga 2 (icinga2
) e Icinga Web 2 (pacote icingaweb2
). O pacote icinga2-classicui
ainda está presente para
utilizar o interface web CGI 1.1 Icinga com o Icinga 2, mas o suporte será
removido no Icinga 2.11. Em vez disso deve ser utilizado o Icinga Web 2.
A versão 3 do pacote de gestão de listas de correio Mailman está pela
primeira vez disponível neste lançamento. O Mailman foi dividido em vários
componentes; o core está disponível no pacote mailman3
e o conjunto completo pode ser obtido
através do metapacote mailman3-full
.
Neste lançamento mantém-se disponível a versão antiga 2.1 do Mailman, no
pacote mailman
, para que possa
migrar qualquer instalação existente à sua velocidade. O pacote Mailman 2.1
será mantido num futuro previsível, mas não terá alterações ou melhorias de
maior. Será removido do próximo lançamento Debian após o desenvolvimento na
fonte ter terminado de suportar esta versão.
Todos são encorajados a atualizar para Mailman 3, o lançamento recente sob desenvolvimento activo.
Os pacotes spf-milter-python
e
dkim-milter-python
já não são
activamente desenvolvidos pelos seus autores, no entanto os seus substituos
mais ricos em funcionalidades, pyspf-milter
e dkimpy-milter
, estão disponíveis em buster. Os
utilizadores devem migrar para os novos pacotes antes dos antigos serem
removidos em bullseye.
Quando apt full-upgrade
tiver terminado, a actualização
“formal” estará completa. Para o upgrade para buster não
é necessário tomar ações especiais antes de reiniciar.
![]() | Nota |
---|---|
Esta secção não se aplica se decidiu ficar com sysvinit-core. |
Após a mudança para systemd como o sistema init predefinido em Jessie e depois com mais refinamentos em Stretch, já não são necessários vários pacotes relacionados com SysV e podem agora ser purgados em segurança com
apt purge initscripts sysv-rc insserv startpar
Existem alguns pacotes onde Debian não pode prometer disponibilizar backports mínimos para problemas de segurança. Estes estão cobertos nas seguintes subsecções.
![]() | Nota |
---|---|
O pacote |
Debian 10 inclui vários motores de navegador da internet que são
afectados por um fluxo regular de vulnerabilidades de segurança. A alta taxa
de vulnerabilidades e a parcial falta de suporte dos autores sob a forma de
branches de períodos de tempo longos torna muito difícil suportar estes
navegadores e motores com backports de correcções de segurança. Além disso,
as interdependências entre bibliotecas tornam extremamente difícil
actualizar para novos lançamentos de orginais mais recentes. Por isso, estão
incluidos no buster navegadores criados sob p.e. os motores webkit e
khtml[6], mas não estão cobertos pelo
suporte de segurança. Estes navegadores não devem ser utilizados para aceder
a sites que não sejam de confiança. O pacote de código-fonte webkit2gtk
é coberto pelo suporte de segurança.
Como navegador da web recomendamos Firefox ou Chromium. Estes irão manter-se atualizados ao recompilar os atuais lançamentos ESR para a stable. A mesma estratégia pode ser aplicada para o Thunderbird.
Atualmente a infraestrutura Debian não suporta correctamente a recompilação de pacotes que linkem estaticamente partes de outros pacotes em larga escala. Até ao buster, na prática, isto não era um problema, mas com o crescimento do ecosistema Go isto significa que os pacotes baseados em Go não serão cobertos pelo normal suporte de segurança até a infraestrutura ser melhorada para lidar com estes com manutenção sustentável.
Se houverem atualizações, estas apenas poderão vir através dos normais lançamentos pontuais, o que pode demorar a chegar.
Na maioria dos casos, a actualização dos pacotes deve ser suave entre stretch e buster. Existe um pequeno número de casos onde poderá ser necessária alguma intervenção, quer antes ou depois da actualização; Estes estão detalhados abaixo, por pacote.
A começar com glibc
2.26, é
necessário o kernel Linux 3.2 ou posterior. Para evitar estragar
completamente o seu sistema. o preinst de libc6
faz uma verificação. Se falhar, irá
abortar a instalação do pacote, o que irá deixar a instalação por
terminar. Se o sistema estiver a correr um kernel mais antigo do que o 3.2,
por favor atualize-o antes de começar a atualização da distribuição.
A semântica de su
foi alterada no buster e já não
preserva as variáveis de ambiente DISPLAY
e
XAUTHORITY
. Se necessitar de correr aplicações gráficas
com su
, terá de definir explicitamente a permissão de
acesso ao seu display. Veja bug #905409
para uma discussão extensiva.
Ao atualizar de stretch para buster, são atualizados os dados locale de
glibc
. Especificamente, isto altera
como o PostgreSQL ordena os dados em índices de texto. Para evitar corrupção
de dados, esses índices têm de ser REINDEX
ados
imediatamente após a atualização dos pacotes locales
ou locales-all
, antes de colocar a base de dados
novamente em produção.
Comando sugerido:
sudo -u postgres reindexdb --all
Em alternativa, atualize as bases de dados para PostgreSQL 11 utilizando
pg_upgradecluster. (Isto utiliza
pg_dump por predefinição que irá reconstruir todos os
índices. Utilizar -m upgrade
ou
pg_upgrade não é seguro porque
preserva a ordem de indexação, que agora é errada.)
Para mais informação, refira-se ao PostgreSQL Wiki.
Em stretch, o pacote mutt
tinha
patches aplicados do código-fonte de https://neomutt.org. A partir de buster, o
pacote que disponibiliza /usr/bin/mutt
irá ser baseado
exclusivamente no código-fonte original de http://www.mutt.org, e está disponível um
pacote adicional neomutt
que
disponibiliza /usr/bin/neomutt
.
Isto significa que algumas das funcionalidades que eram disponibilizadas
anteriormente por mutt
já não estão
disponíveis. Se isto estragar a sua configuração poderá em vez disso
instalar neomutt
.
Sem um dispositivo apontador, não há forma directa de alterar as definições
na aplicação de definições do GNOME, disponibilizada por gnome-control-center
. Como forma de contornar
isto, pode navegar desde a barra lateral para o conteúdo principal
carregando duas vezes na Seta Direita. Para voltar à barra
lateral, pode iniciar uma pesquisa com Ctrl+F, escreva
qualquer coisa e depois carregue em Esc para cancelar a
pesquisa. Agora pode utilizar a Seta Cima e Seta
Baixo para navegar pela barra lateral. Não é possível seleccionar
resultados de pesquisa com o teclado.
Os utilizadores das imagens iniciais do lançamento buster não devem alterar
a palavra-passe LUKS dos discos encriptados com o interface gráfico do GNOME
para a gestão de discos. O pacote gnome-disk-utility
em buster tem um péssimo
bug (#928893) quando utilizado para
mudar a palavra-passe LUKS: apaga a palavra-passe antiga mas falha definir
correctamente a nova, tornando todos os dados do disco inacessíveis. Isto
foi corrigido no primeiro lançamento pontual.
Os utilizadores que utilizem o evolution
como o seu cliente de email e se
liguem a um servidor que corra Exchange, Office365 ou Outlook e que utilizem
o plugin evolution-ews
não devem
atualizar para buster sem em avanço fazerem uma cópia de segurança dos dados
e encontrarem uma solução alternativa, já que o evolution-ews foi abandonado
devido ao bug #926712 e as suas caixas
de correio, os calendários, as listas de contactos e de tarefas serão
removidos e deixarão de estar acessíveis com o Evolurtion.
O pacote evolution-ews
foi
reintroduzido através de buster-backports. Os utilizadores que atualizem de
stretch para buster podem utilizar buster-backports depois da atualização
poderão reinstalar evolution-ews
.
Ao instalar Debian a partir de um meio live utilizando o instalador Calamares (Secção 2.2.13, “Notícias da equipa Debian Live” e que seja escolhida a funcionalidade de encriptação completa, a chave de desbloqueio do disco ficará armazenada no initramfs que é de leitura para todos. Isto permite aos utilizadores com acesso ao sistema de ficheiros local acedederem e lerem a chave privada e ganharem acesso ao sistema de ficheiros novamente no futuro.
Isto pode ser ultrapassado ao acrescentar UMASK=0077
a
/etc/initramfs-tools/conf.d/initramfs-permissions
e
correr update-initramfs -u. Isto irá recriar o initramfs
sem permissões de leitura para todos.
Está planeada uma correção para o instalador (veja bug #931373) e será feito upload para debian-security. Entretanto os utilizadores de encriptação completa do disco devem aplicar a medida acima.
Ao utilizar s3ql
com buckets S3 a
Amazon, a sua configuração necessita ser atualizada para alterar o URL. O
novo formato é:
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] Estes engines são distribuidos num número de pacotes fonte diferentes e a
preocupação aplica-se a todos os pacotes que os distribuem. A preocupação
também se estende a web rendering engines que não explicitamente mencionados
aqui, com a excepção de webkit2gtk
.