Por fim, você é tão apaixonado pelo Docker que deseja mover seus sistemas de produção críticos para os negócios on-line com dados confidenciais do cliente para um Docker Swarm. Alguns podem até já o ter feito. A outra organização não pode pagar por uma política que proíbe os processos de produção em execução no modo raiz.
O que poderia ser uma lista de verificação de componentes a serem considerados em um ambiente de produção do Docker? Não é necessário todos eles, mas todos devem ser importantes para serem avaliados.
Isenção de responsabilidade: Eu sei que existe uma política de SE para evitar "grandes listas sem fim", mas acho que essa lista de verificação não pode ser muito grande ... e sem fim hoje em dia.
Então - o que são esses blocos de edifícios?
- Se ainda não estiver implantado, considere executar um sistema host Linux com configurações de segurança avançadas - kernel reforçado, SELinux etc.
- Considere usar uma pequena imagem base do Docker, como alpine, busybox ou até scratch, por exemplo, comece com uma imagem base vazia
- Use a configuração USER diferente da raiz
- Avalie com cuidado para reduzir ainda mais o conjunto já reduzido de recursos do kernel concedido ao contêiner
- Considere ter apenas um binário executável por contêiner para iniciar seu processo, idealmente vinculado estaticamente
- Aqueles que desejam interromper o sistema para obter acesso ao shell podem se perguntar se descobriram que o contêiner está com todos os shells desativados.
- Monte volumes somente leitura sempre que possível
Pergunta: o que mais?
devsecops
significa?
Consider using a tiny Docker base image, like alpine, busybox or even scratch e.g. start with an empty base image
aumenta a segurança?