Uma política do SO é um arquivo que contém a configuração declarativa para recursos
do SO, como pacotes, repositórios, arquivos ou recursos personalizados definidos por
scripts. Para mais informações, consulte a definição de recursos para OSPolicy.
Uma atribuição de política de SO é um recurso de API usado pelo VM Manager para
aplicar políticas de SO a VMs. Para saber mais, consulte a definição de recursos
para OSPolicyAssignment.
Política de SO
Uma política de SO é um arquivo JSON ou YAML que tem três seções:
- modo de cada campo. O comportamento da política. Os dois modos a seguir estão disponíveis: - Validation: para este modo, a política verifica se os recursos estão no estado pretendido, mas não realizam nenhuma ação.
- Enforcement: nesse modo, a política verifica se os recursos estão no estado desejado e, se não estiverem, executa as ações necessárias para trazê-los para esse estado.
 - Para ambos os modos, o VM Manager informa a conformidade com a política do SO e os recursos associados. 
- Grupos de recursos. O nome e a versão do sistema operacional a que as especificações de recursos associadas se aplicam. Por exemplo, é possível definir uma única política para instalar ou implantar um agente em diferentes distribuições e versões de sistemas operacionais. 
- Recursos. As especificações necessárias para que a VM atinja a configuração pretendida. É possível especificar no máximo 10 IDs de recursos em cada grupo. Os seguintes tipos de recursos são suportados: - pkg: usado para instalar ou remover pacotes do Linux e do Windows
- repository: usado para especificar de quais pacotes de software de repositório podem ser instalados
- exec: usado para ativar a execução de um script ad hoc shell (- /bin/sh) ou PowerShell.
- file: usado para gerenciar arquivos no sistema
 
Exemplo de políticas do SO
Os exemplos a seguir mostram como criar políticas de SO. É possível fazer upload dessas políticas de SO para o Cloud de Confiance console ao criar uma atribuição de política de SO.
- Exemplo 1: instala um pacote.
- Exemplo 2: executa um script.
- Exemplo 3: executa um script armazenado em um bucket do Cloud Storage e copia o arquivo de saída para um bucket do Cloud Storage.
- Exemplo 4: especifica um repositório de download e instala pacotes desse repositório.
- Exemplo 5: configura a verificação de comparativo de mercado do CIS em VMs que executam o Container-Optimized OS (COS). Para mais informações sobre como usar a política do SO para a verificação de comparativo de mercado do CIS, consulte Automatizar a ativação e a verificação do status de conformidade do CIS.
Para ver uma lista completa das políticas de SO de amostra que podem ser aplicadas no seu ambiente, consulte o repositório GoogleCloudPlatform/osconfig do GitHub.
Exemplo 1
Crie uma política do SO que instale um arquivo MSI do Windows transferido de um bucket do Cloud Storage.
Exemplo 2
Crie uma política de SO que verifique se o servidor da Web Apache está em execução nas VMs do Linux.
Exemplo 3
Crie uma política de SO que verifique se o servidor da Web Apache está em execução
      nas VMs do Linux. Neste exemplo, o script apache-validate.sh
      é armazenado em um bucket do Cloud Storage. Para copiar a saída para um bucket do Cloud Storage, o script apache-enforce.sh precisa incluir um comando semelhante a este:
      gcsutil cp my-exec-output-file gs://my-gcs-bucket
      
Exemplo 4
Crie uma política de SO que instale os agentes do Google Cloud Observability nas VMs do CentOS.
Example 5
Configura a verificação periódica de CIS de nível 1 com o período padrão de uma vez por dia.
Atribuição de política de SO
Uma atribuição de política do SO tem as seguintes seções:
- Políticas de SO. Uma ou mais políticas do SO que você quer aplicar à VM; Para fazer o download ou criar uma política, consulte as Políticas do SO. 
- VMs de destino. Um conjunto de VMs em uma única zona à qual você quer aplicar a política. Em uma zona, é possível limitar ou restringir as VMs especificando os nomes dos SOs e incluindo ou excluindo rótulos. É possível selecionar uma combinação das seguintes opções: - Zona: especifica a zona do Cloud de Confiance by S3NS em que você quer implantar a atribuição de política do SO.
- Nome e versão do SO: especifica o nome abreviado e a versão do sistema operacional de destino a que a política de SO se aplica.
 - Para filtrar VMs com base no sistema operacional, use qualquer um dos seguintes nomes abreviados nos arquivos YAML da política de SO: - Nome completo - Nome curto - CentOS - centos- Container-Optimized OS (COS) - cos- Debian - debian- openSUSE Leap - opensuse-leap- Oracle Linux - ol- Red Hat Enterprise Linux (RHEL) - rhel- Rocky Linux - rocky- SUSE Linux Enterprise Server (SLES) - sles- Ubuntu - ubuntu- Windows Server - windows- Para ver uma lista completa de sistemas operacionais e versões compatíveis com políticas de SO, consulte Detalhes do sistema operacional. - Incluir conjunto: especifica as VMs a que a política do SO se aplica com base nos rótulos da VM ou do sistema.
