Lançamento do gerenciador de sistema systemd 246

Após cinco meses de desenvolvimento apresentado o lançamento do gerente de sistema systemd 246. A nova versão implementou suporte para congelamento de units, a possibilidade de verificação da imagem do disco raiz por assinatura digital, suporte para compressão de logs e core dumps usando o algoritmo ZSTD, a possibilidade de desbloquear diretórios pessoais portáteis usando tokens FIDO2, e suporte para desbloqueio de partições Microsoft BitLocker através de /etc/crypttab. O BlackList foi renomeado para DenyList.

Principais mudanças:

  • Adicionado suporte ao controlador de recursos freezer baseado em cgroups v2, que permite parar processos e liberar temporariamente alguns recursos (CPU, I/O e potencialmente até memória) para a execução de outras tarefas. O gerenciamento de congelamento e descongelamento de units é feito através do novo comando «systemctl freeze» ou via D-Bus.
  • Adicionado suporte para verificação da imagem do disco raiz por assinatura digital. A verificação é feita através de novas configurações em units de serviço: RootHash (hash raiz para verificação da imagem do disco, especificada pela opção RootImage) e RootHashSignature (assinatura digital no formato PKCS#7 para o hash raiz).
  • No manipulador PID 1, foi implementada a possibilidade de carregamento automático de regras AppArmor pré-compiladas (/etc/apparmor/earlypolicy) na fase inicial de inicialização.
  • Novas configurações de unit-files foram adicionadas: ConditionPathIsEncrypted e AssertPathIsEncrypted para verificar se o caminho especificado está em um dispositivo de bloco que utiliza criptografia (dm-crypt/LUKS), ConditionEnvironment e AssertEnvironment para verificar variáveis de ambiente (por exemplo, definidas pelo PAM ou ao configurar contêineres).
  • Para units *.mount, foi implementada a configuração ReadWriteOnly, que proíbe o montamento da partição em modo somente leitura, caso não seja possível montá-la para leitura e escrita. Em /etc/fstab, esse modo é configurado usando a opção «x-systemd.rw-only».
  • Para units *.socket, foi adicionada a configuração PassPacketInfo, que inclui a adição de metadados adicionais pelo kernel para cada pacote lido do socket (inclui os modos IP_PKTINFO, IPV6_RECVPKTINFO e NETLINK_PKTINFO para o socket).
  • Para serviços (units *.service) foram propostas as configurações CoredumpFilter (que define as seções de memória a serem incluídas nos core dumps) e
    TimeoutStartFailureMode/TimeoutStopFailureMode (define o comportamento (SIGTERM, SIGABRT ou SIGKILL) quando o timeout ocorre ao iniciar ou parar o serviço).
  • A maioria das opções agora suporta a especificação de valores hexadecimais usando o prefixo "0x".
  • Vários parâmetros de linha de comando e arquivos de configuração relacionados à configuração de chaves ou certificados agora permitem a indicação do caminho para sockets Unix (AF_UNIX) para a transmissão de chaves e certificados através de chamadas a serviços IPC, quando não é desejável armazenar certificados em meios de armazenamento não criptografados.
  • Adicionada suporte a seis novos especificadores que podem ser utilizados em units, tmpfiles.d/, sysusers.d/ e outros arquivos de configuração: %a para substituir pela arquitetura atual, %o/%w/%B/%W para substituir por campos de identificação de /etc/os-release e %l para substituir pelo nome curto do host.
  • O suporte à sintaxe " .include " foi removido dos arquivos de unit, sendo esse recurso obsoleto já há 6 anos.
  • O suporte aos valores "syslog" e "syslog-console" nas configurações StandardError e StandardOutput foi descontinuado e será automaticamente convertido para "journal" e "journal+console".
  • Para pontos de montagem criados automaticamente com base em tmpfs (/tmp, /run, /dev/shm, etc.), foram estabelecidos limites para o tamanho e a quantidade de inodes, correspondendo a 50% da RAM para /tmp e /dev/shm, e 10% da RAM para todos os demais.
  • Novos parâmetros de linha de comando do kernel foram adicionados: systemd.hostname para definir o nome do host no início do carregamento, udev.blockdev_read_only para restringir todos os dispositivos de bloco relacionados a dispositivos de armazenamento físico ao modo somente leitura (para cancelamento seletivo, utilize o comando "blockdev --setrw"), systemd.swap para desativar a ativação automática da partição de swap, systemd.clock-usec para definir o relógio do sistema em microssegundos, systemd.condition-needs-update e systemd.condition-first-boot para sobrescrever as verificações ConditionNeedsUpdate e ConditionFirstBoot.
  • Por padrão, o sysctl fs.suid_dumpable é configurado para o valor 2 ("suidsafe"), permitindo a preservação de core dumps para processos com a flag suid.
  • Do banco de dados de hardware do ChromiumOS, foi importado o arquivo /usr/lib/udev/hwdb.d/60-autosuspend.hwdb, que inclui informações sobre dispositivos PCI e USB que suportam a suspensão automática.
  • No networkd.conf foi adicionada a configuração ManageForeignRoutes, que, ao ser ativada, faz com que o systemd-networkd comece a gerenciar todas as rotas configuradas por outras utilidades.
  • Foi adicionada a seção «[SR-IOV]» aos arquivos .network para configurar dispositivos de rede com suporte a SR-IOV (Single Root I/O Virtualization).
  • No systemd-networkd, foi adicionada a configuração IPv4AcceptLocal à seção «[Network]» para permitir a recepção de pacotes em uma interface de rede que vêm de um endereço de origem local.
  • No systemd-networkd, foi adicionada a possibilidade de configurar disciplinas de priorização de tráfego HTB através das seções [HierarchyTokenBucket] e
    [HierarchyTokenBucketClass], «pfifo» através de [PFIFO], «GRED» através de [GenericRandomEarlyDetection], «SFB» através de [StochasticFairBlue], «cake»
    através de [CAKE], «PIE» através de [PIE], «DRR» através de [DeficitRoundRobinScheduler] e
    [DeficitRoundRobinSchedulerClass], «BFIFO» através de [BFIFO],
    «PFIFOHeadDrop» através de [PFIFOHeadDrop], «PFIFOFast» através de [PFIFOFast], «HHF»
    através de [HeavyHitterFilter], «ETS» através de [EnhancedTransmissionSelection],
    «QFQ» através de [QuickFairQueueing] e [QuickFairQueueingClass].
  • No systemd-networkd, foi adicionada a configuração UseGateway à seção [DHCPv4] para desativar a aplicação das informações do gateway obtidas via DHCP.
  • No systemd-networkd, nas seções [DHCPv4] e [DHCPServer], foi adicionada a configuração SendVendorOption para estabelecer e processar opções adicionais do fornecedor.
  • No systemd-networkd, na seção [DHCPServer], foi implementado um novo conjunto de opções EmitPOP3/POP3, EmitSMTP/SMTP e EmitLPR/LPR para adicionar informações sobre servidores POP3, SMTP e LPR.
  • No systemd-networkd, nos arquivos .netdev, na seção [Bridge], foi adicionada a configuração VLANProtocol para selecionar o protocolo VLAN a ser usado.
  • No systemd-networkd, nos arquivos .network, na seção [Link], foi implementada a configuração Group para gerenciar grupos de links.
  • As configurações BlackList foram renomeadas para DenyList (para garantir compatibilidade reversa, o processamento do nome antigo foi mantido).
  • No systemd-networkd, foi adicionada uma grande quantidade de configurações relacionadas ao IPv6 e DHCPv6.
  • No networkctl, foi adicionada o comando «forcerenew» para forçar a atualização de todos os vínculos de endereços (lease).
  • No systemd-resolved, na configuração DNS, foi adicionada a possibilidade de especificar o número da porta e o nome do host para verificação do certificado DNS-over-TLS. Na implementação do DNS-over-TLS, foi adicionado suporte para verificação de SNI.
  • No systemd-resolved, foi adicionada a possibilidade de configurar o redirecionamento de nomes DNS de um único componente (single-label, de um único nome de host).
  • No systemd-journald, foi garantido o suporte à aplicação do algoritmo zstd para compressão de campos grandes nos logs. Foi feito trabalho para proteger contra a ocorrência de colisões nas tabelas de hash utilizadas nos logs.
  • No journalctl, ao exibir mensagens de log, foram adicionados URLs clicáveis com links para a documentação.
  • No arquivo journald.conf foi adicionada a configuração Audit para controlar a ativação da auditoria durante o processo de inicialização do systemd-journald.
  • No systemd-coredump foi adicionada a possibilidade de compressão de core dumps usando o algoritmo zstd.
  • No systemd-repart foi adicionada a configuração UUID para atribuir UUID à partição recém-criada.
  • No serviço systemd-homed, que gerencia diretórios pessoais portáteis, foi adicionada a capacidade de desbloquear diretórios pessoais usando tokens FIDO2. No backend de criptografia de partições LUKS, foi adicionado suporte para retornar automaticamente blocos vazios do sistema de arquivos ao final da sessão. Foi adicionada proteção contra dupla criptografia de dados, se for determinado que a partição /home já está criptografada no sistema.
  • No /etc/crypttab foram adicionadas as configurações: 'keyfile-erase' para remover a chave após o uso e 'try-empty-password' para tentar desbloquear a partição com uma senha vazia antes de solicitar a senha ao usuário (útil para a instalação de imagens criptografadas com a definição da senha após a primeira inicialização, e não durante a instalação).
  • No systemd-cryptsetup, durante a inicialização, foi implementado suporte para desbloquear partições Microsoft BitLocker usando o /etc/crypttab. Também foi adicionada a possibilidade de leitura
    de chaves para desbloqueio automático de partições a partir dos arquivos /etc/cryptsetup-keys.d/.key e /run/cryptsetup-keys.d/.key.
  • Foi adicionado o gerador systemd-xdg-autostart-generator para criar arquivos unit a partir de arquivos de inicialização automática .desktop.
  • No 'bootctl' foi adicionada o comando 'reboot-to-firmware'.
  • No systemd-firstboot foram adicionadas opções: '--image' para especificar a imagem do disco para inicialização, '--kernel-command-line' para inicializar o arquivo /etc/kernel/cmdline, '--root-password-hashed' para definir o hash da senha root e '--delete-root-password' para remover a senha root.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster