Prévia do material em texto
Virtualização de aplicações com o Docker. Alunos: Matheus Oliveira; Gabriel Dias; João Victor Azevedo; Yuri Queiroz; Daniel Rosalino; Jonas Ferreira; Filipe Mansur Máquinas Físicas/Servidores Dedicados Pra você ter um ambiente isolado(controlado), era necessário um computador para cada aplicação. ‹#› Virtualização Criação de uma camada abstrata de hardware, dividindo-a em máquinas virtuais (VM) Cada VM possui a própria um sistema operacional próprio ‹#› Modelos de Virtualização Container: ambiente leve e eficiente Hypervisor: instalação do SO completo ‹#› Máquina Virtual vs Conteinerização ‹#› Benefícios dos Contêineres Leveza Portabilidade Moderno Desempenho ‹#› Componentes do Docker Imagem Container Registry Cliente ‹#› Docker Hub O Docker Hub é um repositório central de imagens (públicas e privadas), por meio do qual os usuários podem usar e compartilhar imagens personalizadas. ‹#› Segurança Fazendo um comparativo de segurança entre as VM’s e contêineres, o contêiner fica em desvantagem. Máquinas virtuais fornecidas por técnicas de virtualização baseadas em hypervisor são consideradas mais seguras do que os contêineres, pois adicionam uma camada extra de isolamento entre os aplicativos e o host. ‹#› Segurança Nos contêineres os processos interagem diretamente com o kernel do host. Nesse cenário, é muito mais fácil um ataque externo ocorrer em um modelo de virtualização de contêiner. Entretanto, cada processo nos contêineres contam com um PID, o que permite que cada contêiner tenha seu próprio processo, esse podendo ser finalizado em caso de possíveis comprometimentos. ‹#› Segurança Boas práticas para segurança de containers: ‹#› Segurança Boas práticas para segurança de containers: Não executar containers com pontos de entrada a partir do “root”. Mantenha as imagens com apenas o mínimo necessário, ou seja, evite o uso de pacotes e/ou exponha portas desnecessariamente. Nunca ponha nenhum segredo ou credenciais dentro do Dockerfile, seja em variáveis, argumentos ou códigos de comando. Utilizar ferramentas como Haskell Dockerfile Linter, que detecta más práticas dentro do Dockerfile. Restrinja as capacidades da aplicação para o mínimo requerido, caso o container seja comprometido, limita as opções de ataque. ‹#› OBRIGADO image3.png image6.png image12.png image14.png image8.png image4.png image11.png image2.png image5.png image7.png image1.png image9.png image10.png image13.png