- Excluir conjunto: especifica as VMs que a política de SO precisa ignorar com base nos rótulos da VM ou do sistema.
 - Para conjuntos de inclusão e exclusão de rótulos, um único rótulo de string será aceito se corresponder à convenção de nomenclatura usada pelo sistema. No entanto, a maioria dos rótulos é especificada em pares - key:value. Para mais informações sobre rótulos, consulte Como rotular recursos.- Por exemplo, é possível selecionar todas as VMs do Ubuntu no ambiente de teste e excluir aquelas que executam o Google Kubernetes Engine. Basta especificar o seguinte: - Nome curto do SO: ubuntu
- Incluir: env:test,env:staging
- Excluir: goog-gke-node
 
- Uma taxa de lançamento. Especifica o ritmo em que as políticas do sistema operacional serão aplicadas às VMs. As políticas do SO são lançadas gradualmente para permitir que você acompanhe a integridade do sistema e faça modificações se as atualizações causarem regressões no seu ambiente. Um plano de lançamento tem os seguintes componentes: - Tamanho da onda (orçamento de interrupção): o número fixo ou a porcentagem de VMs que podem passar por um lançamento de uma só vez. Isso significa que, a qualquer momento do lançamento, apenas um número específico de VMs é segmentado.
- Tempo de espera: o tempo entre o momento em que o serviço aplica políticas à VM e quando uma VM é removida do limite de interrupção. Por exemplo, um tempo de espera de 15 minutos significa que o processo de lançamento precisa aguardar 15 minutos após aplicar as políticas a uma VM antes de removê-la do limite de interrupção e o lançamento pode continuar. O tempo de espera ajuda a controlar a velocidade de um lançamento e também permite identificar e resolver possíveis problemas com antecedência. Selecione um período longo o suficiente para monitorar o status dos lançamentos.
 - Por exemplo, se você definir um destino de 10 VMs, definir o limite de interrupção para 20% e definir um tempo de preparação de 15 minutos, será preciso programar a atualização de apenas duas VMs a qualquer momento. Depois que cada VM é atualizada, 15 minutos precisam ser removidos para que ela seja removida do limite de interrupção e outra VM seja adicionada ao lançamento. - Para mais informações sobre lançamentos, consulte Lançamentos. 
Exemplo de atribuição de políticas do SO
Os exemplos a seguir mostram como criar atribuições de política do SO. Você pode usar esses exemplos para criar atribuições de política do SO na Google Cloud CLI ou na API OS Config.
- Exemplo 1: instala um pacote.
- Exemplo 2: executa um script.
- Exemplo 3: especifica um repositório de download e instala pacotes desse repositório.
Para uma lista de atribuições de política de amostra do SO que podem ser aplicadas no seu ambiente, consulte o repositório GoogleCloudPlatform/osconfig do GitHub.
Exemplo 1
Crie uma atribuição de política de SO que instale um arquivo MSI do Windows transferido por download de um bucket do Cloud Storage.
Exemplo 2
Crie uma atribuição de política do SO que verifique se o servidor da Web Apache está em execução em todas as VMs do Linux.
Exemplo 3
Cria uma atribuição de política de SO que instale os agentes do Google Cloud Observability nas VMs do CentOS.
A seguir
- Saiba mais sobre as políticas do SO.
- Crie uma atribuição de política do SO.
- Gerencie políticas do SO.