Linux autenticando no AD e rodando LTSP com DHCP (Windows 2003)

Nesse artigo quero expôr detalhadamente um caso de sucesso em um cliente onde eu e outro amigo tivemos que colocar o Linux (Ubuntu Server 8.04 LTS) para autenticar no AD do Windows 2003 Server e rodar nele o LTSP 5, pegando do DHCP do 2003. Espero que gostem, pois deu muito trabalho fazer isso, mas ficou muito show!

[ Hits: 39.150 ]

Por: Davi Rodrigues em 08/01/2009 | Blog: http://br.linkedin.com/pub/davi-rodrigues/23/319/68b


Configurando Linux para autenticar no AD



Vamos instalar as dependências para dar sequência ao artigo.

Primeiro edite o arquivo /etc/hosts colocando o nome e o ip do seu Controlador de Domínio:

# vim /etc/hosts

10.100.0.165 domínio.com.br realm

10.100.0.165 maquina.domínio.com.br nome_da_maquina

127.0.0.1 localhost.localdomain localhost prx

Em seguida vamos instalar o NTPDATE para efetuar o sincronismo de horário entre o servidor Linux e um NTP Server:

# apt-get install ntpdate

Instalação do Kerberos

Kerberos p/ Linux (Debian Etch):

# apt-get install krb5-kdc krb5-config krb5-clients libpam-krb5 krb5-user

Após a instalação edite o arquivo krb5.conf:

# vim /etc/krb5.conf

[libdefaults]
ticket_lifetime = 24000
default_realm = DOMINIO.COM.BR
dns_lookup_realm = false
dns_lookup_kdc = false

[realms]
DOMINIO.COM.BR = {
kdc = 10.100.0.165
admin_server = 10.100.0.165:749
default_domain = 10.100.0.165
}

[domain_realm]
.nelinho-sp.com.br = DOMINIO.COM.BR
nelinho-sp.com.br = DOMINIO.COM.BR

[login]
krb4_convert = true
krb4_get_tickets = false

[logging]
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmin.log
default = FILE:/var/log/krb5lib.log

Salve e feche.

Vamos editar alguns dos arquivos de configuração e efetuar a comunicação entre o Proxy e o Controlador de Domínio via Kerberos.

Primeiro é necessário que o horário do servidor Linux e do servidor Windows estejam sincronizados. Para isto utilizaremos um servidor NTP, seguindo os seguintes passos:

Servidor Linux:

# ntpdate ntp.cais.rnp.br

Servidor Windows:

C:\Winnt> net time /setsntp:ntp.cais.rnp.br
C:\Winnt> net stop w32time & net start w32time

Obs.: Para fazer a atualização da hora tem que estar liberado no gateway firewall.

Em seguida vamos iniciar a comunicação entre o Linux e o Domain Controller utilizando Kerberos (lembrando que o domínio utilizado neste artigo chama DOMINIO.COM.BR).

Será solicitada a senha do usuário "administrador". Se tudo correu bem, você rodará o comando "klist" e o retorno será semelhante ao que obtivemos, conforme abaixo:

# kinit administrador
Password for administrador@DOMINIO.COM.BR:

# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: administrador@DOMINIO.COM.BR
Valid starting Expires Service principal
02/22/07 14:25:47 02/23/07 00:25:47 krbtgt/MAQUINA@DOMINIO.COM.BR
Kerberos 4 ticket cache: /tmp/tkt0
klist: You have no tickets cached

Se a saída do comando for diferente do apresentado acima, verifique:
  • Se não há erro no arquivo krb5.conf;
  • Se o horário não está sincronizado entre as máquinas;
  • Se a senha do administrador foi alterada.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configurando Linux para autenticar no AD
   3. Instalando e configurando o WINBIND e SAMBA
   4. Configurando o PAM e commons
Outros artigos deste autor

Samba 4 (Active Directory) no Debian/Ubuntu Server

OpenVPN Matriz > Filial com PPTP

Leitura recomendada

Samba 4 - Active Directory Open Source - Ubuntu 14.04.4

HOWTO Samba

Bloqueando a gravação de arquivos no Samba por extensão

Linux e Active Directory (Integrando COMPLETAMENTE sua estação Linux a um domínio MS Windows 2000/2003 Server)

Samba - Configurado como PDC

  
Comentários
[1] Comentário enviado por librarian em 08/01/2009 - 17:40h

Interoperabilidade é isso aí!

[2] Comentário enviado por matux em 10/01/2009 - 10:03h

Grande trabalho, está bem detalhado.
Parabéns pelo Artigo!

[3] Comentário enviado por walber em 11/01/2009 - 10:54h

Muito bom, show de bola, parabêns.

[4] Comentário enviado por davirodrigues em 12/01/2009 - 09:54h

Pois é galera.... os Responsáveis da empresa que fizemos esse serviço, ficaram boquiabertos, simplesmente deslumbrados, realmente foi um serviço muito trabalhoso e muito gratificante....

vlw...

qualquer dúvida posta aew....


flw...

[5] Comentário enviado por edson_nasilva em 19/03/2009 - 11:56h

Olá davirodrigues
Eu li o seu tutorial que é muito bom, mas estou tendo um problema na empresa onde eu trabalho.
Quando eu executo o comando "net ads join -U usuárioadministrador", me retorna um erro que é: Failed to set servicePrincipalNames. Please ensure that the DNS domain of this server matches the AD domain, Or rejoin with using Domain Admin credentials. Disabled account for 'nomedamaquina' in realm 'dominio'.

O meu /etc/hosts está configurado:

