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á.
Verificações de conformidade em AWS OpsWorks for Chef Automate
Importante
AWS OpsWorks O Chef Automate chegou ao fim da vida útil em 5 de maio de 2024 e foi desativado para clientes novos e existentes. Recomendamos que os clientes existentes migrem para o Chef SaaS ou uma solução alternativa. Se você tiver dúvidas, pode entrar em contato com a AWS Support equipe no AWS re:POST
As verificações de conformidade permitem acompanhar a conformidade de nós gerenciados na infraestrutura com base em políticas predefinidas, também chamadas de regras. As visualizações de conformidade permitem que você audite regularmente os aplicativos em busca de vulnerabilidades e configurações fora de conformidade. O Chef oferece mais de 100 perfis de conformidade predefinidos – coleções de regras que se aplicam a configurações de nó específicas – que você pode usar nas verificações de conformidade. Você também pode usar a InSpec linguagem Chef
Se o servidor ainda não estiver executando o Chef Automate 2.0, você poderá configurar o Chef Compliance
nota
A versão mínima suportada do software de agente cliente Chef Infra (chef-client
) nos nós associados a um AWS OpsWorks for Chef Automate servidor é 13. x. Recomendamos executar a chef-client
versão mais atual e estável, ou pelo menos a 14.10.9.
Tópicos
Conformidade no Chef Automate 2.0
Se o seu AWS OpsWorks for Chef Automate servidor estiver executando o Chef Automate 2.0, configure o Chef Compliance usando os procedimentos desta seção.
Executar tarefas de verificação de conformidade com o Chef Automate 2.0
O Chef Automate 2.0 inclui o recurso de InSpec verificação de conformidade do Chef que anteriormente exigia configuração manual e configuração do livro de receitas. Você pode executar trabalhos de digitalização em um AWS OpsWorks for Chef Automate servidor que esteja executando o Chef Automate 2.0. As tarefas podem ser executadas imediatamente (uma vez), programadas para um horário posterior ou programadas para serem executadas em intervalos específicos, como diariamente ou a cada duas horas. Os resultados de uma tarefa de verificação são enviados para geração de relatórios de conformidade. Você pode visualizar e tomar atitudes com base nos resultados de verificação de conformidade no painel do Chef Automate. Para abrir a guia Compliance (Conformidade) e visualizar relatórios, na guia Scan Jobs (Tarefas de verificação) do painel do Chef Automate, escolha Report (Relatório) à direita de uma linha de nós gerenciados.
Para executar tarefas de verificação em nós gerenciados, você deve ter os itens a seguir.
-
Pelo menos um perfil de conformidade instalado no namespace.
-
Pelo menos um nó de destino, adicionado manualmente, ou uma instância do EC2 adicionada automaticamente.
Em AWS OpsWorks for Chef Automate, os trabalhos de digitalização são suportados nos seguintes alvos.
-
Nós adicionados manualmente
-
Instâncias
aws-ec2
-
Regiões da AWS
Para obter instruções detalhadas sobre como executar tarefas de verificação, consulte Tarefas de verificação do Chef Automate
(Opcional, Chef Automate 2.0) Configuração de conformidade com o livro de receitas de auditoria
Você pode configurar a conformidade em qualquer AWS OpsWorks for Chef Automate servidor. Depois de iniciar um servidor do AWS OpsWorks for Chef Automate
, você poderá instalar perfis pelo painel do Chef Automate ou adicionar perfis desejados a atributos do livro de receitas de auditoria no arquivo de política Policyfile.rb
. Um arquivo Policyfile.rb
pré-preenchido está incluído no Starter Kit.
Depois de editar Policyfile.rb
com perfis como atributos do livro de receitas de auditoria, execute comandos chef push
para fazer o upload do livro de receitas de auditoriaPolicyfile.rb
no servidor do Chef Automate. A instalação do livro de receitas de auditoria também instala a gema do Chef InSpec
As instruções nesta seção mostram como implementar o livro de receitas opsworks-audit
. O livro de receitas de auditoria baixa perfis especificados do servidor Chef Automate, avalia os nós em relação ao perfil DevSec SSH Baseline e relata o resultado das verificações de conformidade em cada execução. chef-client
Para instalar perfis de conformidade
-
Se você ainda não tiver feito isso, acesse o painel baseado na Web do Chef Automate. Use as credenciais que você recebeu quando fez download do Starter Kit ao criar o servidor do AWS OpsWorks for Chef Automate .
-
No painel do Chef Automate, escolha a guia Asset Store (Loja de ativos).
-
Escolha a guia Disponível para ver perfis predefinidos.
-
Pesquise a lista de perfis. Escolha um perfil que corresponda ao sistema operacional e à configuração de pelo menos um de seus nós gerenciados. Para visualizar detalhes sobre o perfil, incluindo uma descrição das violações direcionadas do perfil e o código da regra subjacente, escolha > à direita da entrada do perfil. Você pode escolher vários perfis. Se você estiver configurando o exemplo no Starter Kit, escolha DevSec SSH Baseline.
-
Para instalar os perfis selecionados no seu servidor Chef Automate, escolha Get (Obter).
-
Depois que você instalar os perfis, eles serão mostrados na guia Profiles (Perfis) do painel do Chef Automate.
Para instalar livros de receita com Policyfile.rb
-
Visualize
Policyfile.rb
no Starter Kit para ver quais atributos do livro de receitas de auditoria especificam o perfilssh-baseline
em['profiles']
.# Define audit cookbook attributes default["opsworks-demo"]["audit"]["reporter"] = "chef-server-automate" default["opsworks-demo"]["audit"]["profiles"] = [ { "name": "DevSec SSH Baseline", "compliance": "admin/ssh-baseline" } ]
-
Faça o download e instale os livros de receitas definidos em
Policyfile.rb
.chef install
Todos os livros de receitas têm versionamento no arquivo
metadata.rb
do livro de receitas. Sempre que altera um livro de receitas, você deve aumentar a versão dele que está nometadata.rb
. -
Envie a política
opsworks-demo
, definida emPolicyfile.rb
, para o servidor.chef push opsworks-demo
-
Verifique a instalação da política. Execute o seguinte comando .
chef show-policy
Os resultados devem ser semelhantes ao seguinte:
opsworks-demo-webserver ======================= * opsworks-demo: ec0fe46314
-
Adicione nós ao servidor para gerenciar, se você ainda não tiver feito isso. Para conectar seu primeiro nó ao AWS OpsWorks for Chef Automate servidor, use o
userdata.sh
script incluído neste Starter Kit. Ele usa a AWS OpsWorksAssociateNode
API para conectar um nó ao seu servidor.Você pode automatizar a associação de nós seguindo as etapas em Adicione nós automaticamente em AWS OpsWorks for Chef Automate ou adicionar nós, um de cada vez, seguindo as etapas em Adicione nós individualmente.
-
Depois de atualizar a lista de execução de seus nós, o agente
chef-client
executará as receitas especificadas na próxima execução. Por padrão, isso ocorre a cada 1.800 segundos (30 minutos). Depois da execução, você poderá visualizar e tomar medidas com base nos resultados da guia Compliance (Conformidade) no painel do Chef Automate.
Execução de uma verificação de conformidade
Você deverá ver os resultados de verificação de conformidade no painel do Chef Automate logo depois da primeira execução do agente ocorrida depois de configurar listas de execução de nós.
No painel do Chef Automate, escolha a guia Compliance (Conformidade). No painel de navegação à esquerda, escolha Relatórios. Escolha a guia Profiles (Perfis), selecione Scan Results (Resultados da verificação) e escolha um nó com falhas de verificação para saber mais sobre as regras nas quais o nó falhou.
Normalmente, você vê resultados de varredura incompatíveis, porque os novos nós ainda não satisfazem todas as regras no perfil DevSec SSH Baseline. O DevSec Hardening Framework
(Opcional) resolução de resultados não compatíveis
O kit inicial inclui um livro de receitas de código aberto,ssh-hardening
, que você pode executar para corrigir resultados não compatíveis de execuções no perfil SSH Baseline. DevSec
nota
O ssh-hardening
livro de receitas faz alterações em seus nós para cumprir as regras de linha de base do DevSec SSH. Antes de executar este livro de receitas em qualquer nó de produção, revise os detalhes sobre o perfil DevSec SSH Baseline no console do Chef Automate para entender as violações de regras que o livro de receitas visa. Revise as informações sobre o livro de receitas de código-fonte aberto ssh-hardening
Para executar o livro de receitas ssh-hardening
-
Em um editor de texto, anexe o livro de receitas
ssh-hardening
à lista de execução dePolicyfile.rb
. A lista de execuçãoPolicyfile.rb
deve corresponder ao seguinte.run_list 'chef-client', 'opsworks-webserver', 'audit', 'ssh-hardening'
-
Atualize
Policyfile.rb
e o envie para o servidor do AWS OpsWorks for Chef Automate .chef update Policyfile.rb chef push opsworks-demo
-
Os nós associados à política
opsworks-demo
atualizam a lista de execução automaticamente e aplicarão o livro de receitasssh-hardening
na próxima execução dechef-client
.Como você está usando o livro de receitas
chef-client
, o nó é verificado em intervalos regulares (por padrão, a cada 30 minutos). No próximo check-in, ossh-hardening
livro de receitas é executado e ajuda a melhorar a segurança dos nós para atender às regras do perfil DevSec SSH Baseline. -
Após a execução inicial do livro de receitas
ssh-hardening
, aguarde 30 minutos para que uma verificação de conformidade seja executada novamente. Visualize os resultados no painel do Chef Automate. Os resultados não compatíveis que ocorreram na execução inicial da verificação de linha de base do DevSec SSH devem ser resolvidos.
Conformidade no Chef Automate 1.x
Se o seu AWS OpsWorks for Chef Automate servidor estiver executando o Chef Automate 1. x, configure o Chef Compliance usando os procedimentos desta seção.
(Opcional, Chef Automate 1.x) Configuração do Chef Compliance
Você pode configurar o Chef Compliance em qualquer AWS OpsWorks for Chef Automate servidor. Depois de iniciar um servidor AWS OpsWorks for Chef Automate
, escolha os perfis que você deseja executar a partir dos perfis no painel do Chef Automate. Depois de instalar perfis, execute comandos berks
para carregar o livro de receitas de auditoria
O kit AWS OpsWorks for Chef Automate inicial inclui um livro de receitas embaladoopsworks-audit
, que baixa e instala a versão correta do livro de receitas do Chef's Audit para você. O opsworks-audit
livro de receitas também instrui o chef-client
agente a avaliar os nós em relação ao perfil DevSecSSH Baseline que você instala a partir do console de conformidade do Chef posteriormente neste tópico. Você pode configurar o Compliance usando o livro de receitas para atender suas preferências. As instruções nesta seção mostram como implementar o livro de receitas opsworks-audit
.
Para instalar perfis do Compliance
-
Se você ainda não tiver feito isso, acesse o painel baseado na Web do Chef Automate. Use as credenciais que você recebeu ao baixar o Starter Kit ao criar seu AWS OpsWorks for Chef Automate servidor.
-
No painel do Chef Automate, escolha a guia Compliance (Conformidade).
-
Na barra de navegação à esquerda, escolha Armazenamento de perfis e, em seguida, selecione a guia Disponível para ver os perfis predefinidos.
-
Pesquise a lista de perfis. Escolha um perfil que corresponda ao sistema operacional e à configuração de pelo menos um de seus nós gerenciados. Para visualizar detalhes sobre o perfil, incluindo uma descrição das violações direcionadas do perfil e o código da regra subjacente, escolha > à direita da entrada do perfil. Você pode escolher vários perfis.
-
Para instalar os perfis selecionados no seu servidor Chef Automate, escolha Get (Obter).
-
Quando o download estiver concluído, vá para o próximo procedimento.
Para instalar e configurar o livro de receitas opsworks-audit
-
Esta etapa é opcional, mas economiza tempo na Etapa 6, quando você está adicionando receitas às listas de execução de nós. Edite o arquivo
roles/opsworks-example-role.rb
que está incluído no starter kit que você baixou durante a criação do servidor AWS OpsWorks for Chef Automate . Adicione as linhas a seguir. A última linha é comentada, pois é opcional a adição do livro de receitasssh-hardening
e da receita para resolver nós não compatíveis após as execuções de verificação do Compliance.run_list( "recipe[chef-client]", "recipe[apache2]", "recipe[opsworks-audit]" # "recipe[ssh-hardening]" )
-
Use um editor de texto para especificar os livros de receita desejados no seu Berksfile. Um Berksfile de exemplo é fornecido para você no starter kit. Neste exemplo, instalamos o livro de receitas cliente do Chef Infra (
chef-client
), o livro de receitasapache2
e o livro de receitasopsworks-audit
. Seu Berksfile deve se parecer com o seguinte.source 'https://supermarket.chef.io cookbook 'chef-client' cookbook 'apache2', '~> 5.0.1' cookbook 'opsworks-audit', path: 'cookbooks/opsworks-audit', '~> 1.0.0'
Todos os livros de receitas têm versionamento no arquivo
metadata.rb
do livro de receitas. Sempre que altera um livro de receitas, você deve aumentar a versão dele que está nometadata.rb
. -
Execute o comando a seguir para baixar e instalar os livros de receitas na pasta
cookbooks
do seu computador local ou de trabalho.berks vendor cookbooks
-
Execute o comando a seguir para carregar os livros de receitas do fornecedor no servidor AWS OpsWorks for Chef Automate .
knife upload .
-
Execute o comando a seguir para verificar a instalação do livro de receitas
opsworks-audit
mostrando uma lista de livros de receitas que estão disponíveis atualmente no servidor.knife cookbook list
-
Adicione nós ao servidor para gerenciar, se você ainda não tiver feito isso. Você pode automatizar a associação de nós seguindo as etapas em Adicione nós automaticamente em AWS OpsWorks for Chef Automate ou adicionar nós, um de cada vez, seguindo as etapas em Adicione nós individualmente. Edite a lista de execução de seus nós para adicionar a função que você especificou na Etapa 1,
opsworks-example-role
. Neste exemplo, edite o atributoRUN_LIST
no scriptuserdata
que você usa para automatizar a associação de nós.RUN_LIST="role[opsworks-example-role]"
Se você ignorou a Etapa 1 e não configurou a função, adicione os nomes das receitas individuais à lista de execuções. Salve as alterações e siga as etapas em Etapa 3: Criar instâncias com um script de associação autônoma para aplicar o script de dados do usuário às instâncias do Amazon EC2.
RUN_LIST="recipe[chef-client],recipe[apache2],recipe[opworks-audit]"
-
Depois de atualizar a lista de execução de seus nós, o agente
chef-client
executará as receitas especificadas na próxima execução. Por padrão, isso ocorre a cada 1.800 segundos (30 minutos). Após a execução, os seus resultados do Compliance ficam visíveis no painel do Chef Automate.
Execução de uma verificação de conformidade
Você deve ver os resultados de verificação de conformidade no painel do Chef Automate logo após a primeira execução do agente daemon que ocorre depois de configurar listas de execução de nós.
No painel do Chef Automate, escolha a guia Compliance (Conformidade). No painel de navegação à esquerda, escolha Relatórios. Escolha a guia Profiles (Perfis), selecione Scan Results (Resultados da verificação) e escolha um nó com falhas de verificação para saber mais sobre as regras nas quais o nó falhou.
Normalmente, você vê resultados de varredura incompatíveis, porque os novos nós ainda não satisfazem todas as regras no perfil DevSec SSH Baseline. O DevSec Hardening Framework
(Opcional) resolução de resultados não compatíveis
O kit inicial inclui um livro de receitas de código aberto,ssh-hardening
, que você pode executar para corrigir resultados não compatíveis de execuções no perfil SSH Baseline. DevSec
nota
O ssh-hardening
livro de receitas faz alterações em seus nós para cumprir as regras de linha de base do DevSec SSH. Antes de executar este livro de receitas em qualquer nó de produção, revise os detalhes sobre o perfil DevSec SSH Baseline no console do Chef Automate para entender as violações de regras que o livro de receitas visa. Revise as informações sobre o livro de receitas de código-fonte aberto ssh-hardening
Para executar o livro de receitas ssh-hardening
-
Em um editor de texto, anexe o livro de receitas
ssh-hardening
ao seu Berksfile. Seu Berksfile deve se parecer com o seguinte.source 'https://supermarket.chef.io' cookbook 'chef-client' cookbook 'apache2', '~> 5.0.1' cookbook 'opsworks-audit', path: 'cookbooks/opsworks-audit', '~> 1.0.0' # optional cookbook 'ssh-hardening'
-
Execute os comandos a seguir para baixar o livro de receitas
ssh-hardening
na sua pasta local de livros de receitas e, em seguida, carregue-o no servidor AWS OpsWorks for Chef Automate .berks vendor cookbooks knife upload .
-
Adicione a receita
ssh-hardening
à lista de execução de nós conforme descrito nas Etapas 1 e 6 de Para instalar e configurar o livro de receitas opsworks-audit.Se você atualizar o arquivo
opsworks-example-role.rb
, carregue as alterações no servidor executando o comando a seguir.knife upload .
Se você atualizar a lista de execuções diretamente, carregue as alterações no servidor executando o comando a seguir. O nome do nó geralmente é o ID da instância.
knife node run_list add
<node name>
'recipe[ssh-hardening]' -
Como você está usando o livro de receitas
chef-client
, o nó é verificado em intervalos regulares (por padrão, a cada 30 minutos). No próximo check-in, ossh-hardening
livro de receitas é executado e ajuda a melhorar a segurança dos nós para atender às regras do perfil DevSec SSH Baseline. -
Após a execução inicial do livro de receitas
ssh-hardening
, aguarde 30 minutos para que uma verificação do Compliance seja executada novamente. Visualize os resultados no painel do Chef Automate. Os resultados não compatíveis que ocorreram na execução inicial da verificação de linha de base do DevSec SSH devem ser resolvidos.
Atualizações feitas na conformidade
Em um AWS OpsWorks for Chef Automate servidor, a funcionalidade de conformidade é atualizada automaticamente pela manutenção programada do sistema. À medida que as versões atualizadas do Chef Automate, Chef Infra Server e Chef InSpec se tornam disponíveis para seu AWS OpsWorks for Chef Automate servidor, talvez seja necessário verificar e atualizar as versões suportadas do livro de receitas Audit e do Chef InSpec gem que estão sendo executadas em seu servidor. Os perfis que você já instalou no seu AWS OpsWorks for Chef Automate servidor não são atualizados como parte da manutenção.
Perfis de conformidade e comunidade personalizados
O Chef atualmente inclui mais de 100 perfis de verificação de conformidade. Você pode adicionar perfis personalizados e de comunidade à lista, fazer o download e executar verificações de conformidade com base nesses perfis, da mesma forma que faria para perfis incluídos. Os perfis de conformidade baseados em comunidade estão disponíveis no Chef Supermarket