Ubuntu 8.04 autenticando no AD do Windows Server 2003
Publicado em 25/7/2008 | Autor Vicente
Este é um tutorial para fazer o Ubuntu autenticar em um domínio Windows 2000/2003.
Para instalar o Ubuntu baixe o iso e queime o CD. Recomendo que você faça os testes em uma máquina dedicada. Dá azar instalar um Linux na mesma máquina que você usa com o Windows. E digo mais: segundo as leis de Murphy, instalar Linux em sua máquina sem fazer backup aumenta em 1500% as chances de algo errado acontecer. Se mesmo assim você quiser corre o risco, não xingue a minha mãe, ela não gosta de Linux…
Abra uma console e edite os arquivos de configuração utilizando seu editor favorito. Lembre-se que as alterações devem ser realizadas utilizando-se do comando sudo. Por exemplo: para alterar o arquivo /etc/nsswitch.conf execute: sudo vim /etc/nsswitch.conf.
Faça a atualização do seu Ubuntu usando o Synaptics e instale os pacotes krb5-user, winbind, samba e ssh.
Tenha certeza que o horário e fuso da sua máquina esteja de acordo com o do servidor. Caso contrário o você não poderá logar. O Windows Server 2003 é muito chato com relação ao logon de máquinas com diferenças de horário.
Altere o /etc/resolv.conf conforme abaixo:
search dominio.seu
nameserver ip_dns_primario
nameserver ip_dns_secundario_se_houver
Altere o /etc/hosts conforme abaixo, delete todas as outras entradas:
ip_maquina nome_maquina.dominio.seu nome_maquina
Altere o arquivo /etc/nsswitch.conf conforme abaixo:
passwd: compat winbind
group: compat winbind
shadow: compathosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
networks: filesprotocols: db files
services: db files
ethers: db files
rpc: db filesnetgroup: nis
Altere o arquivo /etc/krb5.conf conforme abaixo:
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = DOMINIO.SEU
dns_lookup_realm = true
dns_lookup_kdc = true
ticket_lifetime = 24h
forwardable = yes
[realms]
DOMINIO.SEU = {
kdc = servidor.dominio.seu
admin_server = servidor.dominio.seu
default_domain = DOMINIO.SEU
}
[domain_realm]
.dominio.seu = DOMINIO.SEU
dominio.seu = DOMINIO.SEU
[kdc]
profile = /var/kerberos/krb5kdc/kdc.conf
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
Para verificar que você consegue se autenticar via kerberos execute o comando:
kinit usuario@DOMINIO.SEU
Será solicitada a senha do usuário. Se não der nenhuma mensagem de erro, execute o comando klist. Se for mostrada uma mensagem parecida com a abaixo, você se autenticou com sucesso:
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: usuario@DOMINIO.SEU
Valid starting Expires Service pricipal07/24/08 18:12:30 07/25/08 04:12:34 krbtgt/DOMINIO.SEU@DOMINIO.SEU
RENEW UNTIL 07/25/08 16:12:30
Altere o arquivo /etc/samba/smb.conf conforme abaixo:
[global]
workgroup = dominio
security = ads
log file = /var/log/samba/%m.log
max log size = 50
dns proxy = no
password server = servidor.dominio.seu
realm = DOMINIO.SEU
idmap uid = 16777216-33554431
idmap gid = 16777216-33554431
template shell = /bin/bash
winbind use default domain = true
winbind enum users = yes
winbind enum groups = yes
Edite os arquivos de configuração do PAM:
O arquivo /etc/pam.d/common-account deve conter somente as linhas:
account sufficient pam_winbind.so
account required pam_unix.so
O arquivo /etc/pam.d/common-auth deve conter somente as linhas:
auth required pam_listfile.so item=user sense=allow file=/etc/system_users onerr=fail
auth sufficient pam_winbind.so
auth required pam_unix.so nullok_secure use_first_pass
Inclua no arquivo /etc/pam.d/common-session a linha:
session required pam_mkhomedir.so umask=0022 skel=/etc/skel
Crie o arquivo /etc/system_users e coloque os usuários, um em cada linha, que deseja permitir logon no computador. NÃO ESQUEÇA DE SEUS USUÁRIOS LOCAIS!
Crie o diretório que conterá o home dos usuários do domínio:
mkdir /home/DOMINIO
Adicione o computador ao domínio com o comando:
net ads join -U usuario_com_permissao_adicionar@DOMINIO.SEU
Reinicie os serviços abaixo nesta ordem:
/etc/init.d/samba stop
/etc/init.d/winbind stop
/etc/init.d/samba start
/etc/init.d/winbind start
Inicie o SSH com o comando:
/etc/init.d/ssh restart
Teste com o comando:
ssh usuario_do_dominio@seu_computador
Por algum motivo macabro, se você logar direto na interface gráfica, não é criado o home. É necessário o primeiro logon ser feito via SSH para criar o diretório do usuário no caminho /home/DOMINIO/usuario. Depois disso funciona o logon via interface gráfica, sem problemas.
Pronto! Você já consegue logar no seu Ubuntu, usando sua conta de domínio.
Oportunidades de melhoria:
- Colocar a montagem automática de unidades de rede neste procedimento.
- Colocar como configurar o NTP para manter o horário de seu computador sincronizado com o do seu controlador de domínio.
- Algumas coisas estranhas acontecem de vez em quando. Por exemplo, quando clico para bloquear a estação demora quase 1 minuto para bloquear. Ainda não entedi por que mas se achar a causa, posto a solução.
- Criar via root no logon da interface gráfica.
- Eliminar as referências ao controlador de domínio e IP do computador local dos arquivos de configuração. Estes dados podem ser voláteis e quando alterados, podem impedir o logon.
Este procedimento não seria possível sem as fontes abaixo:
http://wiki.ubuntubrasil.org/AutenticandoAD
http://anothersysadmin.wordpress.com/2007/08/03/active-directoy-authentication-with-ubuntu/
28 comentários, comente você também!
Categoria: Linux, Redes, Todos, WindowsTags: active directory, autenticação, Linux, procedimento, ubuntu, Windows
Comments
28 Responses to “Ubuntu 8.04 autenticando no AD do Windows Server 2003”
Deixe um comentário!


