Práticas recomendadas de segurança
A seguir, as melhores práticas necessárias para monitorar e proteger ambientes de contêiner:
Endurecimento do sistema operacional host
O endurecimento de um sistema operacional inlcude:
-
Garanta que o sistema operacional host e o software docker sejam atualizados com os patches de segurança mais recentes.
-
Baixe imagens de contêiner verificadas a partir de downloads.
-
Execute o Docker como usuário não-raiz sem privilégios de raiz. Isso se chama modo Rootless. Nesse modo, docker e container são executados em um namespace de usuário. Executar contêineres e serviços Docker Engine como usuários não-raiz melhora a segurança em caso de violação.
-
Evite ataques de negação de serviço configurando uma quantidade especificada de memória e CPU necessárias para executar os contêineres.
-
Evite usar sshd dentro de contêineres.
-
Evite usar a ponte
docker0
padrão da spoofing de ARP e ataques de inundação MAC. -
Defina o sistema de arquivos raiz do contêiner para apenas leitura para evitar ataques maliciosos.
-
Defina o limite do identificador de processo (PID). Cada processo no kernel transporta um PID exclusivo, e os contêineres aproveitam o namespace do Linux PID 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 movimentações laterais maliciosas.
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 a reconfiguração do sistema fazem parte do gerenciamento de vulnerabilidades.
Para obter informações sobre os mais recentes softwares e detalhes, consulte downloads e atualize o cRPD.
Portas de segurança
As portas de serviço que são privadas de usar são:
-
Garanta que só sejam aprovadas portas BGP (TCP 179), porta SSH (TCP 22), Netconf over SSH (TCP 830) e portas gRPC para telemetria (TCP 50051), protocolos e serviços com necessidades de negócios validadas estão sendo executados em cada sistema. Por exemplo, os balanceadores de carga HTTP e HTTPS precisam vincular (TCP 80) e (TCP 443), respectivamente.
-
Os números das portas TCP/IP abaixo de 1024 são considerados portas privilegiadas. Evite mapear quaisquer portas abaixo de 1024 dentro de um contêiner enquanto transmitem dados confidenciais. Por padrão, o Docker mapeia portas de contêiner para uma que esteja dentro da faixa 49153-65525, mas permite que o contêiner seja mapeado em uma porta privilegiada.