Docker Capabilities [Dica]
Publicado por Mundo Docker em 28/08/2015
[ Hits: 2.616 ]
Hoje vamos ver algumas features de segurança que pertencem não apenas ao Docker, mas sim ao LXC (uma das tecnologias utilizadas pelo Docker), são as capabilities.
Basicamente os processos privilegiados ignoram todas as verificações de permissões de kernel, enquanto os processos não-privilegiados estão sujeitos a algumas checagens para sua correta execução, normalmente: UID efetivo (usuário dono do arquivo/binário, etc), GID efetivos (grupo dono do arquivo/binário, etc) ou lista de grupo suplementar (mais conhecidas como ACL's - Access Control List).
CAP_SETPCAP :: Modifica capacidades de um processo
CAP_SYS_MODULE :: Insere ou remove módulos do kernel
CAP_SYS_RAWIO :: Modifica memória do Kernel
CAP_SYS_PACCT :: Configura quota de processo
CAP_SYS_NICE :: Modifica prioridade do processo
CAP_SYS_RESOURCE :: Sobrescreve os limites de recursos
CAP_SYS_TIME :: Modifica a hora de sistema
CAP_SYS_TTY_CONFIG :: Configura interface tty
CAP_AUDIT_WRITE :: Escreve logs de auditoria
CAP_AUDIT_CONTROL :: Configura auditoria dos subsistema
CAP_MAC_OVERRIDE :: Ignora politicas de MC do Kernel
CAP_MAC_ADMIN :: Configuração de MAC
CAP_SYSLOG :: Modifica o comportamento de logs
CAP_NET_ADMIN :: Configura funções de rede
CAP_SYS_ADMIN :: Possibilita execução totalmente privilegiada.
Agora, para habilitar alguma capacidade (ou CAP) no Docker, pode ser utilizado o parâmetro: --cap-add=NOMEDACAP, algo parecido com isso:
# docker run --cap-add=NOMEDACAP -i -t --rm centos /bin/bash
Para remover alguma CAP basta adicionar o parâmetro --drop-cap, ficaria assim:
# docker run --cap-add=ALL --cap-drop=NET_ADMIN -i -t --rm centos /bin/bash
Seguindo os parâmetros acima, todas as CAPs serão habilitadas para este container, menos a CAP NET_ADMIN, com isso todas as demais operações serão permitidas ao container, menos as operações de rede, como modificação de ip, configurações de rotas etc.
Quer saber mais sobre Docker, veja nosso blog:
http://man7.org/linux/man-pages/man5/lxc.container.conf.5.html
[1] Comentário enviado por erisrjr em 28/08/2015 - 15:27h
Legal encontrar mais conteúdo sobre o Docker, escrito por autores nacionais.
*Bacana o site também.
Legal encontrar mais conteúdo sobre o Docker, escrito por autores nacionais. *Bacana o site também. --------------------------------- Keep it Simple, Stupid