SirGod Posted April 29, 2014 Report Posted April 29, 2014 Este un mic ghid pentru a evita sau a afla cine incearca sa ne faca glume proaste, sau pentru a ne ajuta sa identificam un "intrus". Este facut si testat pe Ubuntu 14.04, cel mai probabil variaza de la distributie la distributie, dar se rezolva din configurare.1. Instalam streamer pentru a captura poza. Puteti folosi si altceva: ffmpeg, mplayer etc.sudo apt-get install streamer2. Instalam mutt pentru a trimite mail cu atasament:sudo apt-get install mutt3. Gasim camera pe care vrem sa o folosim. De obicei este video0 (in special in cazul laptopurilor, fiind incorporata):ls /dev | grep video4. Acum avem doua fisiere: config.cfg si script.sh. >>> config.cfg # The string to look forstringName = unix_chkpwd# The file to look intologFile = /var/log/auth.log# The device addressdeviceAddress = /dev/video0# Screenshot save locationsaveLocation = /home/path# E-mail addressemailAddress = yourmail@gmail.com# Body textbodyText =/home/path/message.txt>>> script.sh#!/bin/bash# CONFIGURATION FILE_NO_FILE=/tmp/file_netFILE_NO=1STRING=`cat config.cfg | grep stringName | cut -d'=' -f 2`DEVICE=`cat config.cfg | grep deviceAddress | cut -d'=' -f 2`LOGFILE=`cat config.cfg | grep logFile | cut -d'=' -f 2`LOCATION=`cat config.cfg | grep saveLocation | cut -d'=' -f 2`EMAIL=`cat config.cfg | grep emailAddress | cut -d'=' -f 2`BODY=`cat config.cfg | grep bodyText | cut -d'=' -f 2`#DO ITwhile : do if grep $STRING $LOGFILE then # CHECK FILE NUMBER if [ -f $FILE_NO_FILE ]; then FILE_NO=`cat $FILE_NO_FILE` fi let FILE_NO=FILE_NO+1 echo $FILE_NO > $FILE_NO_FILE streamer -c $DEVICE -b 16 -o $LOCATION/file_$FILE_NO.jpeg mutt -s "Photo for failed login attempt!" $EMAIL -a $LOCATION/file_$FILE_NO.jpeg < $BODY cat /dev/null > /var/log/auth.log sleep 1 # SECONDS fidoneAcum sa vedem ce si cum:>>> config.cfgstringName tine un string care este scris in log-ul de autentificare (in cazul Ubuntu) in momentul in care exista un failed login attempt.logFile este log-ul unde cautam stringul.deviceAddress este locatia camerei web cu care facem poza.saveLocation este locatia unde vrem sa salvam pozele.emailAddress este adresa de mail la care sa trimita poza.bodyText este body-ul mail-ului.>>> script.shFILE_NO_FILE este un fisier unde stocam un numar pe care il adaugam la sfarsitul pozei pentru a nu rescrie poza. FILE_NO este variabila unde tinem numarul initial.STRING, LOGFILE, LOCATION, DEVICE, BODY si EMAIL sunt variabilele in care stocam datele scrise in fisierul de configurare.Putem totul intr-un loop infinit pentru a ne asigura ca ruleaza permanent. Mai departe, verificam daca FILE_NO_FILE exista, apoi incrementam numarul. Daca string-ul este gasit in log, comanda pentru captura poza este executata si mail-ul este trimis catre noi. Am adaugat si un timeout de 1 secunda intre executii pentru a evita alte situatii. Ulterior golim logul. 5. Executarea scriptuluiPentru a evita terminarea executiei in momentul in care se face log off/lock, vom rula scriptul cu nohup:sudo nohup ./script.sh &Acum asteptati "intrusi". Se poate adauga la startup daca aveti nevoie. Cu siguranta exista si variante mai bune, le astept. 2 Quote
Eric Posted May 6, 2014 Report Posted May 6, 2014 De aia trebuie sa ai un scoci lipit pe camera web in permanenta ! Quote
SirGod Posted May 6, 2014 Author Report Posted May 6, 2014 Eu asa am ))Se mai deschidea camera cand voia ea, dintr-o data Sa nu se deschida cand vor altii, atunci e mai rau. ) Quote