Usar o Kernel Live Patching em nós gerenciados do Amazon Linux 2 - AWS Systems Manager

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Usar o Kernel Live Patching em nós gerenciados do Amazon Linux 2

O Kernel Live Patching para Amazon Linux 2 permite que você aplique patches para vulnerabilidades de segurança e erros críticos a um kernel do Linux em execução, sem reinicializações ou interrupções às aplicações em execução. Isso permite que você aproveite a maior disponibilidade de serviços e aplicações, mantendo sua infraestrutura segura e atualizada. O Kernel Live Patching é compatível com instâncias do Amazon EC2, com dispositivos principais do AWS IoT Greengrass e com máquinas virtuais on-premises que executam o Amazon Linux 2.

Para obter informações gerais sobre o Kernel Live Patching, consulte Kernel Live Patching no Amazon Linux 2 no Manual do usuário do Amazon EC2 para instâncias do Linux.

Depois de ativar Kernel Live Patching em um nó gerenciado do Amazon Linux 2, você poderá usar o Patch Manager, um recurso do AWS Systems Manager para aplicar patches ao vivo do kernel ao nó gerenciado. Usar o Patch Manager é uma alternativa ao uso de fluxos de trabalho do yum existentes em seu nó para aplicar as atualizações.

Antes de começar

Para usar o Patch Manager para aplicar patches ao vivo do kernel aos nós gerenciados do Amazon Linux 2, verifique se os nós são baseados na arquitetura e na versão do kernel corretas. Para obter mais informações, consulte Configurações e pré-requisitos compatíveis no Guia do usuário do Amazon EC2 para instâncias do Linux.

Sobre o Kernel Live Patching e Patch Manager

Atualizar a versão do kernel

Não é necessário reinicializar um nó gerenciado depois de aplicar uma atualização de patch ao vivo do kernel. No entanto, a AWS fornece patches ao vivo do kernel para uma versão do kernel do Amazon Linux 2 por até três meses após seu lançamento. Após o período de três meses, é necessário fazer a atualização para uma versão posterior do kernel para continuar a receber patches ao vivo do kernel. Recomendamos usar uma janela de manutenção para agendar uma reinicialização do nó pelo menos uma vez a cada três meses para solicitar a atualização da versão do kernel.

Desinstalar patches ao vivo do kernel

Os patches ao vivo do kernel não podem ser desinstalados usando o Patch Manager. Em vez disso, é possível desabilitar o Kernel Live Patching, o que remove os pacotes RPM para os patches ao vivo do kernel aplicados. Para obter mais informações, consulte Desativar o Kernel Live Patching usando Run Command.

Conformidade com o kernel

Em alguns casos, instalar todas as correções CVE dos patches ao vivo para a versão atual do kernel pode trazer esse kernel para o mesmo estado de conformidade de uma versão mais recente do kernel. Quando isso acontece, a versão mais recente é relatada como Installed e o nó gerenciado é relatado como Compliant. No entanto, nenhum tempo de instalação é relatado para a versão mais recente do kernel.

Um patch ao vivo do kernel, vários CVEs

Se um patch ao vivo do kernel aborda vários CVEs e estes tiverem vários valores de classificação e gravidade, somente a classificação e a gravidade mais altas entre os CVEs serão relatadas ao patch.

O restante desta seção descreve como usar o Patch Manager para aplicar patches ao vivo do kernel aos nós gerenciados que atendem a esses requisitos.

Como funciona

A AWS lança dois tipos de patches ao vivo do kernel para o Amazon Linux 2: atualizações de segurança e correções de bugs. Para aplicar esses tipos de patches, use um documento de linha de base de patch que visa somente as classificações e severidades listadas na tabela a seguir.

Classificação Severidade
Security Critical, Important
Bugfix All

É possível criar uma lista de referência de patches personalizada destinada apenas a esses patches ou usar a lista de referência de patches AWS-AmazonLinux2DefaultPatchBaseline predefinida. Em outras palavras, é possível usar o AWS-AmazonLinux2DefaultPatchBaseline com nós gerenciados do Amazon Linux 2 nos quais o Kernel Live Patching estiver ativado, e as atualizações ao vivo do kernel serão aplicadas.

nota

A configuração AWS-AmazonLinux2DefaultPatchBaseline especifica um período de espera de sete dias após o lançamento ou última atualização de um patch antes que ele seja instalado automaticamente. Se você não quiser aguardar sete dias para que os patches ao vivo do kernel sejam aprovados automaticamente, é possível criar e usar uma lista de referência de patches personalizada. Na linha de base do patch, você pode especificar nenhum período de espera de aprovação automática ou especificar um período mais curto ou mais longo. Para obter mais informações, consulte Trabalhando com linhas de base de patch personalizadas.

