Imagine um dispositivo médico que executa Linux em um hospital. Ele processa dados de pacientes, ajusta dosagens e gera relatórios para sistemas clínicos. Ou um caixa eletrônico em uma esquina, processando transações 24 horas por dia. Ou um dispositivo de gateway na edge de uma rede de manufatura, retransmitindo dados de sensores do chão de fábrica. O sistema operacional (OS) de cada um desses dispositivos passou por verificação no momento da instalação. Mas cada binário e biblioteca ainda são exatamente o que foi criado? Se você exigiria essa garantia para um dispositivo em uma sala de cirurgia ou no chão de fábrica, por que não esperar o mesmo dos servidores que executam seus negócios?

A lacuna na sua cadeia de inicialização

Normalmente, a instalação padrão de um sistema operacional genérico vem "desbloqueada", permitindo acesso como root no computador e a realização de alterações persistentes. Embora uma instalação genérica do Red Hat Enterprise Linux (RHEL) ou do Debian ofereça suporte à inicialização segura, normalmente apenas o kernel é assinado. A cadeia de confiança criptográfica do firmware não abrange o sistema de arquivos raiz nem as aplicações. Para as organizações que desejam criar "appliances", é possível aumentar a segurança vinculando a inicialização segura à integridade do sistema operacional com assinaturas personalizadas.

Dos fluxos de trabalho de containers à integridade do sistema operacional

A maioria das organizações já cria, assina e envia imagens de containers por pipelines de CI/CD. Cada pull de container verifica um digest criptográfico. Sempre que um novo container é iniciado, o runtime confirma se a imagem corresponde ao que foi assinado. As organizações já confiam nesse modelo para suas aplicações.

O image mode para RHEL traz o mesmo fluxo de trabalho de containers para o próprio sistema operacional. Em vez de instalar e configurar um OS manualmente ou por scripts, você o define em um Containerfile (ou outro buildsystem OCI compatível), cria-o como uma imagem de container e o implanta com o bootc. O sistema operacional se torna um artefato reproduzível e com controle de versão que passa pelo mesmo pipeline das aplicações. As atualizações são atômicas. A reversão é integrada. Cada sistema implantado executa a imagem criada, permitindo rastreá-la até o sistema de compilação de origem.

Com o image mode habilitado, as imagens lacradas vão um passo além. A imagem do OS que você criou e assinou agora conta com verificação criptográfica, do firmware ao runtime. Você não está adotando um novo processo. Você está estendendo um processo em que já confia, das aplicações para a camada do OS.

Como funciona

A inicialização segura e uma imagem de kernel unificada assinada já verificam a cadeia de boot: Bootloader, kernel, initramfs. As imagens seladas estendem a verificação para a própria imagem imutável de OS, com precisão no nível do arquivo. Ao usar o composefs e o fs-verity, o sistema incorpora um resumo criptográfico da imagem de container do sistema operacional diretamente no UKI assinado durante a compilação. No runtime, o sistema verifica individualmente cada arquivo que você ou seu time adicionaram à imagem em relação a esse resumo. O sistema recusa o carregamento de qualquer arquivo de sistema operacional que não corresponda. Se algo for modificado, corrompido ou substituído após a compilação da imagem, o kernel retornará um erro de E/S. O sistema não fornece o arquivo. O arquivo não é registrado nem fornecido, tampouco sinalizado e fornecido. Ele é simplesmente ilegível. O conteúdo adulterado é removido de forma eficaz, portanto, o kernel não o entrega a nenhum processo.

O que isso significa para sua infraestrutura

A cadeia de assinaturas está sob seu controle. Você gera as chaves, assina as imagens e decide o que é confiável para seus sistemas. Sua cadeia de custódia não exige nenhum fornecedor.

Organizações de alta segurança dos setores governamental, financeiro e de saúde exigem esse nível de integridade do sistema operacional há anos. As imagens seladas oferecem esse recurso, que está disponível para qualquer organização. Não é necessário estar em um setor regulamentado para se beneficiar da garantia de que seu sistema operacional é exatamente o que você criou.

Vale a pena ser preciso sobre o que as imagens seladas abrangem. O selo protege os arquivos na imagem imutável do OS: o sistema operacional de base e todo o software em camadas sobre ele. Seus agentes de monitoramento, suas ferramentas de segurança, seus binários de aplicações e os pacotes específicos que seu time adicionou à imagem base. Tudo isso é selado. Isso não abrange configurações graváveis em /etc nem o estado do runtime em /var. Essa distinção é deliberada. O selo protege o OS que você criou. O gerenciamento de configuração e as ferramentas de segurança do runtime ajudam a proteger o restante.

No início deste artigo, mencionei um dispositivo médico e um caixa eletrônico, mas o impacto vai além desses exemplos. Imagine um datacenter, uma frota de edge ou um chão de fábrica. Um Containerfile define o sistema operacional. Um único pipeline cria, assina e lacra a imagem. Implante a mesma imagem lacrada em bare metal, VMs e instâncias na nuvem. A mesma integridade acompanha a imagem em qualquer lugar. Este não é um recurso de nicho para um caso de uso restrito. É assim que a integridade do sistema operacional deve ser.

Comece agora mesmo

As imagens lacradas estão disponíveis como Technology Preview no RHEL 10.2. Ele é baseado em tecnologias Linux upstream, incluindo componentes significativos do projeto systemd e ferramentas de boot seguro. Ele também utiliza o composefs, que oferece uma maneira flexível e eficiente de garantir a integridade, assim como o dm-verity⁣fornece mas com a flexibilidade de uma abordagem baseada em sistema de arquivos. Este é o futuro do gerenciamento de sistemas operacionais. O Technology Preview está aberto e as ferramentas já funcionam. Publicaremos uma série de artigos no Red Hat Developer Blog nas próximas semanas para mostrar como criar e verificar sistemas dessa forma na prática.

Teste de produto

Red Hat Enterprise Linux | Teste da solução

Versão do Red Hat Enterprise Linux que orquestra recursos de hardware e é executada em sistemas físicos, na nuvem ou como um guest de hipervisor.

Sobre os autores

Mark joined Red Hat in 2014 and is part of the RHEL and OpenShift product management teams. Before that, he had experience as: a sysadmin, a support tech for multiple Linux distros, a consulting architect and an engineering partnership manager. He loves discussing image-based operating systems, edge scenarios, and container engines. Outside of work, Mark enjoys going to see punk rock and other weird music shows in tiny clubs.

UI_Icon-Red_Hat-Close-A-Black-RGB

Navegue por canal

automation icon

Automação

Últimas novidades em automação de TI para empresas de tecnologia, equipes e ambientes

AI icon

Inteligência artificial

Descubra as atualizações nas plataformas que proporcionam aos clientes executar suas cargas de trabalho de IA em qualquer ambiente

open hybrid cloud icon

Nuvem híbrida aberta

Veja como construímos um futuro mais flexível com a nuvem híbrida

security icon

Segurança

Veja as últimas novidades sobre como reduzimos riscos em ambientes e tecnologias

edge icon

Edge computing

Saiba quais são as atualizações nas plataformas que simplificam as operações na borda

Infrastructure icon

Infraestrutura

Saiba o que há de mais recente na plataforma Linux empresarial líder mundial

application development icon

Aplicações

Conheça nossas soluções desenvolvidas para ajudar você a superar os desafios mais complexos de aplicações

Virtualization icon

Virtualização

O futuro da virtualização empresarial para suas cargas de trabalho on-premise ou na nuvem