ipdoservidor_ad dominio realm
ipdoservidor_ad dominio nomedamaquina
127.0.0.1 localhost.localdomain localhost prx

Também está configurado igualzinho o seu tutorial /etc/krb5.conf e /etc/samba/smb.conf com as modificações necessárias.

No comando "kinit usuarioadministrador_ad" funciona normalmente.

Precisaria solucionar este problema o mais rápido possível.

flw..........

[6] Comentário enviado por davirodrigues em 20/03/2009 - 10:47h

Opa......

olha só pelo erro que vc postou, eu tenho 2 sugestões para lhe dar..., primeiro olhar se o DNS esta configurado corretamente(se o DNS for windows, ver os logs de alerta), e segundo verificar se a hora esta sincronizada com o servidor AD, tenta isso e posta aew....


flw...

[7] Comentário enviado por davirodrigues em 05/05/2009 - 16:55h

Então "edson_nasilva" como ficou o seu problema? conseguiu resolver esse problema?
posta aew dá notícias...flw...!!!!

[8] Comentário enviado por swmxavier em 07/10/2009 - 21:32h

Olá, gostei do tuto mas tenho algumas dúvidas. Tenho ltsp instalado em um ubuntu 8.04, e com alguns terminais já funcionando.

Só que eu queria que todos os usuários tivessem um login e senha únicos, o que já acontece com outros micros(com windows) que estão conectados a uma rede com o win 2003 server, pois eles são autenticados no AD.

Logo, encontrei que a solução seria utilizar o winbind para a autenticação.

Minha rede encontra-se da seguinte forma. O LTSP(rodando DHCP 3) tem 2 interfaces de rede. uma está com um IP fixo(eth1) que faz a conexão com os Thin Clients(pegam o IP do DHCP do LTSP). A outra está configurada para obter o IP através do DHCP da rede.

Minhas dúvidas:
1ª Tenho que conectar os Thin clients na mesma rede onde estão os micros com o windows?
2ª Meu LTSP também tem de ser conectado a esta rede, mas ele precisa ter um IP fixo?
3ª Aquele IP 192.198.1.5 no seu tuto se refere ao IP do LTSP?
Por enquanto eh só.

Depois que os terminais estiverrem bootando através do DHCP do windows volto com mais duvidas com certeza. Obrigado.

Desculpe o detalhamento, sei que vcs entendem muito bem do assunto, mas queria deixar bem clara minha situação.

[9] Comentário enviado por swmxavier em 27/10/2009 - 18:56h

Olá. Gostaria de saber como ficou o logon das estações (Thin Clients)

Tipo, o login precisa ser usuário@dominio ou não ?

[10] Comentário enviado por davirodrigues em 13/11/2009 - 11:43h

precisa não....somente o usuário mesmo

[11] Comentário enviado por swmxavier em 17/11/2009 - 19:21h

OK.

Obrigado pela resposta Davi.

Já consegui fazer a autenticação e me logar através de uma estação cliente do LTSP.

Mas tenho uma dúvida ainda.

Tenho máquinas windows na rede, que autenticam no AD, todas estas máquinas possuem restrições de acesso a determinados locais da rede e a determinados recursos do sistema, como: painel de controle, executar, trocar o papel de parede e daí por diante. Todas estas estações fazem logon com o mesmo nome de usuário e senha. Porém quando faço login em um thin client com este usuário e senha, eu posso alterar papel de parede, e tenho acesso a todos os painéis de controle possíveis. Gostaria de saber como faço para que as GPO's do AD sejam aplicadas ao usuário quando ele está logado em uma máquina linux.

[12] Comentário enviado por davirodrigues em 18/11/2009 - 11:13h

Ai é que esta o seu problema GPO não funciona no linux, você vai ter que fazer a configuração do servidor de LTSP mesmo...

achei isto na internet sobre o assunto veja:

De: Rafael Santos <rafa.assun@gmail.com>
Para: linux-br@bazar2.conectiva.com.br
Assunto: Re: (linux-br)Perfil único p/ usuarios
Data: Sat, 24 Dec 2005 12:54:37 -0200
Você poderá facilmente resolver o problema de logar com o mesmo
usuário em todas as máquinas use o conjunto NIS/NFS, é fácil e eficaz.
Procure no Google Linux que você achará muita informação sobre isso.

Para criar um perfil padrão, eu fiz o seguinte:
1 - Criei um usuário;
2 - Mudei o perfil dele da maneira que eu achei mais adequada;
3 - Copiei a pasta .kde e Desktop desse usuário para /etc/skel do
servidor NIS/NFS.
Pronto, todos os usuários que você criar terão essa configuração de perfil.

E para proibir o usuário de alterar o perfil você pode usar o Kiosk, é
um aplicativo para o KDE que você proibe/libera o usuário de alterar o
perfil, inclusive alterar papel de parede caso você queira.
Mais dúvidas pergunte.
Falou
Rafael Santos
=====

esta é o link da página que eu achei:

http://www.zago.eti.br/user-cadastro.txt

tem o email do cara que postou acho que se tiver alguma dúvida com relação a sugestão, vc pode mandar um email para ele, e qualquer outra dúvida me fala aew que eu te ajudo....blz..?

[13] Comentário enviado por thiagomdr27 em 10/05/2017 - 11:22h

Bom dia, estou em um projeto e para colocar em produção em uma grande quantidade de maquinas em uma instituição. O LTSP já está rodando mas foi solicitado que o servidor LTSP fosse autenticado no AD. Todos os clientes que se logassem no LTSP se autenticasse no AD, é possível?
Parabéns pelo artigo, ficou muito bom (ainda não implementei)


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts