Integração de servidores Linux com Active Directory

Este documento tem o objetivo de explicar como instalar e configurar passo a passo cada aplicação nele necessária para autenticação dos servidores Linux com o Active Directory, permitindo assim centralizar os usuários para acesso dos mesmos.

[ Hits: 11.307 ]

Por: Wagner Cintra em 24/06/2017


Integração de servidores Linux com Active Directory



Este documento é dirigido ao pessoal da área de TI, especialmente aos administradores de redes, sistemas e/ou segurança, que são os responsáveis pelo planejamento, implementação ou operação de redes e sistemas. Também podem se beneficiar da sua leitura gerentes com conhecimento técnico de redes ou até mesmo pessoas leigas.

INSTALAÇÃO DE PACOTES NECESSÁRIOS

Pacote de suporte que faz a integração do Linux com o Active Directory:

# yum install adcli.x86_64 -y

Pacote de suporte ao compartilhamento interplataforma com Windows, OS X e outro sistemas Unix:

# yum install samba-common -y

Pacote de bibliotecas do PAM:

# yum install oddjob-mkhomedir -y

Pacote de bibliotecas do PAM:

# yum install oddjob -y

Pacote de suporte ao compartilhamento interplataforma com Windows, OS X e outro sistemas Unix:

# yum install samba-winbind-clients -y

Pacote de suporte ao compartilhamento interplataforma com Windows, OS X e outro sistemas Unix:

# yum install samba-winbind -y

Pacote de suporte que faz a integração do Linux com o Active Directory:

# yum install sssd -y

CONFIGURAR DNS

Configurar o arquivo resolv.conf para resolver o DNS, digite:

# vi /etc/resolv.conf

Dentro do arquivo insira as seguintes informações:

search meudominio
nameserver 192.168.0.1

MUDAR PROVEDOR DE AUTENTICAÇÃO

Vamos definir em qual Domain Controller ele irá se autenticar, no caso será o "MEUDOMINIO", na linha de comando digite:

# authconfig
--enablekrb5
--krb5kdc=meudominio
--krb5adminserver=meudominio
--krb5realm=MEUDOMINIO
--enablesssd
--enablesssdauth
--update


Após executar o comando acima, validar se o servidor está reconhecendo o AD, digite:

# adcli info meudominio

INTEGRAR MÁQUINA NO ACTIVE DIRECTORY

Após configurado o servidor de autenticação que o ADCLI irá buscar, deve-se ingressar a máquina no domínio com um usuário administrador da rede.

Digite o comando abaixo:

# adcli join meudominio -U administrador_de_dominio

Digite a senha do usuário e a máquina entrará no domínio.

Um objeto será adicionado no Active Directory.

CRIAR ARQUIVO DE CONFIGURAÇÃO SSSD

Após a máquina estar configurada e dentro do domínio, criar arquivo sssd (Sistema de Segurança Seviços Daemon).

Ele fornece uma interface NSS e PAM em direção ao sistema e um sistema de back-end pluggable para se conectar a fontes múltiplas contas diferentes. É também a base para a prestação de serviços de auditoria cliente e políticas para projetos como FreeIPA.

Na linha de comando digite:

# vi /etc/sssd/sssd.conf

Adicionar o conteúdo abaixo no arquivo:

[sssd]
domains = meudominio
config_file_version = 2
services = nss, pam

[domain/meudominio]
ad_domain = meudominio
krb5_realm = MEUDOMINIO
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = False
fallback_homedir = /home/%d/%u
access_provider = ad

Salve e feche o arquivo.

Dê permissão 600 para o arquivo que acabou de ser criado:

# chmod 600 /etc/sssd/sssd.conf

ALTERANDO ARQUIVO DE AUTENTICAÇÃO PAM

Editar o arquivo /etc/pam.d/system-auth, este arquivo controla os serviços que fazem a autenticação:

# vi /etc/pam.d/system-auth

Acrescentar a linha abaixo no final do arquivo e salvá-lo.

session     optional      pam_mkhomedir.so skel=/etc/skel umask=077

INICIAR E HABILITAR AUTOMATICAMENTE SERVIÇO SSSD

Inicie o serviço SSSD:

# /etc/rc.d/init.d/sssd start

Ou

# service sssd start

Agora habilite o serviço SSSD na máquina, digite:

# chkconfig sssd on

INICIAR E HABILITAR AUTOMATICAMENTE SERVIÇO WINBIND

Iniciar o serviço do Winbind, digite:

# /etc/rc.d/init.d/winbind start

Ou

# service winbind start

Agora habilite o serviço Winbind na máquina, digite:

# chkconfig winbind on

VALIDAR ACESSO COM USUÁRIO DO AD

Para validar se o Linux está trazendo as informações do AD como os grupos em que o usuário faz parte, digite o comando abaixo:

# id nome_do_usuario

Veja se é possível logar com o usuário de rede no servidor Linux, ele irá criar automaticamente um diretório com o nome do domínio e seu nome de usuário, digite:

