Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Configurar a política do SELinux do MongoDB

O Security Enhanced Linux (SELinux) é um módulo de segurança do kernel Linux que impõe políticas obrigatórias de controle de acesso. Isso permite limitar um processo aos arquivos, diretórios e portas que sua política permite explicitamente. Isso pode bloquear o acesso mesmo quando as permissões de arquivo padrão concedem acesso.

O MongoDB fornece uma política SELinux para uso com mongod. Isso está disponível para MongoDB Enterprise e MongoDB Community em sistemas que usam:

  • Red Hat Enterprise Linux ou distribuições relacionadas

  • MongoDB instalado com o gerenciador de pacote

Se seu sistema do MongoDB usar um valor personalizado para qualquer uma das seguintes configurações, você não poderá usar a política do SELinux do MongoDB :

A política do SELinux do MongoDB abrange apenas mongod. Se você quiser usar o SELinux em um sistema que também use mongos, mongosh ou mongocryptd, será necessário configurar uma política personalizada.

Você deve executar o seguinte comando no diretório no qual a política do SELinux foi clonada anteriormente antes de fazer o downgrade para uma versão anterior do MongoDB :

sudo make uninstall

Você pode personalizar a política do SELinux do MongoDB com o comando semanage. Por exemplo, para adicionar a porta 30000 ao mongod_port_t, execute o seguinte comando:

sudo semanage port -at mongod_port_t -p tcp 30000

Isso configura o SELinux para permitir conexões TCP nas portas padrão do MongoDB e na porta 30000.

Certifique-se de ter os pacotes de pré-requisitos instalados em seu sistema:

sudo dnf install git make checkpolicy policycoreutils \
selinux-policy-devel

O SELinux impõe políticas por padrão, o que significa que ele bloqueia processos que violam suas restrições configuradas. Em ambientes de desenvolvimento, os usuários às vezes desativam o SELinux ou o configuram para registrar, mas permitir todas as operações. Antes de começar, verifique se o SELinux está aplicando suas políticas.

Para verificar em qual modo o SELinux está, execute o seguinte comando:

getenforce
Enforcing

Se o comando retornar Permissive, você poderá redefini-lo para aplicá-lo com o comando setenforce:

sudo setenforce 1

Para tornar a alteração persistente, defina a variável SELINUX no arquivo /etc/selinux/config:

SELINUX=enforcing
1

Para baixar a política do SELinux do MongoDB , use o Git para clonar o repositório:

git clone https://github.com/mongodb/mongodb-selinux
2

Para construir a política, altere para o diretório mongodb-selinux e execute make:

cd mongodb-selinux
make
3

Para aplicar a política, execute o alvo install com sudo:

sudo make install

O SELinux agora usa a política do MongoDB , permitindo que você execute mongod enquanto o SELinux está no modo de imposição.