jueves, 30 de septiembre de 2010

Script alta usuarios FTP

Hoy toca scripting con bash, se que no soy crack en esto pero la cosa es que sabiendo un poquito te ayuda bastante con la administración.
yo le he llamado: /root/scripts/alta_usuarios_ftp.sh

#!/bin/bash
GRUPO_USUARIOS=Ftp-Users
SHELL_FTP=/bin/bash
DIR_RAIZ=/ftp/privado
USUARIOFTP=" "
CLAVE_USUARIOFTP=" "
COMENTARIO=" "
DIR_NUEVO=" "
URL_FTP="ftp.midominio.com"


echo -----------------------------------------------------
echo Introduzca un nombre de usuario ftp
read USUARIOFTP
echo $USUARIOFTP

echo -----------------------------------------------------
echo Introduzca una clave para el usuario ftp
read CLAVE_USUARIOFTP
echo $CLAVE_USUARIOFTP

echo -----------------------------------------------------
echo Introduzca un comentario acerca del usuario
read COMENTARIO
echo $COMENTARIO

echo -----------------------------------------------------
echo Introduzca el nuevo subdirectorio dentro de $DIR_RAIZ
read DIR_NUEVO
echo $DIR_NUEVO


echo Validacion...

if [ -d "$DIR_RAIZ/$DIR_NUEVO" ];then
        echo ERROR#1: Disculpe, el directorio $DIR_RAIZ/$DIR_NUEVO ya existe
else
        adduser -g $GRUPO_USUARIOS -d  $DIR_RAIZ/$DIR_NUEVO -s $SHELL_FTP -c "$COMENTARIO" -p $CLAVE_USUARIOFTP  $USUARIOFTP &>/dev/null
        OUT_CMD_ADDUSER=$?
        if [ $OUT_CMD_ADDUSER -eq 9 ]; then
                echo "ERROR#2: Disculpe el usuario:$USUARIOFTP ya existe."
                echo DEBUG $CMD_ADDUSER
        else
                if [ $OUT_CMD_ADDUSER -eq 0 ]; then
                        mkdir $DIR_RAIZ/$DIR_NUEVO &>/dev/null
                        chown $USUARIOFTP:$GRUPO_USUARIOS $DIR_RAIZ/$DIR_NUEVO
                        chmod -c 755 $DIR_RAIZ/$DIR_NUEVO
                        echo Directorio $DIR_RAIZ/$DIR_NUEVO creado
                        ls -lh $DIR_RAIZ | grep $DIR_NUEVO
                        echo $CLAVE_USUARIOFTP | passwd --stdin $USUARIOFTP
                        echo Usuario creado accedera mediante el siguiente enlace:
                        echo ftp://$USUARIOFTP:$CLAVE_USUARIOFTP@$URL_FTP/
                        echo SERVIDOR: $URL_FTP
                        echo USUARIO: $USUARIOFTP
                        echo CLAVE: $CLAVE_USUARIOFTP
                        #cat /etc/passwd |cut -d: -f1 | grep $USUARIOFTP
                else
                        echo DIR_RAIZ: $DIR_RAIZ
                        echo DIR_NUEVO: $DIR_NUEVO
                        echo USUARIO_FTP: $USUARIOFTP
                        echo GRUPO_USUARIOS: $GRUPO_USUARIOS
                        echo ERROR# Hubo un error desconocido
                        echo Devolvio $OUT_CMD_ADDUSER
                fi;
        fi
fi

1 comentario:

spysnooper dijo...

Si os interesa el scripting en bash:

http://steve-parker.org/sh/sh.shtml