Solução de problemas
Resolução de Problemas SUSE® Security Implantações
Os contêineres SUSE® Security são implantados, gerenciados e atualizados usando a mesma ferramenta de orquestração utilizada para cargas de trabalho de aplicativos. Por favor, certifique-se de revisar a documentação online para cada etapa necessária durante a implantação. Frequentemente, as implantações são tentadas apenas copiando os arquivos yaml de exemplo e implantando-os sem revisar as etapas anteriores, como configurar corretamente os registros, segredos ou RBACs/vinculações de função.
Implantação Inicial
-
Verifique se os contêineres SUSE® Security podem ser puxados com a autenticação correta. Verifique o segredo utilizado e certifique-se de que o cluster consegue acessar o registro apropriado.
-
Certifique-se de que as alterações no yaml necessárias (por exemplo, NodePort ou LoadBalancer) ou as configurações de valores do Helm estão definidas corretamente.
-
Verifique a plataforma e o tempo de execução do contêiner e faça alterações conforme necessário (por exemplo, PKS, containerd, CRI-O).
Login e Configuração Inicial
-
Verifique se o acesso apropriado ao gerenciador (endereço IP, porta, rota) é permitido através dos gateways de segurança.
Operação Contínua
-
Integração de diretórios. SUSE® Security suporta configurações específicas para LDAP/AD e outras integrações para grupos e funções. Entre em contato com SUSE® Security para etapas adicionais de resolução de problemas e uma ferramenta para resolução de problemas do AD.
-
Verificação de registro. A maioria dos problemas está relacionada a erros de autenticação do registro ou à incapacidade do controlador de acessar o registro a partir do cluster.
-
Para problemas de desempenho, certifique-se de que o scanner tenha memória suficiente alocada para escanear grandes imagens. Além disso, os mínimos de CPU e memória podem ser especificados na política do pod para garantir um desempenho adequado em escala.
-
Controle de Admissão. Consulte a seção de Resolução de Problemas na seção Riscos de Segurança… → Controles de Admissão.
Atualização
-
Use atualizações contínuas para o controlador. Se você estiver reiniciando hosts, certifique-se de monitorar os controladores enquanto eles se movem para outros hosts ou reimplantar nos hosts reiniciados, para garantir que eles consigam iniciar, ingressar no cluster de controladores e estabilizar/sincronizar. Reiniciar todos os hosts de uma vez ou muito rapidamente pode resultar em estados desconhecidos para os controladores.
-
Use uma reivindicação de volume persistente para armazenar a SUSE® Security configuração para o caso de todos os controladores/nós falharem no cluster.
-
Ao atualizar para uma nova versão, revise a documentação online para identificar alterações e adições necessárias no yaml, bem como outras mudanças, como vinculações de função ou novos serviços (por exemplo, webhook de controle de admissão, reivindicação de volume persistente etc).
Logs de Depuração
Para visualizar os logs de um SUSE® Security contêiner, por exemplo, um pod controlador
kubectl logs neuvector-controller-pod-777fdc5668-4jkjn -n neuvector
Esses logs podem mostrar problemas de conectividade do cluster, ações de administrador, atividade de varredura e outras entradas úteis. Se houver vários controladores em execução, pode ser necessário inspecionar cada um deles. Esses logs podem ser direcionados para um arquivo para enviar ao SUSE® Security suporte.
Ativando o modo de Depuração para SUSE® Security Controladores
Para problemas que requerem investigação aprofundada, o modo de depuração pode ser ativado para os controladores/todos em um, registrando informações detalhadas. Isso pode aumentar o tamanho do arquivo de registro em uma grande quantidade, portanto, é recomendável desativá-lo após coletá-los.
Kubernetes, OpenShift e Outros Logs de Orquestração
Pode ser útil inspecionar os logs das ferramentas de orquestração para ver toda a atividade de implantação, incluindo timestamps de criação de pods e status, implantações, daemonsets e outras ações de gerenciamento dos SUSE® Security contêineres realizadas pela ferramenta de orquestração.
kubectl get events -n neuvector
Log de Suporte
O log de suporte contém informações adicionais que são úteis para o SUSE® Security Suporte, incluindo configuração do sistema, contêineres, políticas, notificações e detalhes do SUSE® Security contêiner.
Para baixar o log de suporte, vá para Configurações → Configuração e selecione Coletar Log.
Usando a CLI para ativar o modo de depuração
Faça login no SUSE® Security pod do gerenciador com usuário e senha (recomendado em uma janela de terminal separada).
kubectl exec -it neuvector-manager-pod-5bb76b6754-rlmnp -n neuvector -- cli
#neuvector-svc-controller.neuvector> login
Obtenha a lista de controladores. Encontre o controlador com o Líder = Verdadeiro.
show controller
Ative o modo de depuração no controlador líder usando o ID ou nome do controlador
set controller 4fce427cf963 debug -c all
Para ativar o modo de depuração em todos os controladores
set system controller_debug -c all
Realize a atividade em SUSE® Security que você deseja depurar. Em seguida, visualize os logs do controlador (em uma janela de terminal separada).
kubectl logs <leader_controller_pod_name> -n neuvector
Se necessário, capture os logs e envie-os para SUSE® Security.
Desative o modo de depuração no controlador (de volta na janela do CLI).
set controller 4fce427cf963 debug
exit
Verifique o status de depuração do controlador.
show controller setting 289d67396fcb
Usando a API REST para ativar o Modo de Depuração
Defina o token de acesso com seu IP, usuário, senha:
_controllerIP_="<your_controller_ip>"
_controllerRESTAPIPort_="10443"
_neuvectorUsername_="admin"
_neuvectorPassword_="admin"
|
Para implantações baseadas em Kubernetes, você pode obter o IP do Controlador na seguinte saída de comando: |
kubectl get pod -n neuvector -o wide | grep controller
|
Se acessando a API REST de fora do cluster, veja as instruções na seção de Automação. |
Obtenha o token de autenticação
curl -k -H "Content-Type: application/json" -d '{"password": {"username": "'$_neuvectorUsername_'", "password": "'$_neuvectorPassword_'"}}' "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/auth" > /dev/null 2>&1 > token.json
_TOKEN_=`cat token.json | jq -r '.token.token'`
|
Você pode precisar instalar o jq ($sudo yum install jq) |
Ativar Modo de Depuração
curl -X PATCH -k -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" -d '{"config": {"controller_debug": ["cpath", "conn"]}}' "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/system/config" > /dev/null 2>&1 > set_debug.json
#debug options - cpath, conn, mutex, scan, cluster , all
Desativar Depuração em todos os controladores em um cluster
curl -X PATCH -k -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" -d '{"config": {"controller_debug": []}}' "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/system/config" > /dev/null 2>&1 > set_debug.json
Verifique o status de depuração do controlador em um cluster
curl -k -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/system/config" > /dev/null 2>&1 > system_setting.json
cat system_setting.json | jq .config.controller_debug
Logout
echo `date +%Y%m%d_%H%M%S` log out
curl -k -X 'DELETE' -H "Content-Type: application/json" -H "X-Auth-Token: $_TOKEN_" "https://$_controllerIP_:$_controllerRESTAPIPort_/v1/auth" > /dev/null 2>&1