July 25th, 2008 @ 22:15
leia mais……
[Translate]
July 25th, 2008 @ 22:16
leia mais……
[Translate]
July 25th, 2008 @ 22:25
Abra?os
[Translate]
August 5th, 2008 @ 13:37
[Translate]
August 20th, 2008 @ 12:07
Muito bom o Artigo
[Translate]
November 12th, 2008 @ 17:27
- Bom para se criar uma nova partição utilize o Partition Magic — antes desfragmente o seu HD.
- Ou utilize a máquina virtual Microsoft Virtual PC — assim não é necessário criar uma nova partição.
É lógico q sem conhecimento e sem procurar se informar do assunto de forma eficiente só sairá merda. Estude, se informe e faça sem medo.
[Translate]
November 12th, 2008 @ 17:28
Kra não tem problema algum em instalar o linux no msm PC que tem o windows…
[Translate]
November 25th, 2008 @ 16:46
do kinit pra frente nada rola…
preciso muito colocar o ubuntu para logar no win 2003
manda a força ai vicente abraço.
[Translate]
November 25th, 2008 @ 19:04
Outra coisa, seu Ubuntu está apontando para o servidor DNS do domínio?
[Translate]
November 26th, 2008 @ 11:44
escuta se eu criar o arquivo apenas com as configurações que estão no tuto rola? é que estou deixando as configurações default do arquivo e modificando e acresentando as que vc criou…
vou começar novamente a configuração ai te aviso o que deu.
outra coisa o usuário que usu no kinit e um usuário do ubuntu ou do domínio?
Obrigadão por me ajudar ai..
[Translate]
November 26th, 2008 @ 12:21
Me mande o IP, nome do servidor de domínio, nome completo do domínio que eu monto o krb5.conf para você.
O usuário do kinit é usuário do domínio.
Abraços.
[Translate]
November 27th, 2008 @ 8:53
SRVAD é o nome do Servidor
CONJUNTONACIONA é o nome do domínio local
há outra coisa, configuramos o domínio para que interno seja CONJUNTONACIONAL.LOCAL, quando eu acrescento uma máquina windows na rede eu uso o nome CONJUNTONACIONA, mas o nome do PC muda para PC.CONJUNTONACIONAL.LOCAL, inclusive quando eu instalo o Ubuntu ele pega esse nome CONJUNTONACIONAL.LOCAL
não sei qual dos dois eu uso…
vou adicionar um usuário do dominío no Ubuntu.
abraço.
thk
[Translate]
November 28th, 2008 @ 14:20
eu estou logado no ubuntu com um usuário linux e testo o kinit com um usuário do domínio.
[Translate]
December 2nd, 2008 @ 13:55
Como resolver isso?
Abraço!
[Translate]
December 27th, 2008 @ 18:35
att
wellinton silva
qualquer coisa vc pode me mandar um email te+
[Translate]
February 3rd, 2009 @ 10:08
Está me ajudando bastante.
Wallisson Narcisos last blog post..Derrotado – # 28
[Translate]
February 18th, 2009 @ 17:35
O meu deu o mesmo erro do Jacson, vou te passar os dados se puder me ajudar agradeço:
10.169.2.1
servidorpdc
MFTTO.LOCAL
leandro330i@gmail.com
Valew, até mais.
[Translate]
April 7th, 2009 @ 12:33
não consigo logar com nenhum usuário, e não sei a sintaxe certa pra logar com o usuário do domínio, me ajuda ai se puder…
valew…
[Translate]
April 7th, 2009 @ 12:36
INCLUSIVE NO KINIT O DOMÍNIO É MAIÚSCULO…
[Translate]
August 27th, 2009 @ 17:10
[Translate]
September 23rd, 2009 @ 12:23
[2009/09/23 12:21:00, 0] libads/kerberos.c:ads_kinit_password(362)
kerberos_kinit_password elm@WEST.LOCA@WEST.LOCAL failed: Malformed representation of principal
Failed to join domain: failed to connect to AD: Malformed representation of principal
alguem pode ajudar por favor
[Translate]
September 23rd, 2009 @ 13:05
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: administrator@WEST.LOCAL
Valid starting Expires Service principal
09/23/09 13:05:26 09/23/09 23:05:33 krbtgt/WEST.LOCAL@WEST.LOCAL
renew until 09/24/09 13:05:26
[Translate]
September 25th, 2009 @ 15:35
Valeu Vicente!

Luis Alberto Silva Costa´s last blog ..Encontrado! Guilherme Miranda Gomes
[Translate]
October 5th, 2009 @ 13:47
[Translate]
October 9th, 2009 @ 11:18
Grato!
[Translate]
November 5th, 2009 @ 17:53
Reiniciei a máquina, quando tento fazer login diz que não há servidor de logon.
O que pode está errado?
Maron
[Translate]
April 21st, 2010 @ 18:48
Se realmente alguém já conseguio fazer tudo, pq não disponibiliza um exemplo para nós vermos, com o nome do servidor, IP, DNS, AD, etc…. Axo que seria bem melhor do que kontinuar à prokura de um monte de respostas k iram fikar sem solução, OK……Eu tb ainda não konsegui!
[Translate]
August 3rd, 2010 @ 19:58
[Translate]