Recomendamos a seguinte estratégia para aplicar patches aos nós gerenciados com atualizações ao vivo do kernel:

  1. Ativar o Kernel Live Patching em nós gerenciados do Amazon Linux 2.

  2. Use o Run Command, um recurso do AWS Systems Manager, para executar uma operação do Scan em seus nós gerenciados, usando a lista de referência de patches AWS-AmazonLinux2DefaultPatchBaseline predefinida ou a personalizada que também é destinada somente às atualizações Security classificadas como Critical e Important e a gravidade Bugfix de All.

  3. Use Conformidade, um recurso do AWS Systems Manager para verificar se a incompatibilidade para aplicação de patches é relatada para qualquer um dos nós gerenciados que foram verificados. Em caso afirmativo, visualize os detalhes de conformidade do nó para determinar se algum patch ao vivo do kernel está ausente em seu nó gerenciado.

  4. Para instalar patches ao vivo do kernel ausentes, use o Run Command com a mesma lista de referência de patches especificada anteriormente, mas desta vez execute uma operação Install em vez de uma operação Scan.

    Como os patches ao vivo do kernel são instalados sem a necessidade de reinicialização, é possível escolher a opção de reinicialização NoReboot para esta operação.

    nota

    Você pode ainda reinicializar o nó gerenciado se necessário para outros tipos de patches instalados nele ou se quiser atualizar para um kernel mais recente. Nesses casos, escolha a opção de reinicialização RebootIfNeeded.

  5. Retorne à conformidade do para verificar se os patches ao vivo do kernel foram instalados.

Ativar o Kernel Live Patching usando Run Command

Para ativar o Kernel Live Patching, você pode executar o yum em seus nós gerenciados ou usar o Run Command e um documento personalizado do Systems Manager (documento SSM) que você criar.

Para obter informações sobre como ativar o Kernel Live Patching executando comandos yum diretamente em seu nó gerenciado, consulte Habilitar o Kernel Live Patching no Guia do usuário do Amazon EC2 para instâncias do Linux.

nota

Quando você ativa o Kernel Live Patching, se o kernel já executado em seu nó gerenciado for anterior ao kernel-4.14.165-131.185.amzn2.x86_64 (a versão mínima suportada), o processo instala a versão mais recente do kernel disponível e reinicializa o nó gerenciado. Se o nó já estiver executando o kernel-4.14.165-131.185.amzn2.x86_64 ou posterior, o processo não instalará uma versão mais recente e não reinicializará o nó.

Para ativar oKernel Live PatchingusandoRun Command(console)
  1. Abra o console do AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Run Command.

    - ou -

    Se a página inicial do AWS Systems Manager abrir primeiro, escolha o ícone de menu ( 
    The menu icon
  ) para abrir o painel de navegação e escolha Run Command.

  3. Selecione Run command (Executar comando).

  4. NoDocumento de comando, escolha o documento SSM personalizadoAWS-ConfigureKernelLivePatching.

  5. Na seção Command parameters (Parâmetros de comando), especifique se deseja que os nós gerenciados sejam reinicializados como parte desta operação.

  6. Para obter informações sobre como trabalhar com os controles restantes nesta página, consulte Executar comandos no console.

  7. Escolha Run.

Para ativar Kernel Live Patching (AWS CLI)
  • Execute o seguinte comando na máquina local.

    Linux & macOS
    aws ssm send-command \ --document-name "AWS-ConfigureKernelLivePatching" \ --parameters "EnableOrDisable=Enable" \ --targets "Key=instanceids,Values=instance-id"
    Windows Server
    aws ssm send-command ^ --document-name "AWS-ConfigureKernelLivePatching" ^ --parameters "EnableOrDisable=Enable" ^ --targets "Key=instanceids,Values=instance-id"

    Substitua instance-id pelo ID do nó gerenciado do Amazon Linux 2 na qual você deseja ativar o recurso, como i-02573cafcfEXAMPLE. Para ativar o recurso em vários nós gerenciados, é possível usar um dos formatos a seguir.

    • --targets "Key=instanceids,Values=instance-id1,instance-id2"

    • --targets "Key=tag:tag-key,Values=tag-value"

    Para obter informações sobre outras opções que você pode usar no comando, consulte send-command na AWS CLI Command Reference.

Aplicar patches ao vivo do kernel usando o Run Command

Para aplicar patches ao vivo do kernel, é possível executar os comandos do yum em seus nós gerenciados ou usar o Run Command e o documento AWS-RunPatchBaseline do SSM.

Para obter informações sobre como aplicar patches ao vivo do kernel executando os comandos do yum diretamente em seu nó gerenciado, consulte Aplicar patches ao vivo do kernel no Guia do usuário do Amazon EC2 para instâncias Linux.

Como aplicar patches ao vivo do kernel usando o Run Command (console)
  1. Abra o console do AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Run Command.

    - ou -

    Se a página inicial do AWS Systems Manager abrir primeiro, escolha o ícone de menu ( 
    The menu icon
  ) para abrir o painel de navegação e escolha Run Command.

  3. Selecione Run command (Executar comando).

  4. Na lista Documento do comando, escolha o documento AWS-RunPatchBaseline do SSM.

  5. Na seção Parâmetros de comando, siga um destes procedimentos:

    • Se você estiver verificando se novos patches ao vivo do kernel estão disponíveis, em Operação, escolha Scan. Em Reboot Option (Opção de reinicialização), se você não quiser que os nós gerenciados sejam reinicializados após essa operação, escolha NoReboot. Após a conclusão da operação, será possível verificar se há novos patches e status de conformidade em Compliance (Conformidade).

    • Se você já verificou a conformidade de patches e está pronto para aplicar patches ao vivo do kernel disponíveis, em Operação, escolha Install. Em Reboot Option (Opção de reinicialização), se não quiser que os nós gerenciados sejam reinicializados após essa operação, escolha NoReboot.

  6. Para obter informações sobre como trabalhar com os controles restantes nesta página, consulte Executar comandos no console.

  7. Escolha Run.

