Modifique as entradas do LDAP com o comando ldapmodify

Recentemente, fiz uma série de artigos cobrindo o protocolo LDAP (Lightweight Directory Access Protocol), que vão desde a instalação, adicionando entradas, até ferramentas completas de gerenciamento de GUI (consulte o conteúdo LDAP no Ghacks para obter mais informações). Se você não sabe se o LDAP é um protocolo de aplicativo que permite a consulta e a modificação de dados de serviços de diretório implementados em redes IP. Basicamente, é um diretório grande e complexo de informações de várias formas que pode ser usado para muitas e variadas implementações (livros de endereços de empresas, autenticação de aplicativos etc.).

Depois que o LDAP estiver instalado, você terá, ao seu alcance, muitas ferramentas para adicionar, editar e excluir dados naquele servidor. Uma dessas ferramentas é crítica para manter os dados atualizados. Essa ferramenta é ldapmodify. Neste artigo, vou mostrar como usar essa ferramenta para modificar uma entrada em um servidor LDAP.

Noções básicas de comando

O comando ldapmodify não é exatamente como todos os outros comandos. Em vez de apenas executar um único comando e terminar com ele, você emite o comando, trabalha e, em seguida, sai do comando. A modificação real dos dados não acontece até que você escape do comando. A sequência é assim:

  1. Emita o comando ldapmodify (com as opções apropriadas).
  2. Informe o ldapmodify o que você está modificando.
  3. Modifique seus dados.
  4. Escape com CTRL-d.
  5. O ldapmodify fará as alterações.

Sim, parece um processo bastante complexo ... e sim, é um processo complexo, mas muito necessário.

Vamos dar uma olhada no processo real. Como exemplo, vou modificar a entrada gecos de uma entrada de diretório já existente. A entrada gecos é um campo de informações gerais que pode ser usado para praticamente qualquer coisa). Vamos nos divertir e alterar a entrada gecos para usuário scooper e indicar que Sheldon Cooper é um físico teórico na Caltech University. Assumiremos que a entrada gecos contém apenas as informações 'Sheldon Cooper' e o servidor LDAP está em 192.168.1.10 e o dc completo é wallen.local. Aqui está o processo real para esta tarefa:

Emita o comando:

ldapmodify -h localhost -x -W -D 'cn = admin, dc = wallen, dc = local'

Agora vai parecer que o comando está travado. Na verdade, está apenas esperando por uma entrada. A entrada será semelhante a esta (pressione Enter após cada linha):

dn: uid = scooper, ou = People, dc = wallen, dc = local
changetype: modificar
substituir: gecos
gecos: Físico Teórico, Caltech University

Depois de inserir este texto, pressione Enter e, em seguida, pressione CTRL-d para escapar do comando e você verá algo como:

modificar a entrada 'uid = scooper, ou = People, dc = wallen, dc = local'

Agora, se você emitir o comando ldapsearch, verá as alterações feitas. O comando ldapsearch seria semelhante a:

ldapsearch -x -b 'dc = wallen, dc = local' -s sub 'objectclass = *'

Você deve ver a lista de Sheldon assim:

# scooper, People, wallen.local
dn: uid = scooper, ou = People, dc = wallen, dc = local
uid: scooper
cn: Sheldon Cooper
objectClass: account
objectClass: posixAccount
objectClass: top
loginShell: / bin / bash
uidNumber: 500
gidNumber: 120
homeDirectory: / home / scooper
gecos: Físico Teórico Caltech University

Agora você modificou a entrada. Claro que você não está limitado à entrada gecos. Você pode realmente modificar qualquer entrada que desejar usando a mesma técnica.

Pensamentos finais

Esperançosamente, o LDAP está ficando cada vez mais fácil para você. Agora você pode adicionar e modificar entradas. Continuaremos pesquisando e, eventualmente, você terá os fundamentos do LDAP dominados.