• Nenhum resultado encontrado

Inicialização da base de dados LDAP – Configurando o smbldap-tools

q

Pacote com conjunto de ferramentas para gerenciar as contas Inicializar a base do LDAP

1 I. Obter o SID do domínio Samba: 2 root# net getlocalsid

1 II. Editar o arquivo /etc/smbldap-tools/smbldap.conf 2 SID=”SID DO DOMINIO” 2 sambaDomain=”DOMINIO” 2 slaveLDAP=“ldap://SERVIDOR/” 2 masterLDAP=“ldap://SERVIDOR/” 2 ldapTLS=“VALOR” 2 verify=“VALOR” 2 dclientcert=“/CAMINHO/CERTIFICADO” 2 clientkey=“/CAMINHO/CHAVE” 2 suffix=“BASE DN”

2 usersdn=“DN DOS USUARIOS” 2 computersdn=“DN DAS MAQUINAS” 2 groupsdn=“DN DOS GRUPOS” 2 idmapdn=“DN DOS MAPEAMENTOS” 2 sambaUnixIdPooldn=“VALOR” 2 oscope=“VALOR” 2 hash_encrypt=“VALOR” 2 crypt_salt_format=”%s” 2 userLoginShell=”SHELL” 2 userHome=”DIRETORIO” 2 userHomeDirectoryMode=”VALOR” 2 userGecos=”DESCRICAO” 2 defaultUserGid=”GID” 2 defaultComputerGid=”GID” 2 skeletonDir=”DIRETORIO” 2 defaultMaxPasswordAge=“NUMERO DE DIAS” 2 userSmbHome=“CAMINHO UNC” 2 userProfile=“CAMINHO UNC”

Ca pí tu lo 9 - S am ba

q

2 userHomeDrive=“LETRA:” 2 userScript=”SCRIPT.BAT” 2 mailDomain=”DOMINIO”

1 III. Editar o arquivo /etc/smbldap-tools/smbldap_bind.conf 2 slaveDN=”ADMIN DN”

2 slavePw=”SENHA” 2 masterDN=”ADMIN DN” 2 masterPw=”SENHA”

1 IV. Popular a base do OpenLDAP: 2 root# smbldap-populate

O pacote smbldap-tools possui um bom conjunto de ferramentas para gerenciar as contas, quando utilizando o Samba com o OpenLDAP. Essas ferramentas permitem o gerenciamento da maioria dos componentes que são necessários para as contas, especialmente para a administração de usuários, máquinas e grupos. Outro ponto positivo desse pacote é que os scripts contidos nele podem ser utilizados como parâmetros no smb.conf.

Antes de adicionar as contas na base de dados do LDAP, é necessário criar a estrutura onde serão armazenadas (caso ainda não exista). Para essa tarefa, será utilizado o script smbldap-populate.

Para inicializar e popular a base de dados do OpenLDAP com smbldap-populate, é neces- sário configurar o pacote smbldap-tools, editando os arquivos /etc/smbldap-tools/smbldap. conf e /etc/smbldap-tools/smbldap_bind.conf, para se adequar às características do ambiente. Para isso, os seguintes passos são necessários:

Obter o SID do domínio Samba: root# net getlocalsid

SID for domain SERVER is: S-1-5-21-3102374607-2088646784-3588851380

Editar o arquivo /etc/smbldap-tools/smbldap.conf. Esse é o arquivo que contém toda a confi- guração do Samba e do OpenLDAP:

root# zcat /usr/share/doc/smbldap-tools/examples/smbldap.conf.gz > /etc/smbldap- tools/smbldap.conf

As variáveis a serem configuradas no arquivo smbldap.conf são:

1 SID=”SID DO DOMINIO”: deve conter o SID do domínio, obtido através do comando “net getlocalsid”;

1 sambaDomain=”DOMINIO”: domínio do Samba;

1 slaveLDAP=“ldap://SERVIDOR/”: endereço do servidor LDAP secundário; 1 masterLDAP=“ldap://SERVIDOR/”: endereço do servidor LDAP principal;

1 ldapTLS=“VALOR”: utilizado para configurar a criptografia na conexão com o OpenLDAP. Aceita os valores “1”, para utilizar o start_tls, ou “0”, para desabilitar;

Ad m in is tr aç ão d e S is te m as L inu x: S er vi ço s p ar a I nt er ne t

1 verify=“VALOR”: define se verificará o certificado do servidor OpenLDAP. Aceita os valores “none” (não verifica/solicita o certificado), “optional” (verifica o certificado, se existir. Aceita a conexão mesmo se o certificado não existir ou não for válido) e “required” (só aceita a conexão se o certificado existir e for válido);

1 clientcert=“/CAMINHO/CERTIFICADO”: certificado utilizado para se conectar ao ser- vidor OpenLDAP;

1 clientkey=“/CAMINHO/CHAVE”: chave do certificado utilizada para se conectar ao ser- vidor OpenLDAP;

1 suffix=“BASE DN”: define o DN da base da estrutura do diretório no OpenLDAP. Exemplo “dc=empresa,dc=com,dc=br”;