# su - nome_do_usuário

ALTERAR PERMISSÕES PARA ELEVAÇÃO DE PRIVILÉGIOS

Após fazer as configurações para que a máquina ingresse no domínio Windows, deve-se habilitar somente um grupo específico para acessar essas máquinas, foi criado no Active Directory um grupo chamado "LinuxAdmins" e adicionado os usuários que irão ter permissão para acessar via SSH.

Acessar o arquivo de configuração do SSH:

# vi /etc/ssh/sshd_config

Acrescentar a seguinte linha para permitir que somente os usuários do grupo LinuxAdmins acessem o servidor via SSH, dentro do arquivo digite:

AllowGroups linuxadmins

Para permitir que os usuários do grupo "LinuxAdmins" possam usar o sudo, edite o arquivo sudoers:

# vi /etc/sudoers

Ou digite:

# visudo

Acrescentar a linha abaixo:

%linuxadmins      ALL=(ALL)   ALL

Agora a autenticação está centralizada.

TROUBLESHOOOTING

Um dos primeiros problemas que pode ocorrer é na hora de mudar o provedor de autenticação, ele gera um erro no módulo "pam_krb5.so" uma das bibliotecas de autenticação de validação de senhas do Linux em outros sistemas.

O pacote pode estar corrompido e assim não será possível fazer o ingresso ao domínio.

Para corrigir esse problema precisamos instalar o pacote pam_krb5.x86_64 9 (para Linux 64 bits), com isso ele corrigirá outros problemas de autenticação que possa ter eventualmente caso o problema anterior não aconteça.

Para instalar o pacote digite:

# yum install pam_krb5.x86_64 -y

Após a instalação executar novamente o "authconfig" no passo "MUDAR PROVEDOR DE AUTENTICAÇÃO".

Um outro problema que pode acontecer após ingressar a máquina no domínio é um erro de autenticação ao tentar logar remotamente no servidor com o usuário da rede, impedindo que o mesmo se autentique.

Isso ocorre porque o pacote pam_krb5.so está corrompido ou com algum problema, para corrigir instalar o pacote pam_krb5.x86_64.

# yum install pam_krb5.x86_64 -y

   

Páginas do artigo
   1. Integração de servidores Linux com Active Directory
Outros artigos deste autor

Integrando Servidores Linux no Active Directory com Samba

Servidor de Repositório Yum - CentOS / Oracle Linux

Expandir Disco no Linux - VMware

Configuração de Servidor SFTP

Adicionando Novo Disco - RHEL e CentOS

Leitura recomendada

Melhorando a segurança de servidores GNU/Linux (Parte 1)

Bootando CDROM com o grub / lilo

CouchDB - For Fun and Profit

Autenticação via hardware: o módulo pam_usb

Configurando um servidor Freeradius + openLDAP

  
Comentários
[1] Comentário enviado por madrugada em 27/06/2017 - 14:03h

Belo artigo amigo.
Só uma observação: o termo "servidores Linux" abrange muitas distros que não utilizam o yum, que é o gerenciador de pacotes utilizado no artigo. No caso, é só alterar para "servidores Linux baseados em RHEL".

[2] Comentário enviado por wagner31 em 27/06/2017 - 15:42h

madrugada, faz sentido, os próximos irei colocar como sugerido por você.
Pois tenho trabalho com CentOS, RHEL aqui na empresa.

[3] Comentário enviado por rodrigo_leonel em 28/06/2017 - 14:11h

[1] Comentário enviado por madrugada em 27/06/2017 - 14:03h
Belo artigo amigo.
Só uma observação: o termo "servidores Linux" abrange muitas distros que não utilizam o yum, que é o gerenciador de pacotes utilizado no artigo. No caso, é só alterar para "servidores Linux baseados em RHEL".

Exatamente como o madrugada disse, ainda mais quando alguém realizar uma pesquisa na internet e quiser especificamente RH, seria melhor ainda para poder promover o post. Manda uma mensagem para o administrador do VOL e pede para eles editarei o post.

[4] Comentário enviado por lucas.suptitz em 05/10/2017 - 10:12h

Bom dia,

Preciso vincular algumas estações de trabalho na empresa em que atuo. As máquinas são todas Fedora 16 XFCE, funcionará?

Estou tentando realizar os procedimentos, porém, na parte de Integrar a Máquina com o AD, dá o seguinte erro:

adcli: couldn't connect to xxxxxx.local domain: Couldn't authenticate to active directory: SASL(-1): generic failure: GSSAPI Error: Unspecified GSS failure. Minor code may provide more information (Server not found in Kerberos database)

Tens alguma ideia do que pode estar acontecendo? E se é possível integrar o Fedora?

Atenciosamente,

Lucas Suptitz

[5] Comentário enviado por wagner31 em 05/10/2017 - 11:08h

bom dia Lucas,

fiz esse procedimento somente para CentOS, fedora eu nunca utilizei, posso dar uma pesquisada e ver se consigo achar algo para você.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts