Menu para servidor LDAP
Publicado por Tairone Seremeta (última atualização em 07/06/2011)
[ Hits: 7.384 ]
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
}
Script de busca (google em shell)
Adicionar/Deletar Usuarios Samba/Sistema
Script para checagem de Ponto de Acesso.
Criação de unidades criptografadas
Bashblog v1.0 0 - cria um microblog em HTML5
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
ERRO: LAZARUS 4.2 64 no Linux MINT não entra mais apos ajustar desktop... (0)
Pergunta: Meu teclado não está respondendo direito como e consertar? (2)
Secure boot, artigo interessante, nada técnico. (6)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (0)









