Padrões de Segurança de Pod (PSS) e Restrições de Contexto de Segurança (SCC)
Os padrões de segurança de pods (PSS) e as políticas de segurança de pods (PSP) do Kubernetes definem os níveis de permissão e restringem o comportamento dos pods. OpenShift Security Context Constraints (SCC) definem, de forma semelhante, restrições de pods específicas para o OpenShift Kubernetes Engine. Para fornecer essa personalização, Trident habilita determinadas permissões durante a instalação. As seções a seguir detalham as permissões definidas pelo Trident.
|
|
O PSS substitui as Políticas de Segurança de Pod (PSP). PSP foi descontinuado no Kubernetes v1.21 e será removido na v1.25. Para mais informações, consulte "Kubernetes: segurança". |
Contexto de segurança obrigatório do Kubernetes e campos relacionados
| Permissão | Descrição |
|---|---|
Privilegiado |
O CSI exige que os pontos de montagem sejam bidirecionais, o que significa que o pod do nó Trident deve executar um contêiner privilegiado. Para obter mais informações, consulte "Kubernetes: propagação de montagens". |
Rede do host |
Necessário para o iSCSI daemon. `iscsiadm`Gerencia as montagens iSCSI e usa a rede do host para se comunicar com o iSCSI daemon. |
IPC do host |
NFS usa comunicação entre processos (IPC) para se comunicar com o NFSD. |
PID do host |
Necessário para iniciar |
Capacidades |
A |
Seccomp |
O perfil Seccomp é sempre "Unconfined" em contêineres privilegiados; portanto, não pode ser ativado no Trident. |
SELinux |
Em OpenShift, os contêineres privilegiados são executados no |
DAC |
Contêineres com privilégios elevados devem ser executados como root. Contêineres sem privilégios elevados são executados como root para acessar os sockets unix necessários pelo CSI. |
Padrões de segurança de pod (PSS)
| Rótulo | Descrição | Padrão |
|---|---|---|
|
Permite que o Trident Controller e os nós sejam admitidos no namespace de instalação. Não altere o rótulo do namespace. |
|
|
|
Alterar os rótulos de namespace pode resultar em pods não sendo agendados, em um "Error creating: …" ou "Warning: trident-csi-…". Se isso acontecer, verifique se o rótulo do namespace para privileged foi alterado. Se sim, reinstale Trident.
|
Políticas de segurança de pods (PSP)
| Campo | Descrição | Padrão |
|---|---|---|
|
Contêineres privilegiados devem permitir a elevação de privilégios. |
|
|
Trident não utiliza volumes efêmeros CSI inline. |
Vazio |
|
Os contêineres Trident não privilegiados não exigem mais recursos do que o conjunto padrão e os contêineres privilegiados recebem todas as capacidades possíveis. |
Vazio |
|
Trident não utiliza um "Driver FlexVolume", portanto eles não estão incluídos na lista de volumes permitidos. |
Vazio |
|
O pod do nó Trident monta o sistema de arquivos raiz do nó, portanto, não há benefício em configurar esta lista. |
Vazio |
|
Trident não usa nenhum |
Vazio |
|
Trident não requer nenhum |
Vazio |
|
Não é necessário adicionar nenhuma funcionalidade aos contêineres privilegiados. |
Vazio |
|
A permissão para escalonamento de privilégios é gerenciada em cada pod do Trident. |
|
|
Não |
Vazio |
|
Os contêineres Trident são executados como root. |
|
|
Montar volumes NFS requer IPC do host para se comunicar com |
|
|
O iscsiadm requer que a rede do host se comunique com o daemon iSCSI. |
|
|
É necessário o PID do host para verificar se |
|
|
Trident não utiliza nenhuma porta do host. |
Vazio |
|
Os pods do nó Trident devem executar um contêiner privilegiado para montar volumes. |
|
|
Os pods do nó Trident devem gravar no sistema de arquivos do nó. |
|
|
Os pods do nó Trident executam um contêiner privilegiado e não podem descartar recursos. |
|
|
Os contêineres Trident são executados como root. |
|
|
Os contêineres Trident são executados como root. |
|
|
Trident não usa |
Vazio |
|
Trident não configura |
Vazio |
|
Os contêineres Trident são executados como root. |
|
|
Os pods Trident requerem esses plugins de volume. |
|
Restrições de Contexto de Segurança (SCC)
| Etiquetas | Descrição | Padrão |
|---|---|---|
|
Os pods do nó Trident montam o sistema de arquivos raiz do nó. |
|
|
A montagem de volumes NFS requer IPC do host para se comunicar com |
|
|
O iscsiadm requer que a rede do host se comunique com o daemon iSCSI. |
|
|
É necessário o PID do host para verificar se |
|
|
Trident não utiliza nenhuma porta do host. |
|
|
Contêineres privilegiados devem permitir a elevação de privilégios. |
|
|
Os pods do nó Trident devem executar um contêiner privilegiado para montar volumes. |
|
|
Trident não requer nenhum |
|
|
Os contêineres Trident não privilegiados não exigem mais recursos do que o conjunto padrão e os contêineres privilegiados recebem todas as capacidades possíveis. |
Vazio |
|
Não é necessário adicionar nenhuma funcionalidade aos contêineres privilegiados. |
Vazio |
|
Os contêineres Trident são executados como root. |
|
|
Este SCC é específico para Trident e está vinculado ao seu usuário. |
Vazio |
|
Os pods do nó Trident devem gravar no sistema de arquivos do nó. |
|
|
Os pods do nó Trident executam um contêiner privilegiado e não podem descartar recursos. |
|
|
Os contêineres Trident são executados como root. |
|
|
Trident não configura |
Vazio |
|
Contêineres privilegiados sempre são executados "Unconfined". |
Vazio |
|
Os contêineres Trident são executados como root. |
|
|
É fornecida uma entrada para vincular este SCC ao usuário Trident no namespace Trident. |
n/a |
|
Os pods Trident requerem esses plugins de volume. |
|