O OCI agora fornece um utilitário chamado Cloud Guard que faz uma captura e analise de informações de seu ambiente cloud e baseado nisso te entrega métricas que apontam o nível de segurança(e pode até tomar ações de forma automática), até o presente momento esse é um serviço gratuito e hoje vamos dar uma olhada nessa ferramenta.
O Cloud Guard é dividido em 4 partes:
Target
O target como o próprio nome diz, indica o que vai ser monitorado pelo Cloud Guard, podendo ser desde todo o Tenancy até um recurso especifico.
Detector
É quem faz a analise dos targets, eles podem ser tanto do tipo criados pela própria Oracle ou criados pelo usuário(que obrigatoriamente é um clone do template oferecido pela Oracle).
Problem
Quando o Detector, baseado nas regras identifica algo, ele é marcado como Problem, podendo ser do tipo Activy ou Configuration.
Responder
É a ação que o Cloud Guard vai tomar caso encontre o Problem.
Para esse, fica o alerta: Não vincule o responder antes de entender o que ele realmente faz, esse é o padrão que a oracle disponibiliza(e que serve de base para o que você pode fazer):
Ativação(target)
A ativação do Cloud Guard é bem simples, bastando ir no caminho Security -> Cloud Guard, uma policy deve ser criada com as seguintes permissões, mas o cloud guard também faz isso automaticamente caso você queira:
allow service cloudguard to read vaults in tenancy allow service cloudguard to read keys in tenancy allow service cloudguard to read compartments in tenancy allow service cloudguard to read tenancies in tenancy allow service cloudguard to read audit-events in tenancy allow service cloudguard to read compute-management-family in tenancy allow service cloudguard to read instance-family in tenancy allow service cloudguard to read virtual-network-family in tenancy allow service cloudguard to read volume-family in tenancy allow service cloudguard to read database-family in tenancy allow service cloudguard to read object-family in tenancy allow service cloudguard to read load-balancers in tenancy allow service cloudguard to read users in tenancy allow service cloudguard to read groups in tenancy allow service cloudguard to read policies in tenancy allow service cloudguard to read dynamic-groups in tenancy allow service cloudguard to read authentication-policies in tenancy allow service cloudguard to use network-security-groups in tenancy
Na parte de região a ser monitorada você pode colocar o Cloud Guard para monitorar a região atual ou outra região que você aponte:
Além disso, você ainda pode escolher quais recursos vão ser monitorados e quais regras devem ser usadas para o monitoramento(falarei sobre isso mais pra frente).
Depois de ativado, aguarde alguns minutos para que ele comece a analisar o ambiente e gerar as recomendações:
Perceba que para esse ambiente, recebemos a “nota” Good pois temos alguns problemas de nível Critico (em vermelho no gráfico do canto direito).
Regras(Detector)
Aqui estou usando as duas regras que a própria Oracle nos fornece, a OCI Configuration Detector Recipe (Oracle Managed) faz detecção de configurações “erradas” e a OCI Activity Detector Recipe (Oracle Managed) faz detecção de atividades suspeitas.
OCI Configuration Detector Recipe
Ao clicar na receita, você tem acesso ao que elas fazem, podendo também filtrar por nível de criticidade, abaixo um pedaço das regras de Configuration:
E ao clicar em uma das linhas, você pode entender melhor o que é analisado:
Também é possível ajustar uma regra para que ela pare de alertar por exemplo sobre uma porta que realmente precise ficar aberta, nesse caso eu não quero receber alertas sobre a porta XYZ por exemplo, basta retirar ela da lista de portas monitoradas:
OCI Activity Detector Recipe
Nessa receita, temos uma coisa bem legal que é a analise de atividades suspeitas e ele inclusive consegue nos mostrar de onde estão vindo os acessos ao nosso ambiente:
E ele conseguiria bloquear os acessos de um usuário que esteja vindo de um ip problemático:
Problem
Nessa tela, temos acesso a um resumo dos problemas que foram identificados no ambiente:
Clicando em algum deles, temos detalhes de por exemplo qual porta está aberta e em qual local:
Vale ressaltar que a Oracle faz recomendações baseadas em um template criado por ela, então por isso é importante clonar e ajustar as receitas para o seu ambiente, por exemplo no meu caso recebi um alerta de que a porta 80 está aberta para a internet, nesse caso eu poderia ajustar a receita para ignorar a porta 80(ou excluir esse recurso/compartimento do target) ou até entender melhor como eu poderia provisionar algum serviço da cloud para me ajudar.
Se você clicar no Resource Name, ele te direciona para o Advanced query ( que já falei sobre aqui) :
Responder
No ambiente de teste, ainda não implementei a parte do Responder pois é um detalhe que ainda não domino 100% e a chance de acabar estragando o ambiente é maior do que os benefícios, por enquanto sugiro que utilize apenas a tela de Overview e Problems(espero logo escrever um post sobre a parte do Responder).