Reduza os recursos de um daemon Docker

Reduza os recursos de um daemon Docker

Gostaria de reduzir os recursos dos meus daemons Docker usados ​​para executar contêineres de produção, a fim de reduzir sua superfície de ataque.

Eu quero:

  • limitar pulls de um único registro
  • proibirpush
  • proibirbuild
  • provavelmente proibirá muitos outros recursos

Provavelmente se trata de bloquear algumas rotas da API REST do daemon.

eu li issoDocumentação do Docker sobre como reduzir a superfície de ataque do daemonmas não diz nada sobre a desativação dos recursos do daemon.

É possível? Como eu posso fazer isso?

Responder1

Primeiro, o acesso à API docker normalmente é equivalente ao acesso root no host. Não conceda aos usuários acesso a esta API que, de outra forma, você não confiaria como root. Há trabalho sobre suporte sem raiz que está entrando no GA com o mecanismo docker, então você pode querer investigar isso em vez de tentar bloquear a API.

A maioria das tentativas de limitar o mecanismo envolve agrupar a API do docker com uma API de nível superior, por exemplo, Kubernetes, Docker EE e outras abstrações de nível superior fornecem RBAC granular sem fornecer acesso direto à API do docker.

Dito isto, você pode limitar a API do docker conforme solicitado usando umplugin de autorização. Originalmente, a única implementação de código aberto que eu conhecia era fornecida portrava de torção. Mais recentemente,A OPA forneceu sua própria implementação. Apenas perceba que qualquer usuário com esse acesso à API pode potencialmente desabilitar ou contornar esse plug-in com o acesso de nível raiz que de outra forma teria com o docker.

informação relacionada