Docker
TMA-DOCKER-5.15
Ensure that the 'on-failure' container restart policy is set to '5'
BaixaNível 1Automatizadadocker
Descrição
Restart policy 'always' (or on-failure with unlimited retries) can hide failures and turn a crashing container into a resource drain; on-failure with at most 5 retries is recommended. Flags always, unless-stopped and on-failure with 0 or more than 5 retries. The audit inspects every running container (docker ps -q) and prints the offending names; a host with no running containers is compliant.
Como é verificado
Método de auditoria: Comando shell
shell
ids=$(docker ps -q) || exit 1; [ -z "$ids" ] && { echo compliant; exit 0; }; out=$(docker inspect --format '{{.Name}} {{.HostConfig.RestartPolicy.Name}} {{.HostConfig.RestartPolicy.MaximumRetryCount}}' $ids) || exit 1; bad=$(printf '%s\n' "$out" | awk '$2=="always" || $2=="unless-stopped" || ($2=="on-failure" && ($3+0==0 || $3+0>5)){print $1" "$2":"$3}'); [ -z "$bad" ] && echo compliant || printf '%s\n' "$bad"- Saída esperada
compliant
Como é corrigido
Método de correção: Orientação ou patch de infraestrutura
Redeploy with --restart=on-failure:5 (compose: 'restart: on-failure:5') or update in place: docker update --restart=on-failure:5 <container>.
Propriedades
- Sistemas operacionais
- Qualquer
- Tags
- dockerruntime
- Referência
- CIS Docker Benchmark v1.9.0 - 5.15 Ensure that the 'on-failure' container restart policy is set to '5'
Verificar este host
Execute isto em uma máquina que você tenha permissão para auditar. A varredura é somente leitura.
shell
tmaegis scan --target docker