Melhores práticas de segurança
As melhores práticas necessárias para monitorar e proteger ambientes de contêiner são:
Endurecimento do host OS
O endurecimento de um sistema operacional inclui:
-
Certifique-se de que o sistema operacional host e o software docker sejam atualizados com os patches de segurança mais recentes.
-
Baixe imagens dos downloads.
-
Execute o docker como usuário não-raiz sem privilégios raiz. Isso é chamado de modo Sem Raízes. Nesse modo, o docker e o contêiner são executados em um namespace do usuário. Executar contêineres e os serviços Docker Engine como usuários não-raiz melhora a segurança em caso de violação.
-
Evite ataques do DoS configurando uma quantidade especificada de memória e CPU necessárias para executar os contêineres.
-
Evite usar sshd em contêineres.
-
Evite usar a ponte
docker0padrão da spoofing de ARP e ataques de inundação MAC. -
Configure o sistema de arquivos raiz do contêiner para somente leitura para evitar ataques maliciosos.
-
Definir o limite do identificador de processo (PID). Cada processo no kernel transporta um PID exclusivo, e os contêineres aproveitam o namespace do PiD do Linux para fornecer uma visão separada da hierarquia de PID para cada contêiner. Limitar o número de processos no contêiner evita a desova excessiva de novos processos e possíveis movimentos laterais maliciosos.
Gerenciamento de patchs
O gerenciamento de patchs envolve identificar recursos do sistema que podem ser melhorados ou fixos, liberar o pacote de atualização e validar a instalação das atualizações. O patch com atualizações de software e reconfiguração do sistema faz parte do gerenciamento de vulnerabilidades.
Para obter informações sobre o software e detalhes mais recentes, veja downloads e atualize o cRPD.
Portas de segurança
As portas de serviço privilegiadas estão disponíveis para uso:
-
Garanta que cada sistema execute apenas portas e protocolos aprovados. Eles incluem BGP (TCP 179), SSH (TCP 22), Netconf over SSH (TCP 830) e gRPC para telemetria (TCP 50051). Valide as necessidades de negócios para todos os serviços. Por exemplo, os balanceadores de carga HTTP e HTTPS devem vincular (TCP 80) e (TCP 443), respectivamente.
-
Os números de portas TCP/IP abaixo de 1024 são considerados portas privilegiadas. Evite mapear quaisquer portas abaixo de 1024 em um contêiner enquanto transmitem dados confidenciais. Por padrão, o Docker mapeia as portas de contêiner para uma que está dentro da gama 49153-65525, mas permite que o contêiner seja mapeado em uma porta privilegiada.