Autenticar o Linux no Active Directory me tomou dias e dias de pesquisa e testes, mas no final acabou se mostrando uma tarefa mais simples do que eu poderia esperar (pelo menos no Fedora e no CentOS). Neste artigo mostro passo a passo como realizar essa configuração.
Neste artigo considero que o Active Directory esteja instalado no Windows Server 2003 R2 com base de dados de usuários e grupos configurada corretamente de forma que possa ser usada por clientes Windows. As distribuições Linux testadas foram Fedora Core 6 e CentOS 5.
O primeiro passo é instalar o Servidor NIS, componente do Windows Services for Unix (versão 3.5) no servidor Active Directory. Lembre-se: é só o Servidor NIS, não instale nenhum outro componente, pois não é necessário.
Após a instalação, você precisará reiniciar o servidor. Depois disso, abra o console de gerenciamento de usuários e computadores do Active Directory e, na seção Users (usuários), clique com o botão direito em algum usuário e clique em "Propriedades". Você notará a existência de uma aba que não existia antes da instalação o Services for Unix, intitulada UNIX Attributes. Nela, você deverá definir os atributos necessários para que o Linux possa autenticar seus usuários no Active Directory, a saber:
NIS Domain: o mesmo nome de domínio do servidor, só que em letras minúsculas;
UID: o número identificador de usuário, escolha um número maior que 500;
Login Shell: o Shell de login. Para permitir que o usuário faça login em máquinas Linux, use /bin/bash e, para negar o acesso, use /sbin/nologin;
Home Directory: o diretório pessoal do usuário. O padrão é /home/login, mas você pode usar qualquer diretório pessoal que quiser (eu uso /home/grupo/login);
Primary group name/GID: o grupo primário do usuário. Só será possível utilizar grupos que tenham seus atributos Unix definidos, o que é feito de forma análoga.
Agora que temos um usuário e um grupo com seus atributos Unix definidos, passemos à configuração do Linux.
[8] Comentário enviado por dfsantos em 18/10/2007 - 09:03h
Otimo artigo Davidson, parabens !
Mais estou com um problema logo na instalação no Service For unix 3.5 nao consigo instala o Servido Nis esta dando um erro, Preciso de ajuda pois acho que e por causa do meu PDC que Ruindows2003 "SP1", mais no site do Micro$oft fala que SFU 3.5 suporta Ruindow$ 2003 mais nao especifica se e somente o "R2"
"Supported Operating Systems: Windows 2000; Windows 2000 Service Pack 3; Windows 2000 Service Pack 4; Windows Server 2003; Windows XP"
Por Favor me ajudem preciso muito desse serviço! desde ja agradeço a todos !
[9] Comentário enviado por dalben em 19/10/2007 - 13:01h
Davidson, parabéns pela iniciativa em falar sobre este assunto, pois é bastante complexo e poucas pessoas fizeram esse tipo de integração.
Eu fiz o teu tutorial passo a passo, porém só consegui realizar o teste com o comando id (ou com o comando getent passwd, que faz uma listagem de usuarios), removendo as seguintes linhas do ldap.conf:
Sem essas linhas o comando id funciona. Não sei ao certo porque com essas linhas a integração não funciona.
Fiz duas instalações do zero, tanto do Windows Server 2003 R2 e do Fedora 7. No Windows Server, instalei através do painel de controle e selecionei Identity Managemente for Unix e Subsystem for Unix Based Applications.
[10] Comentário enviado por davidsonpaulo em 19/10/2007 - 13:14h
João,
O Windows Server 2003 R2 possui suporte integrado a autenticação Unix, que precisa ser habilitado, como você fez, quando então as duas linhas do ldap.conf que você citou não precisam ser instaladas e nem o Windows Services for Unix. Eu preferi no artigo descrever o método usando a instalação do Windows Services for Unix por servir para um número maior de versões do Windows, mas no caso do 2003 R2 o método que você usou é o mais indicado.
[11] Comentário enviado por dalben em 19/10/2007 - 13:25h
Então é isso, a diferença é do S.O. usado por mim. Por enquanto esse ldap.conf é um arquivo meio, obscuro... preciso me familiarizar mais com ele. Com certeza acho que essa é a etapa mais "complicada" da integração.
Mais uma vez parabéns pelo artigo, me ajudou bastante.
[12] Comentário enviado por deuz em 24/10/2007 - 12:18h
ola, achei interessante o artigo, estou tentando implementar isso, mas uso o suse 10.3 e o server 2000, tem algum material a respeito? quero controlar os acessos do compartilhamento suse pelo samba através do 2000 server, isso pra nao ter que mexer nas restrições de acesso aos arquivos do linux, por ex. o chmod. Se tiver algo a respeito, e puder me informar, agradeço.
[14] Comentário enviado por fabianorebelo em 09/09/2009 - 10:37h
Davidson, estou utilizando o Windows Server 2008 como controlador de dominio. Tive que fazer algumas alterações no ldap.conf e o comando id funciona, o usuario consegue logar, porem não consegue criar o diretorio. No WS 2008 utilizei um recurso do proprio windows em funções -- serviços de diretorio e mudei alguns parametros no ldap.conf, mas o usuario não consegue criar os diretorios no /home. Você sabe o que pode ser?
[16] Comentário enviado por mhiratasup em 17/12/2014 - 10:25h
Sei que o post é antigo e os comentários também. Mas como ainda tem muita gente que procura por uma ajuda para ingressar o Fedora no domino windows, acho valido meu comentário.
Utilizo Debian como distro, porém resolvi me aventurar no Fedora 21 no computador da empresa. Vi esse tutorial, e apenas para testar, realmente funciona. Mas tem um serio problema. Falha de segurança. Não se deve colocar usuários e senhas em arquivos de configuração. Nos campos binddn UsuarioBind@DOMINIO.COM
bindpw senhadousuariobind, tenho que colocar usuário e senha do domínio que tenha permissão para ler a base do AD. Então, com a minha maquina no domínio, outra pessoa pode logar na maquina(desde que a conta esteja no AD) e então, simplesmente dando um cat no ldap.conf, esta la o usuário e a senha pra quem quiser ver.