1 usersdn=“DN DOS USUARIOS”: define onde as contas dos usuários serão armazenadas na estrutura do diretório no OpenLDAP. Exemplo “ou=usuarios,${suffix}”;

1 computersdn=“DN DAS MAQUINAS”: define onde as contas das máquinas serão arma- zenadas na estrutura do diretório no OpenLDAP. Exemplo “ou=maquinas,${suffix}”; 1 groupsdn=“DN DOS GRUPOS”: define onde as contas dos grupos serão armazenadas na

estrutura do diretório no OpenLDAP. Exemplo “ou=grupos,${suffix}”;

1 idmapdn=“DN DOS MAPEAMENTOS”: define onde os mapeamentos de UID/SID serão armazenados na estrutura do diretório no OpenLDAP. Exemplo “ou=idmap,${suffix}”; 1 sambaUnixIdPooldn=“VALOR”: onde armazenar os próximos UID e GID disponíveis para

as novas contas de usuários e grupos. Exemplo “${sambaDomain},${suffix}”;

1 scope=“VALOR”: escopo padrão utilizado na estrutura do diretório do OpenLDAP. Define o ponto inicial de uma busca e até que nível ela vai a partir da Base DN. Aceita os valores “base” (busca somente no nível da Base DN), “one” (realiza a busca em todas as entradas um nível a seguir da Base DN) e “sub” (realiza a busca em todas as entradas e em todos os níveis a seguir da Base DN);

1 hash_encrypt=“VALOR”: encriptação da senha do Linux. Aceita os valores “CRYPT”, “MD5”, “SMD5”, “SSHA”, “SHA” e “CLEARTEXT”;

1 crypt_salt_format=”%s”: se o parâmetro “hash_encrypt” estiver configurado como “CRYPT”, é possível configurar o formato do salt. O valor padrão é “%s”;

1 userLoginShell=”SHELL”: shell de login do usuário. Exemplo “/bin/bash”; 1 userHome=”DIRETORIO”: Diretório home do usuário. Exemplo: “/home/%U”; 1 userHomeDirectoryMode=”VALOR”: permissão padrão para o diretório home do

usuário. Exemplo “700”;

1 userGecos=”DESCRICAO”: campo de GECOS padrão utilizado para a criação das contas dos usuários. Exemplo “Usuário do SAMBA”;

1 defaultUserGid=”GID”: número do GID padrão utilizado para a criação das contas dos usuários. Exemplo “513”;

1 defaultComputerGid=”GID”: número do GID padrão utilizado para a criação das contas de máquinas. Exemplo “515”;

1 skeletonDir=”DIRETORIO”: diretório skel utilizado para a criação das contas de usuários. Exemplo “/etc/skel”;

1 defaultMaxPasswordAge=“NUMERO DE DIAS”: tempo padrão, em dias, da validade das senhas;

Ca pí tu lo 9 - S am ba

home drive do usuário (aceita a substituição %U para o username – Mesmo valor do parâ- metro “logon home” do arquivo smb.conf). Exemplo “\\SMBSERVER\%U”;

1 userProfile=“CAMINHO UNC”: o caminho no formato UNC para a localização do perfil do usuário (aceita a substituição %U para o username – Mesmo valor do parâmetro “logon script” do arquivo smb.conf). Exemplo “\\SMBSERVER\%U\profiles”;

1 userHomeDrive=“LETRA:”: a letra para o mapeamento padrão do home drive (Mesmo valor do parâmetro “logon drive” do arquivo smb.conf). Exemplo “H:”;

1 userScript=”SCRIPT.BAT”: o nome do script padrão utilizado para realizar o netlogon do usuário (Mesmo valor do parâmetro “logon script” do arquivo smb.conf). Exemplo: “logon.cmd”;

1 mailDomain=”DOMINIO”: domínio adicionado ao atributo “mail” dos usuários. Exemplo: “empresa.com.br”;

Editar o arquivo /etc/smbldap-tools/smbldap_bind.conf, onde as credenciais para conexão com o servidor OpenLDAP são configuradas:

root# cp /usr/share/doc/smbldap-tools/examples/smbldap_bind.conf /etc/smbldap-tools/. Editar os seguintes parâmetros no arquivo smbldap_bind.conf:

1 slaveDN=”ADMIN DN”: define o DN da conta do Administrador do servidor OpenLDAP secundário. Exemplo: “cn=admin,dc=exemplo,dc=com,dc=br”;

1 slavePw=”SENHA”: define a senha do DN da conta do Administrador do servidor OpenLDAP secundário;

1 masterDN=”ADMIN DN”: define o DN da conta do Administrador do servidor OpenLDAP primário. Exemplo: “cn=admin,dc=exemplo,dc=com,dc=br”;

1 masterPw=”SENHA”: define a senha do DN da conta do Administrador do servidor OpenLDAP primário;

Popular a base do OpenLDAP: root# smbldap-populate

Esse comando vai ler os arquivos de configuração e criará a estrutura de diretório (caso ainda não exista) dentro do servidor OpenLDAP, conforme definido no arquivo smbldap.conf.