Deixa ver queres acessar arquivos no linux como sendo um estação Microsoft?
ou seja uma estação linux como se fosse um "XP pro", certo?
podes tentar remontar um ponto de montagem no linux como o /home dos
teus LINUX users com suporte as ACLs do NT e mapear usuários e grupos
nativos da microsoft.
Se for deixar os arquivos do linux disponíves para rede Microsoft vais
ter que usar o samba.
Se quiser autenticar usuário local linux no domínio, podes usar
módulos PAM para LDAP e gerar um bilhete do kerberos atenção para o
tipo de timezone, alêm de mapear usuário local linux + samba com
usuário do Microsoft LDAP PDC NT 4 ou DC do Active Directory
2000/2003.
Ainda existe um pacote AD4Linux que facilita tua vida....esse instala
extenões no Servidor que for DC para que vc possa deixar o linux como
cliente de serviços e ACL do Windows.
Vc poderia fazer isso tudo configurando o SAMBA como Domain Member
isso vale para servidor ou estação de trabalho. Essa configuração é um
pouco abstrata ara quem não está acostumado com módulos de
autenticação e forma de autenticação com Linux, assim como trabalhar
com suporte das ACL do NT. (vc não vai conseguir usar a criptografia
nem compressão de
Bom vc vai poder ingressar em domínio NT, gerar um bilhete de Kerberos
V e mapear a raça BILT-IN que vai usar. Não vais mapear OUs do LDAP
Microsoft.
O Conectiva 10 usa o padrão MIT do kerberos 5. Com pacotes RPM
krb5, krb5-client. O pam_krb5 não é do pacote do Kerberos MIT.
Só testei isso com Conectiva 10 com Kernel 2.6.
O Active diretory usa o DNS como pesquisa de nomes para objetos coo
computadores vc não usa mais o WINS neste caso, mas convêm ter o WINS
server devidamente configurado com o DNS no Windows PDC ou DC, ou seja
todo cliente Microsoft deve usar o como servidor DNS o DC/PDC, o mesmo
para estaçã linux. Então:
/etc/resolv.conf
search linux001.intranet.local
nameserver 10.0.0.1 (ip do DNS server Microsoft)
Salve e saia, não use outro DNS na estação, seu servidor DNS 200x deve
encaminhar para outro DNS e não deves usar DNS externos na rede local.
Pare o samba e edite /etc/samba/smb.conf
[global]
workgroup = grupolinux
server string = linux001
log file = /var/log/samba/%m.log
log level = 1
unix charset = iso-8859-1
security = ads
realm = INTRANET.LOCAL
password server = *
username map = /etc/samba/smbusers (limpe caso tenha feito
experimentos antes de configurar)
wins server = 10.0.0.1 (IP do servidor wins instalado no
2003, não usei parceiro de replicação no linux, pois ele é cliente
membro)
[homes]
...
valid users = %D\%S (deve ser assim para compatibilidade com
o valid users)
...
ainda não inicie o serviço SMB.
Valide se o timezone está no mesmo padrão do windows não pode ser UTC
dica timeconfg. Não GMT e sim BRT. Caso use o timezone errado, ve terá
problemas de bilhetes com desvio de mais de 300 minutos, inseguro.
net rpc join -U Administrador
digite a senha do Administrador que vc usa no 200x com este comando vc
vai fazer uma chamada RPC Microsoft.
Teste o resultado
net rpc testjoin
A saída deve ser algo do tipo "Join to 'INTRANET' is OK" intranet é o
nome NetBIOS do meu domínio. Nome netbios é aquele que vem antes do
sufixo do domínio, o que aparece nas estações Microsoft em "logon to"
Os registros SRV necessitam das chamadas que são feitas pelo Kerberos 5
dig +short _kerberos._tcp.intranet.local srv vai te retornar o
registro srv do hostname, não quer dizer que vc não possa usar o BIND
como servidor DNS.
O fato e'que como DNS server da Microsoft configurado fica mais fácil
para trabalhar como Active Diretory e com aplicações que necessitem
atualizar estender o schema, como o exchange 2003 quando realizamos um
domain prep.
Se não me enganoa porta padrão do kerberos é a 88.
Vc precisa configurar o /etc/krb5.conf
[libdefaults]
default_realm = INTRANET.LOCAL
[realms]
INTRANET.LOCAL = {
kdc = server.intranet.local
}
[domain_realm]
.intranet.local = INTRANET.LOCAL
Inicie o TGT especificando como administrador, senão ele usa o usuário atual.
kinit Administrator
ente com a senha quando solicitada no padrão de domínio.
klist
Vai te mopstrar o cache do bilhete. quano foi emitido e quando expira,
vc pode configurar isso via direitiva padrão do tempo do bilhete do
domínio no active diretory, algumas aplicações Microsoft alteram este
tempo do bilhete, valida conforme o deploymet pelo recomendado no MOF,
www.microsoft.com/mof.
Tamo quase lá, de complicativo só falta dar um join, como numa estação Microsof:
net ads join
para ver o resultado digite
klist
Bem vindo ao modo nativo de SAMBA como cliente do Active Directory
Agora a segunda parte da sua pergunta, ACL, Usuários e Grupos.
lista usuários do domínio
list ads userdigamos que existe um usuário chamado "billgates"
Vc precisa adicionar ele na base do linux local (não do samba)
useradd billgates -g users
deixe sem senha mesmo
valide o uid e gid em
/etc/samba/smb.conf são valores usados pelo RID e predefinições do
administrador.
não esqueça de validar o serviço winbind do pacote samba-winbind
service winbind start agora valide sua situação no domínio
wbinfo -t (teste)
Ele faz um teste do secret por chamads RPC kerberos 5 depois execute:
wbinfo -u (usuários)
wbinfo -g (grupos)
Vc precisa configurar o nsswitch para que os usuários sejam
reconhecidos pelo linux
/etc/nsswitch.conf
passwd files winbind
shadow files winbind
group files winbind
Esse arquivo deve ser mantido na sua rotina de backup da estação
/var/lib/samba/winbindd_idmap.tdb perde-ló é a mesma coisa que perde
mapeamentos de assinatura
smb nas estações Microsoft. pois aqui é feito o SID do uid e dig vc
deve ter os valores no smb.conf na seção global.
idmap uid = 100000-200000
idmap gid = 100000-200000
teamplate = shell /bin/bash
teamplate = homedir /home/%U
Claro e por fim os módulos PAM, se estiver diferente vc corre o risco
de não logar mais na estação, não é igual Windows que existe SAM local
/etc/pam.d/system.auth
%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required /lib/security/$ISA/pam_env.so
auth sufficient /lib/security/$ISA/pam_unix.so likeauth nullok
auth sufficient /lib/security/$ISA/pam_winbind.so use_first_pass
auth required /lib/security/$ISA/pam_deny.so
account required /lib/security/$ISA/pam_unix.so
account [default=bad success=ok user_unknown=ignore
service_err=ignore system_err=ignore]
/lib/security/$ISA/pam_winbind.so
password requisite /lib/security/$ISA/pam_cracklib.so retry=3 type=
password sufficient /lib/security/$ISA/pam_unix.so nullok
use_authtok md5 shadow
password sufficient /lib/security/$ISA/pam_winbind.so nullok use_authtok
password required /lib/security/$ISA/pam_deny.so
session required /lib/security/$ISA/pam_limits.so
session required /lib/security/$ISA/pam_unix.so
Para logar use
login: INTRANET\logon
password *******
para evitar problema de direitório HOME vc precisa usar o pam_mkhomedir.so
por padrão a relação de confiança allow trusted fica habilitada, isso
permite logon de outros domínios no parametro DOMINIO\logon
é como fazer uma autenticação no executar do Windows em outro
computador com usuário e senha do mesmo.
Vc ainda poder um SAMBA + LDAP e um servidor e brincar com a
interoperabilidade entre servidor Microsoft com suporte a servidores
UNIX instalado.
Não esqueça de instalar e testar o samba antes de aventurar-se. Depois
faça backup e limpe a base para iniciar este procedimento.
para usar acls mount / -o remount,acl podes usar o comando acl nos
pontos de montagem no /etc/fstab para homes e direitórios que queres
que o usuário possa alterar ACLs.
Dicas:
http://www.bluelightning.org/linux/samba_acl_howto/
digite ntsysv e verifique se os serviços estão sendo inicializados no boot.
chkconfig --list mostra tudo.
O Ad for linux pode ser mais fácil.... mas é um programa instalado no
teu 200x.. eu não testei ainda pelo fato de temer problemas no schema
do 200x.
[]'s
Alex
---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html