No Compute Engine, é possível usar o Login do SO para conceder aos usuários acesso a VMs e
restringir os usuários com acesso a sudo
. Se você quiser controlar quais usuários podem
visualizar ou executar arquivos e executáveis específicos em VMs, use
as políticas do SO para implantar políticas
que automatizam e centralizam o gerenciamento de arquivos na frota de VMs.
Neste tutorial, mostramos como conceder acesso de visualização ao arquivo
auth.log
(/var/log/auth.log
) em várias VMs para um grupo de usuários que não têm acesso de sudo
que usam as políticas e grupos de login do SO.
Na maioria das configurações padrão, as permissões do arquivo auth.log
são definidas como 640
,
e o arquivo pertence ao grupo adm
. Um usuário que não tenha o
papel do IAM roles/compute.osAdminLogin
não está no grupo adm
, não tem acesso
no sudo
e, portanto, não tem acesso de leitura ao o arquivo.
Este tutorial se concentra no gerenciamento de permissões do usuário em um arquivo específico, mas o fluxo de trabalho pode ser modificado e usado para definir permissões em outros arquivos ou executáveis em uma VM.
Objetivos
Neste tutorial, você aprenderá o seguinte:
- Como criar um grupo do Linux de Login do SO
- Como usar uma atribuição de política de SO para alterar as permissões de grupo de um arquivo em várias VMs de uma só vez
Custos
Neste documento, você usará os seguintes componentes faturáveis do Google Cloud:
Para gerar uma estimativa de custo baseada na projeção de uso deste tutorial, use a calculadora de preços.
Ao concluir as tarefas descritas neste documento, é possível evitar o faturamento contínuo excluindo os recursos criados. Saiba mais em Limpeza.
Novos usuários do Google Cloud podem estar qualificados para uma avaliação gratuita.Antes de começar
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Instale ou atualize para a versão mais recente da Google Cloud CLI.
- Certifique-se de que você é um administrador dos grupos do Cloud Identity para sua organização. Se você não for um administrador do Grupos, peça para o administrador do Grupos da sua organização criar um grupo do Linux de Login do SO para você.
- Ativar VM Manager
Preparar o ambiente
Antes de conceder acesso ao arquivo auth.log
, você precisa criar algumas VMs.
Crie três VMs usando o
comando gcloud compute instances bulk create
:
gcloud compute instances bulk create \ --name-pattern=tutorial-# \ --zone=us-west1-a \ --count=3 \ --labels=vm=tutorial \ --metadata=enable-oslogin=TRUE
Você verá uma mensagem semelhante a esta:
`Bulk create request finished with status message: [VM instances created: 3, failed: 0.]`
Definir as permissões de grupo para o arquivo auth.log
Para conceder a um usuário acesso de leitura ao arquivo auth.log
sem conceder a ele o papel do IAM roles/compute.osAdminLogin
, altere
o grupo que possui o arquivo para
um grupo do Linux do qual o usuário é membro.
Criar um grupo do Linux de Login do SO
É possível criar um grupo do Linux de login do SO para adicionar um grupo complementar do Linux que aparece em cada VM com o login do SO ativado. Ao criar um grupo do Linux de Login do SO em vez de um grupo complementar do Linux, é possível controlar o grupo do Linux em todas as VMs de maneira unificada.
Para criar um grupo do Linux de Login do SO, use o
comando gcloud beta identity groups create
:
gcloud beta identity groups create logaccess@ORGANIZATION_DOMAIN \ --organization=ORGANIZATION_DOMAIN \ --posix-group=gid=12345,name=logaccess
Substitua ORGANIZATION_DOMAIN
pelo domínio
(example.com
) associado à sua organização.
Criar uma atribuição de política do SO
É possível usar as
políticas do SO
para automatizar e centralizar a configuração das VMs. Você
aplica políticas de SO a VMs usando atribuições de políticas de SO. Ao criar uma atribuição de política
de SO com uma política que altera o grupo padrão do arquivo auth.log
,
é possível alterar o grupo padrão do arquivo auth.log
em várias VMs de
uma só vez, em vez de aplicar a alteração a uma VM por vez.
Para criar uma atribuição de política de SO, faça o seguinte:
Abra um terminal na estação de trabalho.
Crie um arquivo
.yaml
de atribuição de política de SO executando o seguinte comando:touch tutorial-os-policy-assignment.yaml
Abra o arquivo
tutorial-os-policy-assignment.yaml
em um editor de texto e adicione as seguintes especificações:
Aplicar a atribuição de política de SO às VMs
Para aplicar a atribuição de política de SO às VMs, faça o seguinte:
Aplique a política do SO usando o comando
gcloud compute os-config os-policy-assignments create
:gcloud compute os-config os-policy-assignments create log-access-assignment \ --location=us-west1-a \ --file=log-access-os-policy-assignment.yaml \ --async
A atribuição de política do SO é lançada para as VMs de acordo com as especificações de lançamento mencionadas no arquivo
tutorial-os-policy-assignment.yaml
.Confirme se a atribuição da política do SO foi lançada com sucesso para as VMs e se a atribuição da política do SO atualizou com sucesso o grupo padrão usando o comando
gcloud compute os-config os-policy-assignment-reports list
:gcloud compute os-config os-policy-assignment-reports list --location=us-west1-a
Adicionar usuários ao grupo do Linux de Login do SO
Quando você adiciona um usuário a um grupo do Login do SO no Linux, ele herda as
permissões do grupo em todas as VMs que têm o Login do SO ativado.
Para este tutorial, qualquer usuário adicionado ao grupo logaccess
pode visualizar o
arquivo auth.log
sem o papel roles/compute.osAdminLogin
do IAM.
Veja a documentação de Ajuda do Cloud Identity para saber como
adicionar um usuário ao grupo logaccess
.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.
Excluir o projeto
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Excluir recursos individuais
Exclua as VMs que você criou usando o
comando gcloud compute instances delete
:
gcloud compute instances delete tutorial-1 tutorial-2 tutorial-3 \ --zone=us-west1-a
A seguir
- Saiba mais sobre o Login do SO.
- Saiba mais sobre o VM Manager
- Confira arquiteturas de referência, diagramas e práticas recomendadas do Google Cloud. Confira o Centro de arquitetura do Cloud.