[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/usr/share/se3/sbin/ -> se3_verif_compte_mdp.sh (source)

   1  #!/bin/bash
   2  
   3  # $Id: se3_verif_compte_mdp.sh 7745 2013-03-31 23:53:39Z keyser $
   4  
   5  # Script destine à tester/controler un couple uid/pass pour Linux et Samba
   6  
   7  #Couleurs
   8  COLTITRE="\033[1;35m"    # Rose
   9  COLPARTIE="\033[1;34m"    # Bleu
  10  
  11  COLTXT="\033[0;37m"    # Gris
  12  COLCHOIX="\033[1;33m"    # Jaune
  13  COLDEFAUT="\033[0;33m"    # Brun-jaune
  14  COLSAISIE="\033[1;32m"    # Vert
  15  
  16  COLCMD="\033[1;37m"    # Blanc
  17  
  18  COLERREUR="\033[1;31m"    # Rouge
  19  COLINFO="\033[0;36m"    # Cyan
  20  
  21  # Parametres LDAP
  22  BASEDN=$(cat /etc/ldap/ldap.conf | grep "^BASE" | tr "\t" " " | sed -e "s/ \{2,\}/ /g" | cut -d" " -f2)
  23  #ROOTDN=$(cat /etc/ldap/slapd.conf | grep "^rootdn" | tr "\t" " " | cut -d'"' -f2)
  24  #PASSDN=$(cat /etc/ldap.secret)
  25  
  26  if [ -z "$1" -o "$1" = "-h" -o "$1" = "--help" ]; then
  27      echo "USAGE: Passer en parametre(s):"
  28      echo "        \$1 l'uid de l'utilisateur"
  29      echo "        \$2 le mot de passe (si aucun mot de passe n'est fourni"
  30      echo "        la date de naissance extraite du gecos est testee)"
  31      exit
  32  fi
  33  
  34  uid=$1
  35  if [ -z "$2" ]; then
  36      pass=$(ldapsearch -xLLL uid=$uid} gecos | grep "^gecos: " | sed -e "s/^gecos: //" | cut -d "," -f2)
  37  
  38      if [ -z "$pass}" ]; then
  39          echo -e "$COLERREUR}ERREUR: Le gecos n'a pas ete trouve pour cet utilisateur ou la date de naissance n'y est pas."
  40          echo -e "$COLTXT}"
  41          exit
  42      fi
  43  else
  44      pass=$2
  45  fi
  46  
  47  test1=$(ldapsearch -xLLL -D uid=$uid},ou=People,$BASEDN -w $pass} uid=$uid} >/dev/null 2>&1)
  48  if [ "$?" = "0" ]; then
  49      echo -e "$COLTXT}Le couple compte/mot de passe $COLINFO}$uid}$COLTXT}/$COLINFO}$pass}$COLTXT} est correct pour Linux/Ldap (acces web)."
  50  else
  51      echo -e "$COLERREUR}Le couple compte/mot de passe $COLINFO}$uid}$COLERREUR}/$COLINFO}$pass}$COLERREUR} n'est pas correct pour Linux/Ldap (acces web)."
  52  fi
  53  
  54  test2=$(smbclient -L 127.0.0.1 -U $uid}%$pass} >/dev/null 2>&1)
  55  if [ "$?" = "0" ]; then
  56      echo -e "$COLTXT}Le couple compte/mot de passe $COLINFO}$uid}$COLTXT}/$COLINFO}$pass}$COLTXT} est correct pour Samba/Window$."
  57  else
  58      echo -e "$COLERREUR}Le couple compte/mot de passe $COLINFO}$uid}$COLERREUR}/$COLINFO}$pass}$COLERREUR} n'est pas correct pour Samba/Window$."
  59  fi
  60  echo -e "$COLTXT}"


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1