Automatización de Cuentas

d
Autor: Soal
Correo: garcia.robertogarcia@gmail.com
Descripción: Este script nos ayuda en la automatización de creación de cuentas, toma los datos de un archivo de texto, y los pasa como parámetros a comandos como usermod y adduser.nombre:jason pass:$%fds%598.
##################################################################################
#
#   Copyright (C) 2011  GNUino Systems.
#
#    This program is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.
#
#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see .
#
##################################################################################

#!/bin/bash
#ESTE SCRIPT NOS AYUDA A LA AUTOMATIZACION DE LAS CUENTAS APARTIR DEL ARCHIVO peticiones.txt

if [ -d /administracion/log/creacionCuenta/ ];then
echo""
else
mkdir /administracion/log/creacionCuenta/
fi

if [ -e ruta_del_Archivo_donde_estan_los_datos ]; then
#COMPROBAMOS QUE EL ARCHIVO EXISTA

  pass=$(cat ruta_del_Archivo_donde_estan_los_datos  |awk -F : '{print $4}')#Esta es la poscion del pass el cuarto campo despues de :
  usuarios=$(cat ruta_del_Archivo_donde_estan_los_datos  |awk -F : '{print $6}')#Esta es la poscion del usuario el sexto campo despues de :
  #CON EL USO DE AWK SELECCIONAMOS LOS CAMPOS QUE CORRESPONDEN A EL PASSWORD Y USUARIO EN EL ARCHIVO peticiones.txt

  cat ruta_del_Archivo_donde_estan_los_datos  >> ruta_donde_se_desea_respaldar
  echo "$(date '+%m %d %Y- %H:%M') FECHA Y HORA DE REGISTRO DEL USUARIO" >> ruta_donde_se_desea_respaldar
  #GUARDAMOS EN UN LOG LOS DATOS COMPLETOS DEL USUARIO CON LA HORA EN QUE SE REGISTRO LA CUENTA

    for user in ${usuarios}; do 
      echo $user >> ruta_de_log_donde_se_guardan_solo_los_nombres_de_usuarios
      #GUARDAMOS EL NOMBRE DE USUARIO EN EL ARCHIVO usuarios_en_altas.txt

      useradd  --home /home/${user} -m -s /bin/bash ${user} 2 ruta_del_Archivo_donde_estan_los_datos
      #BORRAMOS EL ARCHIVO peticiones.txt 

    done
    done
  else
   echo "$(date '+%m %d %Y- %H:%M') No existe el archivo " >> direccion_de_log_de_errores
   #DE NO EXISTIR EL ARCHIVO MOSTRARA UN ERROR GUARDARA EL REPORTE EN UN LOG
fi

#CONCLUYE EL SCRIPT

0 comentarios: