-: O mais novo tipo de virtualização que
está se tornando popular em nossas redes
é conhecido como virtualização baseada em contêineres,
também conhecida como conteinerização.
No entanto, esse tipo de virtualização é muito mais
voltado para servidores do que para o usuário final.
Com esse tipo de virtualização, o kernel
do sistema operacional é compartilhado
entre várias máquinas virtuais, mas o espaço do usuário para cada
máquina virtual é criado e gerenciado exclusivamente.
A conteinerização é um tipo de virtualização
que é aplicada por um sistema operacional host para fornecer
um ambiente de execução isolado para um aplicativo.
A conteinerização é considerada bastante
segura porque impõe a segmentação e a separação
de recursos no nível do sistema operacional.
Agora, a virtualização de contêineres é
comumente usada com servidores Linux e
alguns exemplos dessa virtualização
baseada em contêineres incluem coisas como o Docker, o Parallels
Virtuozzo e o projeto OpenVZ.
Agora, como é realmente a conteinerização?
Bem, você tem um hardware e, em cima
desse hardware, um sistema operacional host, geralmente
Linux, e um gerenciador de contêineres.
Algo como Kubernetes, Docker ou algo do gênero.
Agora, esse gerenciador de contêineres será usado para
criar diferentes contêineres que contêm diferentes aplicativos.
Nesse caso, tenho três contêineres.
Tenho o primeiro ambiente, que é baseado
no kernel do sistema operacional host, neste exemplo,
um sistema Linux que está sendo usado.
Portanto, temos o contêiner um executando o Linnux
e ele contém alguns aplicativos.
Agora, o contêiner dois pode fazer a mesma coisa e
o contêiner três pode fazer a mesma coisa.
Como todos os três contêineres estão compartilhando os
mesmos arquivos do sistema operacional do host.
Isso consome muito menos recursos do
que fazer a virtualização pura usando máquinas virtuais.
Como falamos sobre a virtualização.
Se, em vez disso, usarmos máquinas virtuais individuais, cada uma
precisará de sua própria cópia de um sistema operacional.
E isso pode representar de 8 a 10 gigabytes para cada um.
Mas com os contêineres, todos nós
podemos compartilhar o mesmo sistema operacional.
Portanto, a conteinerização usa muito menos base de armazenamento e
consome muito menos poder de processamento.
Esse é o benefício real de usar algo como um contêiner
do ponto de vista operacional.
Agora, como esses contêineres são logicamente isolados.
Na verdade, eles não podem interagir uns com os outros.
Se eu quisesse que dois contêineres conversassem,
teria que conectá-los por meio de uma rede virtual e fazer o roteamento
e a comutação corretos para permitir
que eles conversassem.
Por padrão, eles não têm como se comunicar entre
si, o que é ótimo do ponto de vista da segurança,
pois temos essa segmentação.
Agora, aqui está o seu grande aviso quando se trata de
lidar com contêineres.
Se um invasor comprometer o sistema operacional do host abaixo,
por exemplo, o sistema operacional Linux
que acabei de discutir, adivinhe o que acontece?
Bem, esse ataque agora tem acesso a todos os contêineres em
seus dados, porque esse único sistema operacional
é usado por todos os contêineres hospedados.
Essa é uma das maiores vulnerabilidades
quando se usa contêineres.
Posso ter um sistema de contêineres que esteja executando
50 servidores diferentes no momento.
E cada um deles está executando servidores
e serviços diferentes usando a conteinerização.
Mas se alguém conseguir acessar esse único servidor
com o sistema operacional Linux, agora terá acesso a todos
os 50 servidores hospedados e a todos os seus dados.
Outro risco a ser considerado é como os contêineres
e outras máquinas virtuais serão realmente hospedados.
Quando começamos a contar com a virtualização e a computação em nuvem,
torna-se muito importante reconhecer que
nossos dados podem estar hospedados no mesmo servidor físico
que os dados de outra organização.
Ao fazer isso, introduzimos algumas vulnerabilidades
na segurança de nossos sistemas.
Primeiro, se o servidor físico falhar devido a algo que uma
das outras organizações esteja fazendo,
isso poderá afetar
todas as organizações no mesmo servidor.
Da mesma forma, se uma organização não estiver mantendo
a segurança de seus ambientes virtuais,
que estão hospedados nesse servidor físico,
existe a possibilidade de um invasor utilizar isso em detrimento
de todas as outras organizações hospedadas nesse
mesmo servidor.
Assim como há preocupações ao interconectar nossas
redes com as de outras pessoas, também há preocupações
ao hospedar dados de várias organizações no
mesmo servidor físico.
É importante configurar, gerenciar e auditar adequadamente
o acesso dos usuários às máquinas virtuais que estão
hospedadas nesses servidores.
Além disso, queremos garantir que nossas máquinas virtuais
tenham os patches, antivírus, animwire e controle de
acesso mais recentes em vigor.
Para minimizar o risco de sobrecarga
dos recursos dos servidores físicos, é sempre uma boa
ideia configurar nossas máquinas virtuais com
failover, redundância e elasticidade adequados.
Ao monitorar o desempenho da rede
e os recursos dos servidores físicos,
devemos ser capazes de equilibrar a carga
em várias máquinas físicas em vez de depender
de apenas uma.
Outra vulnerabilidade que pode ser explorada
por um invasor é quando usamos o mesmo tipo
de hipervisor em todas as nossas máquinas virtuais.
Assim, por exemplo, se nossa organização depender
exclusivamente do hipervisor ESXi da VMware e uma
nova exploração for criada para esse hipervisor,
um invasor poderá usá-la contra todos os nossos sistemas.
Portanto, se for bem-sucedido em um de nossos servidores, eles provavelmente
tentarão fazê-lo no restante de nossos servidores.
E se todos os nossos servidores usarem a mesma
plataforma, neste caso, o ESXi da VMware, essa vulnerabilidade
poderá ser explorada em toda a organização.
No entanto, o desafio com isso é que, novamente,
se utilizarmos várias plataformas de hipervisor,
nossos custos de suporte e nossos requisitos
de treinamento também aumentarão.
Por esse motivo, a maioria das organizações opta por usar uma
única plataforma, mas, pelo menos, elas estão tomando
uma decisão de risco ponderada ao fazer isso.
Para reduzir esse risco, a organização deve utilizar configurações
adequadas, garantir que o hipervisor permaneça sempre
corrigido e atualizado e que só seja acessível
por meio de uma interface de gerenciamento segura, além de controlar
rigorosamente o controle de acesso.
Esses são alguns dos aspectos que você deve considerar
quando começar a decidir se vai virtualizar seus
sistemas e migrá-los para uma solução no local
ou baseada na nuvem.
Primeiro, você vai virtualizar?
Em caso afirmativo, você usará máquinas virtuais tradicionais
ou usará a conteinerização?
Qual é o risco versus a recompensa aqui?
Há um ato de equilíbrio que você precisa fazer.
É uma decisão comercial
e também uma decisão de segurança cibernética.
Portanto, você terá que medir esses aspectos
e decidir o que é melhor selecionar para sua organização e seus
casos de uso específicos.