#!/bin/sh
#######################################
# Script desenvolvido por Gilberto Villani Brito ([email protected]) e
# Salustiano Ribeiro Neto/Packard ([email protected]).
# Nenhum direito autoral reservado, por isso usem e auterem a vontade,
#pois
# estamos em um pais literalmente livre (hahahahahah......).
########################################
# Configuracoes das variaveis do script.
# htpasswd
CRYPTO=/usr/bin/htpasswd
# passwd.ftp
PASSWD=/etc/passwd.ftp
# passwd.tmp
PASSWDTEMP=/tmp/passwd.tmp
# home
HOME=/var/www/html
# Script para a alteracao de senha dos usuarios de ftp.
# Dados do usuario.
while [ "$RESP" != "s" ] && [ "$RESP" != "S" ]; do
clear
printf " Nome de Login do usuario []: "
read LOGIN
while [ -z $LOGIN ] || [ "$(grep -c /$LOGIN: $PASSWD)" = "0" ]; do
clear
printf "Usuario nao existe ou em branco!!! "
printf " Nome de Login do usuario []: "
read LOGIN
done
clear
printf "####### Dados do usuario. ###### "
printf "Login: $LOGIN "
printf "Nome: $(grep /$LOGIN: /etc/passwd.ftp | cut -d : -f 5) "
printf "Diretorio: $HOME/$LOGIN "
printf "##### =====|////===== ##### "
printf "==>>ATENCAO, a senha do usuario sera pagada!!!<<== "
printf "Confirma os Dados?? [s/n]: "
read RESP
done
# retira o usuario do passwd
grep -v "/$LOGIN:" $PASSWD > $PASSWDTEMP
cat $PASSWDTEMP > $PASSWD
# Limpa o passwd.tmp
> $PASSWDTEMP
# senha para o usuario
while [ "$(cat $PASSWDTEMP)" = "" ]; do
$CRYPTO $PASSWDTEMP $LOGIN
done
# coloca o usuario com a nova senha
SENHA=$(cat $PASSWDTEMP)
echo "$SENHA:91:91:$NOME:$HOME/$LOGIN:/sbin/nologin" >> $PASSWD