Use o Active Directory para autenticação de usuário RHEV/oVirt
Neste guia, mostrarei como integrar oVirt ou RHEV ao Active Directory para autenticação do console Web. No Red Hat Virtualization/oVirt, existem dois tipos de domínios de autenticação de usuário: domínio local e domínio externo. Durante a instalação do Manager, um domínio local padrão chamado domínio interno é criado com um usuário padrão admin.
As contas de usuários locais podem ser criadas em domínios locais após a instalação. Também existe a opção de criar usuários de diretório anexando servidores de diretório externos, como Red Hat Directory Server, Active Directory ou OpenLDAP e usando-os como domínios externos.
A extensão ovirt-engine-extension-aaa-ldap permite a configuração do diretório LDAP externo para autenticação do usuário. Esta extensão oferece suporte a muitos tipos diferentes de servidores LDAP e um script de configuração interativo é fornecido para ajudá-lo na configuração da maioria dos tipos LDAP. Observe que os usuários locais e de diretório precisam receber funções e permissões apropriadas por meio do Portal de Administração antes de poderem funcionar no ambiente.
Pré-requisitos de configuração:
- Acesso root SSH à máquina RHEV/oVirt Manager
- Acesso à Internet/Satélite ou registro Foreman para downloads de pacotes
- Um nome de domínio do DNS ou do servidor LDAP.
- Para uma conexão segura entre o servidor LDAP e o Manager, certifique-se de que um certificado CA codificado em PEM tenha sido preparado.
- Tenha pelo menos um conjunto de nome de conta e senha prontos para realizar consultas de pesquisa e login no servidor LDAP.
Etapa 1: instalar o pacote de extensão LDAP
Precisamos instalar o pacote ovirt-engine-extension-aaa-ldap no Red Hat Virtualization Manager.
sudo yum install ovirt-engine-extension-aaa-ldap-setup
Confirme as dependências e inicie a instalação:
....
Transaction Summary
=====================================================================================================================================================================================================
Install 5 Packages
Total download size: 4.5 M
Installed size: 5.9 M
Is this ok [y/N]: y
Mais detalhes do pacote podem ser obtidos com o comando rpmapós a instalação.
$ rpm -qi ovirt-engine-extension-aaa-ldap-setup
Etapa 2: configurar um provedor LDAP externo
Usaremos uma etapa interativa para configurar um provedor LDAP externo na instância do RHEV Manager. Execute o seguinte comando para iniciar a configuração interativa:
sudo ovirt-engine-extension-aaa-ldap-setup
Para integração com o Active Directory, escolha 3:
[ INFO ] Stage: Initializing
[ INFO ] Stage: Environment setup
Configuration files: /etc/ovirt-engine-extension-aaa-ldap-setup.conf.d/10-packaging.conf
Log file: /tmp/ovirt-engine-extension-aaa-ldap-setup-20200911182615-fnpp55.log
Version: otopi-1.9.2 (otopi-1.9.2-1.el8)
[ INFO ] Stage: Environment packages setup
[ INFO ] Stage: Programs detection
[ INFO ] Stage: Environment customization
Welcome to LDAP extension configuration program
Available LDAP implementations:
1 - 389ds
2 - 389ds RFC-2307 Schema
3 - Active Directory
4 - IBM Security Directory Server
5 - IBM Security Directory Server RFC-2307 Schema
6 - IPA
7 - Novell eDirectory RFC-2307 Schema
8 - OpenLDAP RFC-2307 Schema
9 - OpenLDAP Standard Schema
10 - Oracle Unified Directory RFC-2307 Schema
11 - RFC-2307 Schema (Generic)
12 - RHDS
13 - RHDS RFC-2307 Schema
14 - iPlanet
Please select: 3
Insira o nome da floresta do Active Directory. No exemplo estamos usando example.net. Substitua-o pelo nome da sua floresta.
Please enter Active Directory Forest name: example.net
[ INFO ] Resolving Global Catalog SRV record for example.net
NOTE:
It is highly recommended to use secure protocol to access the LDAP server.
Protocol startTLS is the standard recommended method to do so.
Only in cases in which the startTLS is not supported, fallback to non standard ldaps protocol.
Use plain for test environments only.
Escolha o protocolo LDAP a ser usado:
Please select protocol to use (startTLS, ldaps, plain) [startTLS]: plain
Defina DN e senha de ligação do usuário de pesquisa.
[ INFO ] Resolving SRV record 'example.net'
[ INFO ] Connecting to LDAP using 'ldap://server1.example.net:389'
[ INFO ] Connection succeeded
Enter search user DN (for example uid=username,dc=example,dc=com or leave empty for anonymous): CN=oVirtAdmin,DC=example,DC=net
Enter search user password:
[ INFO ] Attempting to bind using 'CN=oVirtAdmin,DC=example,DC=net'
Concorde com o VM Single Sign-On se desejar esse recurso.
Are you going to use Single Sign-On for Virtual Machines (Yes, No) [Yes]: Yes
Defina o nome do perfil.
NOTE:
Profile name has to match domain name, otherwise Single Sign-On for Virtual Machines will not work.
Please specify profile name that will be visible to users [example.net]: example.net
[ INFO ] Stage: Setup validation
NOTE:
It is highly recommended to test drive the configuration before applying it into engine.
Login sequence is executed automatically, but it is recommended to also execute Search sequence manually after successful Login sequence.
Teste a conexão e autenticação com o usuário do Directory.
Please provide credentials to test login flow:
Enter user name: [email
Enter user password:
[ INFO ] Executing login sequence...
Login output:
Confirme se foi bem sucedido. Para qualquer erro, verifique os logs de extensão.
[ INFO ] Login sequence executed successfully
Please make sure that user details are correct and group membership meets expectations (search for PrincipalRecord and GroupRecord titles).
Abort if output is incorrect.
Select test sequence to execute (Done, Abort, Login, Search) [Done]:
[ INFO ] Stage: Transaction setup
[ INFO ] Stage: Misc configuration (early)
[ INFO ] Stage: Package installation
[ INFO ] Stage: Misc configuration
[ INFO ] Stage: Transaction commit
[ INFO ] Stage: Closing up
CONFIGURATION SUMMARY
Profile name is: example.net
The following files were created:
[ INFO ] Stage: Clean up
Log file is available at /tmp/ovirt-engine-extension-aaa-ldap-setup-20200911185444-e7rwcx.log:
[ INFO ] Stage: Pre-termination
[ INFO ] Stage: Termination
Seu perfil será salvo no diretório /etc/ovirt-engine/aaa/. As propriedades das extensões estão no diretório /etc/ovirt-engine/extensions.d.
$ ls -1 /etc/ovirt-engine/aaa/
internal.properties
example.net.properties
$ ls /etc/ovirt-engine/extensions.d
example.net-authn.properties
example.net-authz.properties
Reinicie o serviço oVirt Engine Manager.
sudo systemctl restart ovirt-engine.service
Verifique o status do serviço, ele deve estar em execução.
$ systemctl status ovirt-engine.service
● ovirt-engine.service - oVirt Engine
Loaded: loaded (/usr/lib/systemd/system/ovirt-engine.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2020-09-11 19:08:38 EAT; 30s ago
Main PID: 999555 (ovirt-engine.py)
Tasks: 345 (limit: 199735)
Memory: 1.3G
CGroup: /system.slice/ovirt-engine.service
├─999555 /usr/libexec/platform-python /usr/share/ovirt-engine/services/ovirt-engine/ovirt-engine.py --redirect-output --systemd=notify start
.....
Etapa 3: atribuir uma função ao usuário
Esta conta de usuário não tem privilégios para gerenciar todas as funções do oVirt. Precisamos atribuir privilégios de superusuário a esse usuário se você quiser que ele funcione como qualquer conta de usuário administrador ; caso contrário, atribua permissões específicas.
Faça login no painel como usuário administrador e navegue até Administração > Configurar > Permissões do sistema > Adicionar
Na próxima janela, selecione perfil de pesquisa e namespace. Em seguida, insira o nome do usuário para conceder permissões e clique no botão IR .
Selecione o usuário para conceder permissões e escolha a função para atribuir o clique no botão “OK”.
Etapa 4: testar o login LDAP
Na tela de login do oVirt, selecione o perfil que você criou para o Active Directory.
Insira o nome de usuário e a senha do AD e clique no botão “Fazer login” . Você deve acessar o painel do administrador, onde poderá realizar diferentes operações dependendo de suas permissões.
Em nosso próximo artigo abordaremos mais tarefas administrativas do oVirt/RHEV. Enquanto isso, verifique outros guias relevantes disponíveis em nosso site.
- Como instalar o mecanismo oVirt autônomo no CentOS 8
- Como matar/abortar uma tarefa no oVirt/RHEV
- Como adicionar dados NFS, ISO e domínio de armazenamento de exportação ao oVirt/RHEV
- Instale o agente convidado oVirt no CentOS 8 | RHEL 8