Como aplicar patches ao vivo do kernel usando o Run Command (AWS CLI)
  1. Para executar uma operação Scan antes de verificar os resultados no Compliance, execute o comando a seguir na máquina local.

    Linux & macOS
    aws ssm send-command \ --document-name "AWS-RunPatchBaseline" \ --targets "Key=InstanceIds,Values=instance-id" \ --parameters '{"Operation":["Scan"],"RebootOption":["RebootIfNeeded"]}'
    Windows Server
    aws ssm send-command ^ --document-name "AWS-RunPatchBaseline" ^ --targets "Key=InstanceIds,Values=instance-id" ^ --parameters {\"Operation\":[\"Scan\"],\"RebootOption\":[\"RebootIfNeeded\"]}

    Para obter informações sobre outras opções que você pode usar no comando, consulte send-command na AWS CLI Command Reference.

  2. Para executar uma operação Install após verificar os resultados no Compliance, execute o comando a seguir na máquina local.

    Linux & macOS
    aws ssm send-command \ --document-name "AWS-RunPatchBaseline" \ --targets "Key=InstanceIds,Values=instance-id" \ --parameters '{"Operation":["Install"],"RebootOption":["NoReboot"]}'
    Windows Server
    aws ssm send-command ^ --document-name "AWS-RunPatchBaseline" ^ --targets "Key=InstanceIds,Values=instance-id" ^ --parameters {\"Operation\":[\"Install\"],\"RebootOption\":[\"NoReboot\"]}

Nos comandos anteriores, substitua instance-id pelo ID do nó gerenciado do Amazon Linux no qual você deseja aplicar patches ao vivo do kernel, como i-02573cafcfEXAMPLE. Para ativar o recurso em vários nós gerenciados, é possível usar um dos formatos a seguir.

  • --targets "Key=instanceids,Values=instance-id1,instance-id2"

  • --targets "Key=tag:tag-key,Values=tag-value"

Para obter informações sobre outras opções que você pode usar nesses comandos, consulte send-command na AWS CLI Command Reference.

Desativar o Kernel Live Patching usando Run Command

Para habilitar o Kernel Live Patching, é possível executar os comandos do yum em seus nós gerenciados ou usar o Run Command e um documento personalizado do AWS-ConfigureKernelLivePatching criado por você.

nota

Se não precisar mais usar o Kernel Live Patching, você pode desabilitá-lo a qualquer momento. Na maioria dos casos, não é necessário desativar o recurso.

Para obter informações sobre como desativar o Kernel Live Patching executando comandos yum diretamente em seu nó gerenciado, consulte Habilitar o Kernel Live Patching no Guia do usuário do Amazon EC2 para instâncias do Linux.

nota

Quando você desativa o Kernel Live Patching, o processo desinstala o plugin Kernel Live Patching e, em seguida, reinicializa o nó gerenciado.

Para desativar oKernel Live PatchingusandoRun Command(console)
  1. Abra o console do AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Run Command.

    - ou -

    Se a página inicial do AWS Systems Manager abrir primeiro, escolha o ícone de menu ( 
    The menu icon
  ) para abrir o painel de navegação e escolha Run Command.

  3. Selecione Run command (Executar comando).

  4. Na lista Documento do comando, escolha o documento AWS-ConfigureKernelLivePatching do SSM.

  5. Na seção Command parameters, especifique valores para os parâmetros necessários.

  6. Para obter informações sobre como trabalhar com os controles restantes nesta página, consulte Executar comandos no console.

  7. Escolha Run.

Para desativar oKernel Live Patching(AWS CLI)
  • Execute um comando semelhante ao seguinte.

    Linux & macOS
    aws ssm send-command \ --document-name "AWS-ConfigureKernelLivePatching" \ --targets "Key=instanceIds,Values=instance-id" \ --parameters "EnableOrDisable=Disable"
    Windows Server
    aws ssm send-command ^ --document-name "AWS-ConfigureKernelLivePatching" ^ --targets "Key=instanceIds,Values=instance-id" ^ --parameters "EnableOrDisable=Disable"

    Substitua instance-id pelo ID do nó gerenciado do Amazon Linux 2 na qual você quer desativar o recurso, como i-02573cafcfEXAMPLE. Para desativar o recurso em vários nós gerenciados, é possível usar um dos formatos a seguir.

    • --targets "Key=instanceids,Values=instance-id1,instance-id2"

    • --targets "Key=tag:tag-key,Values=tag-value"

    Para obter informações sobre outras opções que você pode usar no comando, consulte send-command na AWS CLI Command Reference.