Menu para servidor LDAP
Publicado por Tairone Seremeta (última atualização em 07/06/2011)
[ Hits: 7.493 ]
Homepage: Google
Segue um menu para auxiliar na adição, criação de grupos entre outras funções.
Ajudou muito aqui na minha empresa.
#!/bin/bash
Principal() {
clear
suffix="dc=NOME DO SEU LDAP"
people="ou=People",$suffix
group="ou=Group",$suffix
rootdn="USUARIO DO LDAP"
rootpw="SENHA DO LDAP"
echo "+--------------------------------------------------------+"
echo "| SUA EMPRESA |"
echo "+--------------------------------------------------------+"
echo "| MENU do Ldap |"
echo "+--------------------------------------------------------+"
echo
echo Powered by: Tairone Seremeta
echo Tecnologia Informacao - TI
echo
echo -ne "#======= Menu do seu LDAP ========#"
echo
echo "1. Adicionar um Usuario"
echo "2. Deletar um Usuario"
echo "3. Modificar senha de Usuario"
echo "4. Adicionar um Grupo"
echo "5. Remover um Grupo"
echo "6. Adicionar um Usuario no Grupo"
echo "7. Remover um Usuario no Grupo"
echo "8. Listar Usuario"
echo "9. Sair"
echo -n "Entre com a opcao desejada => "
read opcao
echo
case $opcao in
1) Adicionar ;;
2) Deletar ;;
3) Modificar ;;
4) Adicionar_grupo ;;
5) Remover_grupo ;;
6) Alterar_grupo ;;
7) Alterar_del_grupo ;;
8) Lista_usuario ;;
9) exit ;;
*) "Opcao desconhecida." ; echo ; Principal ;;
esac
}
#1#################Adicionando usuario####################
Adicionar() {
uidnumber=`ldapsearch -LL -x -b $people uidNumber | grep uidNumber | tail -1 | awk '{print $2}'`
nextuid=`expr $uidnumber + 1`
echo -n "Digite o login:"
read uid
echo -n "Digite somente o nome:"
read cn
echo -n "Digite o sobrenome:"
read sn
echo -n "Digite o numero do CPF:"
read numcpf
echo -n "Digite o Setor->"
read numsetor
echo
echo -n "Digite a senha: "
read -s pass
senha=`slappasswd -c crypt -s $pass`
echo
(
echo "dn:uid=$uid,$people"
echo "objectClass: top"
echo "objectClass: person"
echo "objectClass: posixAccount"
echo "objectClass: inetOrgPerson"
echo "cn:$cn"
echo "sn:$sn"
echo "uid: $uid"
echo "cpf: $numcpf"
echo "userPassword: $senha"
echo "homeDirectory: /home/$uid"
echo "loginShell: /bin/bash"
echo "uidNumber: $nextuid"
echo "gidNumber: $numsetor"
)| ldapadd -x -D $rootdn,$suffix -w $rootpw
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
#2#################Deletar usuario######################
Deletar () {
echo -n "Digite o login a ser excluido:"
read cn
echo $LDAPDN
(
echo "uid=$cn,$people"
)| ldapdelete -x -D $rootdn,$suffix -w $rootpw
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
#3#####################Alterar senha######################
Modificar() {
echo -n "Digite o login -> "
read userldap
cn=$userldap
echo -n "Digite a senha: "
read -s pass
senha=`slappasswd -c crypt -s $pass`
echo
LDAPDN=`ldapsearch -h localhost -x -b $people -D $rootdn,$suffix -w $rootpw "(uid=$cn)" | grep dn`
(
echo "$LDAPDN"
echo "changetype: modify"
echo "replace: userPassword"
echo "userPassword: $senha"
)| ldapmodify -x -D $rootdn,$suffix -w $rootpw
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
#4###################Adicionando Grupo########################
Adicionar_grupo() {
gidnumber=`ldapsearch -h localhost -x -b $group -D $rootdn,$suffix -w $rootpw gidNumber | grep gidNumber: | sort | cut -d : -f 2 | tail -n 1| sed s/\ //g`
nextgid=`expr $gidnumber + 1`
echo -n "Digite o novo grupo:"
read uid
(
echo "dn:cn=$uid,$group"
echo "objectClass: posixGroup"
echo "cn: $uid"
echo "gidNumber: $nextgid"
)| ldapadd -x -D $rootdn,$suffix -w $rootpw
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
#5##################Remover Grupo############################
Remover_grupo() {
echo -n "Digite o grupo a ser excluido:"
read cn
echo $LDAPDN
(
echo "cn=$cn,$group"
)| ldapdelete -x -D $rootdn,$suffix -w $rootpw
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
#6#############Alterando o grupo de um login###################
Alterar_grupo() {
echo -n "Digite o login a ser alterado:"
read uid
echo -n "Digite o grupo:"
read cn
(
echo "dn: cn=$cn,$group"
echo "changetype: modify"
echo "add: memberUid"
echo "memberUid: $uid"
)| ldapmodify -x -D $rootdn,$suffix -w $rootpw
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
#7#############Removendo login de um grupo###################
Alterar_del_grupo() {
echo -n "Digite o login a ser retirado:"
read uid
echo -n "Digite o grupo:"
read cn
(
echo "dn: cn=$cn,$group"
echo "changetype: modify"
echo "delete: memberUid"
echo "memberUid: $uid"
)| ldapmodify -x -D $rootdn,$suffix -w $rootpw
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
#8##############Lista Usuario####################
Lista_usuario() {
echo -n "Digite o login:"
read user_id
ldapsearch -LLL -x uid=$user_id
echo "Pressione qualquer tecla para continuar..."
read msg
Principal
}
Inventário e Análise de hardware
Compilação de módulos para VMware 12.5.7 no Fedora 26
Script para autenticar usuario ip fixo speedy
A combinação de WMs com compositores feitos por fora
Audacious, VLC e QMMP - que saudades do XMMS
SUNO OpenSource: Crie um servidor de gerador de música com IA
Instalação Completa e Configuração Básica do Void Linux
A Fundação da Confiança Digital: A Importância Estratégica de uma PKI CA na Segurança de Dados
Migração do KDE Plasma para Cinnamon no Gentoo (com systemd) + Tema Colloid
Como desativar a economia de energia no Gentoo (Systemd, Wi-Fi, USB e SSH)
Tenha opção de emblemas embutido no pcmanfm
Linux mint cinnamon travando. (2)
Vulkan Gaming no Slackware [RESOLVIDO] (14)









