Práticas recomendadas de segurança – Crie um contêiner Docker robusto

Proteja seu contêiner Docker…


O Docker percorreu um longo caminho, esforçando-se constantemente para criar um produto altamente funcional e seguro, apresentando as melhores práticas e respondendo altamente a qualquer vulnerabilidade ou problema.

Desde a sua criação, o Docker viu um aumento significativo em seu ano de adoção em um ano. Ao configurar diligentemente, sem um elemento de ignorância, o Docker se torna um ativo poderoso pelo qual você, sem dúvida, atestaria, por suas práticas de TI.

O ônus de proteger o ambiente do contêiner não se baseia apenas no fortalecimento dos contêineres ou nos servidores nos quais eles acabam sendo executados, mas deve ser elaborado de forma estratégica para cuidar de cada ação minúscula, desde o recebimento da imagem do contêiner de um registro até quando o contêiner é empurrado para o mundo da produção.

Como os contêineres geralmente são implantados na velocidade do DevOps como parte da estrutura de CI / CD, é imperativo obter mais tarefas automatizadas que aumentem a eficiência, a produtividade, a auditoria / registro e, portanto, o tratamento de problemas de segurança.

A seguir, é apresentada uma visão geral das práticas recomendadas relacionadas à segurança que você deve tomar cuidado ao adotar o Docker.

Imagem autêntica do Docker

Muitas vezes, os desenvolvedores usam as imagens básicas do Docker em vez de reconstruí-las do zero. Mas o download dessas imagens de fontes não confiáveis ​​pode adicionar vulnerabilidades de segurança.

É impermeável, portanto, verificar a autenticidade antes de baixar a imagem, tomando as seguintes precauções:

  • Usando a imagem base de fontes confiáveis, como a Hub do Docker que possui imagens digitalizadas e revisadas pelos Serviços de Digitalização de Segurança do Docker.
  • Usando a imagem de base assinada digitalmente pelo Docker Content Trust, que protege contra falsificação.

Acesso Autorizado

Enquanto trabalha em equipes grandes, é essencial configurar o controle de acesso baseado em função (RBAC) para sua pilha de contêineres do Docker. Uma grande organização corporativa usa soluções de diretório como o Active Directory para gerenciar o acesso e a permissão para aplicativos em toda a organização.

É essencial ter uma boa solução de gerenciamento de acesso para o Docker, que permita que os contêineres operem com privilégios e acesso mínimos necessários para realizar a tarefa, o que, por sua vez, reduz o fator de risco.

Isso ajuda a cuidar da escalabilidade com o crescente número de usuários.

Gerenciamento de informações confidenciais

De acordo com Docker Swarm serviços, segredos são os dados confidenciais que não devem ser comunicados ou armazenados sem criptografia no Dockerfile ou no código-fonte do aplicativo.

Segredos são informações confidenciais, como senhas, chaves SSH, tokens, certificados TLS, etc. Os segredos são criptografados durante o trânsito e em repouso em um enxame do Docker. Um segredo é acessível apenas aos serviços aos quais foi concedido acesso explícito e somente quando esses serviços estão em execução.

É essencial garantir que os segredos sejam acessíveis apenas aos contêineres relevantes e não sejam expostos ou armazenados no nível do host.

Segurança em nível de código e tempo de execução do aplicativo

A segurança do Docker começa no nível do host, portanto, é essencial manter o sistema operacional do host atualizado. Além disso, os processos em execução no contêiner devem ter as atualizações mais recentes incorporando as melhores práticas de codificação relacionadas à segurança.

Você deve garantir principalmente que os contêineres instalados pelos fornecedores de terceiros não baixem nada e executem nada em tempo de execução. Tudo o que um contêiner do Docker executa deve ser declarado e incluído na imagem estática do contêiner.

As permissões de namespace e cgroups devem ser aplicadas de maneira ideal para isolamento de acesso e para controlar o que cada processo pode modificar.

Os contêineres se conectam entre si através do cluster, tornando sua comunicação limitadora da visibilidade de firewalls e ferramentas de rede. Aproveitar a nano-segmentação pode ser útil para limitar o raio de explosão em caso de ataques.

Gerenciamento completo do ciclo de vida

A segurança do contêiner reside em como você lida com o ciclo de vida do contêiner, que envolve desde a criação, atualização e exclusão de contêineres. Os contêineres devem ser tratados como imutáveis, em vez de alterar ou atualizar o contêiner em execução com atualizações, criar uma nova imagem e testá-los minuciosamente quanto a vulnerabilidades e substituir os contêineres existentes..

Limitando recursos

Dockers são processos leves, porque você pode executar mais contêineres do que máquinas virtuais. Isso é benéfico para otimizar o uso dos recursos do host. Embora possa causar uma ameaça de vulnerabilidades, como negação de ataque, que podem ser tratadas limitando os recursos do sistema que os contêineres individuais podem consumir através da estrutura do contêiner, como o Swarm.

Monitorando a atividade do contêiner

Como qualquer outro ambiente, é essencial monitorar constantemente ativamente a atividade do usuário em torno do ecossistema de contêiner para identificar e corrigir atividades maliciosas ou suspeitas.

Os logs de auditoria devem ser incorporados ao aplicativo para registrar eventos como quando a conta foi criada e ativada, para qual finalidade, quando a última senha foi atualizada e ações semelhantes no nível da organização.

A implementação dessas trilhas de auditoria em todos os contêineres criados e implantados para sua organização será uma boa prática para identificar uma invasão maliciosa.

Conclusão

O Docker, por design, é criado com as melhores práticas de segurança em mente, portanto a segurança não é um problema nos contêineres. Mas é crucial que você nunca baixe a guarda e fique vigilante.

Com mais atualizações e melhorias, a colocação desses recursos em prática ajudará a criar aplicativos seguros. A alavancagem dos aspectos de segurança do contêiner, como imagens do contêiner, direitos de acesso e permissão, segmentação do contêiner, segredos e gerenciamento do ciclo de vida nas práticas de TI, pode garantir um processo de DevOps otimizado com o mínimo de problemas de segurança.

Se você é completamente novo no Docker, pode estar interessado neste curso online.

TAG:

  • Docker

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map