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
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:
Si os interesa el scripting en bash:
http://steve-parker.org/sh/sh.shtml
Publicar un comentario