Strona 1 z 1

[+] bash - czasowa zmiana hasła użytkownika

: 25 stycznia 2011, 09:22
autor: redelek
Witam,

Napisałem sobie skrypt który zmienia raz na tydzień hasło użytkownikowi ftp2 i wysyła nowe hasło na e-mail. Problem w tym, że jak skrypt uruchomię ręcznie to działa bez problemu. Niestety jak dodam go do crontab to skrypt wykonuje się 17 razy.
Nie mam pojęcia dlaczego tak się dzieje i co jest nie tak. Będę bardzo zobowiązany za informację lub wskazówki.

CRONTAB

Kod: Zaznacz cały

* 23 * * 1 /root/skrypty/zmiana_hasla.sh
Skrypt

Kod: Zaznacz cały

## FUNKCJA GENERUJACA LOSOWE HASLO ##
function mkpass() {
DLUGOSC=10 # ustawiamy dlugosc generowanych hasel
TABELA1=( q w e r t y u i o p a s d f g h j k l z x c v b n m
Q W E R T Y U I O P A S D F G H J K L Z X C V B N M
1 2 3 4 5 6 7 8 9 0 \@ \# \$ \% \& \* \( \) \_ \- \= \+  \? \< \>
)
MODNUM=${#TABELA1
[*]}
LICZNIK=0
while [ ${LICZNIK:=0} -lt $DLUGOSC ]
do
    NUMER=$(($RANDOM%$MODNUM))
    PASS="$PASS""${TABELA1[$NUMER]}"
     ((LICZNIK++))
done
  echo $PASS
}

# ZMIENNE
USR=ftp2
HASLO=`mkpass`
EMAIL="[email protected]"
/usr/sbin/chpasswd <<KONIEC
$USR:$HASLO
KONIEC
echo "######Changing password for user  ####################
        Changing the password for the user $USR successfully !
                The new password is $HASLO " | mail -s "Changing password for user $USR" $EMAIL
Dzięki Redelek

: 25 stycznia 2011, 12:33
autor: mariaczi
redelek pisze: CRONTAB

Kod: Zaznacz cały

* 23 * * 1 /root/skrypty/zmiana_hasla.sh
Zmień na

Kod: Zaznacz cały

59 23 * * 1 /root/skrypty/zmiana_hasla.sh
i zobacz jaki będzie efekt.
Napisz jeszcze dokładnie, w którym miejscu konfiguracji crontaba dodałeś wpis: w /etc czy crontab -e?

: 25 stycznia 2011, 13:32
autor: redelek
Dziękuję, zadziałało. Standardowo wprowadzam przez:

Kod: Zaznacz cały

crontab -e
Ciekawe, bo na innym serwerze działa właśnie w takiej konfiguracji, a tu nie. Różnica taka, że tamten to Ubuntu, a ten z którym był problem to Debian 5.0. No nic, dziękuję, ważne, że działa.

: 25 stycznia 2011, 19:47
autor: lessmian2
Jeśli działa to poprawnie (uruchamia się tylko raz) w takiej konfiguracji jak podałeś w pierwszym poście, to jestem szczerze zdziwiony ;)

: 25 stycznia 2011, 20:49
autor: pyrion
Do generowania hasła możesz wykorzystać pwgen.