#!/bin/bash SECRETKEY='' PHONENUM='' PATH_UNLOCK_FILE="/tmp/gammu_unlock_file" DATE=`date --date="2 minute ago" +'%Y-%m-%d %H:%M:%S'` OTP=`oathtool -w 4 --now="$DATE" --totp -b $SECRETKEY` OTPFROMCLIENT=`echo $SMS_1_TEXT | awk '{print $NF}'` CMD=`echo $SMS_1_TEXT | awk '{print tolower($1)}'`` MATCH=`echo $OTP | grep $OTPFROMCLIENT` UNLOCKDATE=`cat $PATH_UNLOCK_FILE` CURRENTDATE=`date +%s` DIFFDATE=$(($CURRENTDATE-$UNLOCKDATE)) if [[ "$DIFFDATE" -lt "1800" ]];then TEXT=`echo $SMS_1_TEXT | awk 'BEGIN {ORS=" "} {for (i=2; i<=NF; i++) print $i " "}'` else TEXT=`echo $SMS_1_TEXT | awk 'BEGIN {ORS=" "} {for (i=2; i $PATH_UNLOCK_FILE REPLY="Système débloqué pour 30 min" ;; lock) echo "0" > $PATH_UNLOCK_FILE REPLY="Système re-verouillé" ;; reboot) ssh root@"$TEXT" 'sudo reboot' REPLY="Signal reboot envoyé" ;; cmd) HOST=`echo $TEXT | awk '{print $1}'` COMMAND=`echo $TEXT | awk 'BEGIN {ORS=" "} {for (i=2; i<=NF; i++) print $i " "}'` REPLY=`ssh -oStrictHostKeyChecking=no root@$HOST $COMMAND` ;; pxy) PHONENUM=`echo $TEXT | awk '{print $1}'` REPLY=`echo $TEXT | awk 'BEGIN {ORS=" "} {for (i=2; i<=NF; i++) print $i " "}'` ;; *) REPLY="Commande inconnu" ;; esac else REPLY="Mauvais OTP" fi else REPLY="FROM: $SMS_1_NUMBER TEXT: $SMS_1_TEXT" fi /usr/bin/sudo /usr/bin/gammu-smsd-inject TEXT $PHONENUM -len 999 -textutf8 "$REPLY" echo "[$DATE] $PHONENUM - $REPLY" >> /var/log/gammu_receive.log