Compartilhar via


Fortalecer uma imagem do Linux para remover usuários sudo

Aplica-se a: ✔️ Imagens do Linux

Este guia mostra as etapas para remover usuários sudo da imagem do Linux e implantar uma máquina virtual confidencial (VM confidencial) no Azure.

O objetivo deste artigo é criar uma imagem do Linux sem administrador para implantações de VM confidenciais. A remoção do administrador convidado tem um valor de segurança imenso, reduz os privilégios de administrador em todo o sistema operacional.

Noções básicas sobre diferentes tipos de usuários em sistemas Unix/Linux:

  • Usuário administrador (sudoer): usuários regulares com permissões extras. Esses usuários podem executar determinadas tarefas que modificam as configurações do sistema.

  • Usuário regular: usuários regulares são usuários não administradores. Eles não têm permissão para modificar as configurações do sistema ou instalar software em todo o sistema.

No contexto de imagens do Linux sem administrador, o objetivo é implantar sistemas sem usuários sudo.

Observação

A configuração por si só não impede que usuários sejam adicionados ao grupo sudo. Qualquer serviço com privilégios de raiz ou sudo tem o potencial de escalonar privilégios.

Pré-requisitos

Remova usuários do grupo sudo e prepare uma imagem generalizada do Linux

A solução proposta resulta em uma imagem do Linux sem usuários sudo.

As etapas para criar uma imagem generalizada para remover os usuários do sudo são as seguintes:

  1. Baixe uma imagem do Ubuntu. Criar uma imagem personalizada para a VM confidencial do Azure

  2. Monte a imagem.

    Há várias maneiras de fazer isso Anexar o disco, o exemplo usa o dispositivo de loop para montar a imagem. Isso pode ser um disco anexado ou um dispositivo de loop Montar a imagem.

    $imagedevice é a partição do sistema de arquivos raiz no dispositivo que contém a imagem.

    mount /dev/$imagedevice /mnt/dev/$imagedevice
    

    Esse processo geralmente é usado para acessar e trabalhar com imagens de disco. Aqui, ele é usado para remover os usuários sudo da imagem do Ubuntu.

  3. Use chroot no sistema de arquivos vhd para executar o comando a seguir, que lista os usuários no grupo sudo.

    sudo chroot /mnt/dev/$imagedevice/ getent group sudo
    
  4. Valide a etapa 3 listando os usuários no diretório inicial sudoers.d e em /etc/passwd, /etc/shadow files. Se houver usuários com privilégios sudo, eles serão listados aqui,

    sudo ls /mnt/dev/$imagedevice/etc/sudoers.d
    
    sudo cat /mnt/dev/$imagedevice/etc/passwd
    
    sudo cat /mnt/dev/$imagedevice/etc/shadow
    
  5. Remover privilégios sudo: use o comando deluser para remover o privilégio sudo do usuário,

    sudo chroot /mnt/dev/$imagedevice/ deluser -r [sudo_username]
    
  6. Repita a etapa 4 para validar que o usuário não possui privilégios de sudo no VHD.

  7. Desmonte a imagem.

    umount /mnt/dev/$imagedevice
    

A imagem preparada não inclui nenhum(s) usuário(s) sudo que possam ser usados para criar VMs confidenciais.

Siga as etapas Criar uma imagem personalizada para a VM confidencial do Azure para criar uma VM confidencial do Azure. Use a imagem sem administrador na etapa 4 de Criar uma imagem personalizada para a VM confidencial do Azure enquanto faz azcopy e o restante das etapas permanece o mesmo.