Skript für SMS- Trafficüberwachung

Rund um die Sicherheit des Systems und die Applikationen
vratislav
Posts: 118
Joined: 2002-05-05 12:05
 

Skript für SMS- Trafficüberwachung

Post by vratislav »

Hallo,

vor kurzem hatte ich mein Traffic->Email->SMS Skript ja schon mal vorgestelllt: http://www.rootforum.org/forum/viewtopi ... highlight=

Ich habe es nun nochmal gründlichst überarbeitet und um ein paar Möglichkeiten ergänzt. Vorraussetzung ist eine funktionierende
iam Installation.

Als E-Mail-> SMS Gateway nutze ich den kostenpflichtigen (aber sehr günstigen) Dienst von Uboot.com. Es sollte aber auch bei eplus-online, etc.. gehen.

Code: Select all

#!/bin/bash

ADAY='14' # Abrechungstag bei Puretec
DATEI='/tmp/panik.trf'; #zum Zwischenspeichern
PANIK_TRAFFIC=500;   #Trafficlimit für eine Stunde in MB
MAX_TRAFFIC=50000;  # Gesamtlimit in MB
EMAIL='xxxx@uboot.com'; #Benachrichtigungsadresse

YM_DAY=`date '+%d'`
HOUR=`date '+%I'`
if [ $YM_DAY -lt $ADAY ]
then
YM_CURRENT=`date --date='1 month ago' '+%Y%m'`$ADAY
else
YM_CURRENT=`date '+%Y%m'`$ADAY
fi
OLD_TRAFFIC=`tail $DATEI`;
TRAFFIC=`/usr/local/iam/iam --from-date=$YM_CURRENT -r /usr/local/iam/dump | grep internet |  perl -ne '@option = split (" ","$_"); print $option[1];'`
echo $TRAFFIC > $DATEI
#Morgens und Abends eine Info über den Trafficstand 'Ich lebe noch'
if [ $HOUR == 10 ] 
then
echo $TRAFFIC." MB" | mail  -s traffic $EMAIL
fi
TRAFFIC_VERBRAUCH=`bc<<Ende
$TRAFFIC-$OLD_TRAFFIC
Ende`;
TRAFFIC_VERBRAUCH=`printf "%.0f" $TRAFFIC_VERBRAUCH`
TRAFFIC=`printf "%.0f" $TRAFFIC`
# Ist innerhalb einer Stunde mehr verbraucht als im Limit melde Dich!
if [ $TRAFFIC_VERBRAUCH -gt $PANIK_TRAFFIC ]
then
echo "ACHTUNG ! "$TRAFFIC_VERBRAUCH" MB verbraucht." | mail  -s Panik $EMAIL
fi
# Ist Inclusivtraffic verbraucht, melde Dich!
if [ $TRAFFIC -gt $MAX_TRAFFIC ]
then
echo "ACHTUNG ! Maximales Trafficlimit abgelaufen." | mail  -s Panik $EMAIL
fi
Die Datei ausführbar machen und in Cron einbinden
2 * * * * /var/backup/traffic >/dev/null

Nach dem Muster könnte man auch die Abschaltung einzelner Dienste steuern (z.B. bei 55000 MB den FTPd ...).

Hinweise zu diesem Skript sind willkommen ....

Björn
kaizan
Posts: 33
Joined: 2002-07-19 17:32
 

Re: Skript für SMS- Trafficüberwachung

Post by kaizan »

Kann mal einer etwas zu dem Script sagen...

Danke!
vratislav
Posts: 118
Joined: 2002-05-05 12:05
 

Re: Skript für SMS- Trafficüberwachung

Post by vratislav »

Hallo,

was willst du hören :wink:


Wenn du iam und dieses Skript installiert hast, kannst du folgendes erreichen.

1. Zweimal täglich ein 'Hallo ich lebe noch' mit aktuellem Trafficverbrauch seit letztem Abrechnungstag.

2. Warnung wenn in einer Stunde mehr Traffic als X verbraucht wurde (ich denke da an Hacker die dinge auf den FTP-Server hochladen).

3. Warnung wenn Freitraffic aufgebraucht wurde.

Das Skript verschickt Mails, welche über eine E-Mail-> SMS Gate das Handy erreichen.

Ich finde es beruhigend wenn mindestens zwei mal am Tag zur bestimmten Zeit eine SMS vom Server kommt. :P

Weiterhin könnte man bei bestimmten Trafficvolumen bestimmte Dienste abschalten (z.B. FTP).

Björn
blackforest2001
Posts: 20
Joined: 2002-09-29 11:44
 

Re: Skript für SMS- Trafficüberwachung

Post by blackforest2001 »

Hi

Könnte einer mir sagen ob es mit diesem Script möglich wäre, das man den Server bei mehr als 50 Gb Traffic einfach auf shutdown -h now setzt?
Das wäre zwar radikal aber doch bei Angriffen das beste?

Reanimieren läßt sich der Server dann ja doch mittels Rescue-System von 1&1?

WIE genau muss also diese Zeile in dem Script WO eingebaut werden?
...ich kenne mich da nicht so gut aus und will nicht rumexperimentieren..

THX!
darkspirit
Posts: 553
Joined: 2002-10-05 16:39
Location: D'dorf
 

Re: Skript für SMS- Trafficüberwachung

Post by darkspirit »

Naja... wie du schon sagst, das is ein bißchen arg radikal.. es würde auch reichen, einfach die Dienste zu beenden, die für den Traffic verantwortlich sind. Also den Apache das Kriegsbeil begraben lassen, evtl. ftp dichtmachen.. das dürfte genügen ;)
blackforest2001
Posts: 20
Joined: 2002-09-29 11:44
 

Re: Skript für SMS- Trafficüberwachung

Post by blackforest2001 »

Hi

Ja, wäre radikal, aber was bringts mir, wenn ich den Apache kille, wenn einer mir den Server gehackt hat...

Wie müsste BITTE nun die Zeile für einen Shutdown oder, intressehalber für stop des Apaches genau aussehen?

THX!
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09
 

Re: Skript für SMS- Trafficüberwachung

Post by majortermi »

Blackforest2001 wrote:Ja, wäre radikal, aber was bringts mir, wenn ich den Apache kille, wenn einer mir den Server gehackt hat...
Was bringt dir so ein Skript, wenn jemand deinen Server gehackt hat?
Das ist doch ganz schnell entfernt...
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
rootmaster
Posts: 483
Joined: 2002-04-28 13:30
Location: Hannover
 

Re: Skript für SMS- Trafficüberwachung

Post by rootmaster »

MajorTermi wrote: Was bringt dir so ein Skript, wenn jemand deinen Server gehackt hat?
Das ist doch ganz schnell entfernt...
so isses 8)

wenn du feststellst, dass dein server gehackt wurde, solltest du ihn erstmal im rescue-modus booten (nachdem er ggfs. auf backdoors gechecked wurde ;))

"back to the roots"
Cahn's Axiom:

When all else fails, read the instructions
vratislav
Posts: 118
Joined: 2002-05-05 12:05
 

Re: Skript für SMS- Trafficüberwachung

Post by vratislav »

Hallo,
Blackforest2001 wrote: den Server bei mehr als 50 Gb Traffic einfach auf shutdown -h now setzt?
Das wäre zwar radikal aber doch bei Angriffen das beste?

Code: Select all

if [ $TRAFFIC -gt $MAX_TRAFFIC ] 
then 
echo "ACHTUNG ! Maximales Trafficlimit abgelaufen. Server Shutdown" | mail  -s Panik $EMAIL 
shutdown -h now
fi 
Das müsste eigentlich gehen. Ich möchte es nicht testen ;-) Du kannst ja einfach das Maximale Limit testweise runtersetzten.
MajorTermi wrote: Was bringt dir so ein Skript, wenn jemand deinen Server gehackt hat?
Das ist doch ganz schnell entfernt...
Klar, wenn es entfernt wurde - dann hat man von dem Skript nichts 8O .

Eine völlige Sicherheit gibt es meines Erachtens nicht. Ich freu mich, wenn ich meine Chancen aus einem Angriff günstiger bei weg zu kommen steigern kann.

Auch denke ich nicht, daß jeder Hacker gleich gezielt nach solch einem Skript sucht. Und falls das Skript deaktiviert wurde, fehlt mir die Standart-SMS um 10/ 22 Uhr. Dann würde ich auch mal nachschauen.

Auf mich haben die Traffic-Informationen des Skripts per SMS eine beruhigende Wirkung ;-)

Björn
Anonymous
 

Re: Skript für SMS- Trafficüberwachung

Post by Anonymous »

./panik: [: 28: unary operator expected
/usr/local/iam/iam: illegal from-date: 200212
(standard_in) 2: parse error
..habe das script mal installiert
bekomme aber obigen fehler

was mach ich falsch?

(hab den programmcode in der datei "panik" abgelegt)


EDIT:
bekomme doch zweimal täglich eine mail
inhalt:
. MB
mehr nicht...

help :)
Anonymous
 

Re: Skript für SMS- Trafficüberwachung

Post by Anonymous »

kann mir mal bitte einer sagen was man weglassen muss, damit das script funktioniert, aber nicht die zwei SMS täglich schickt?

Habs dass rausgenommen, ging aber nicht:

Code: Select all

#Morgens und Abends eine Info über den Trafficstand 'Ich lebe noch' 
if [ $HOUR == 10 ] 
then 
echo $TRAFFIC." MB" | mail  -s traffic $EMAIL 
fi
mopsy
Posts: 17
Joined: 2002-11-16 00:22
Location: Notzing bei Erding
 

Re: Skript für SMS- Trafficüberwachung

Post by mopsy »

Moin,

ich bekomme beim Aufruf des Scripts auch die Fehlermeldung
./panik: [: 28: unary operator expected
/usr/local/iam/iam: illegal from-date: 200212
(standard_in) 2: parse error
Wer weis eine Lösung ?

Gruß Stephan
vratislav
Posts: 118
Joined: 2002-05-05 12:05
 

Re: Skript für SMS- Trafficüberwachung

Post by vratislav »

Hallo,

bei mir treten keine Fehler auf.

Vermutlich gibt es einen Fehler in der Variable: YM_CURRENT

Ich vermute, daß das Skript nicht 1 zu 1 übernohmen wurde. Vielleicht ist beim Copy und Paste ein

Code: Select all

`
abhandengekommen. (Zeilen mit 'YM_CURRENT=')
Zum Testen könnte man vor 'TRAFFIC=`/usr/....' folgendes einsetzen:

Code: Select all

YM_CURRENT= '20021214'
TRAFFIC=`/usr/local/iam/iam ...........
Dann sollte der Traffic seit dem 14.12.2002 ausgegeben werden.

Wer die täglichen Benachrichtigungen nicht mag, setze statt 10 z.B. 28 ein. Das es 28 Uhr wird, ist eher unwahrscheinlich ;-)

Björn
mopsy
Posts: 17
Joined: 2002-11-16 00:22
Location: Notzing bei Erding
 

Re: Skript für SMS- Trafficüberwachung

Post by mopsy »

Hallo,

bin jetzt das ganze Script nochmal durchgegangen - ist fehlerlos drin.
YM_CURRENT= '20021214'
Wenn ich das Eintrage und das Script starte kommt folgendes

pxxxxxxxx:/etc/chk # ./panic.sh
./panic.sh: 20021214: command not found
/usr/local/iam/iam: illegal from-date: 2003016
(standard_in) 2: parse error

Ich mach das schon richtig so oder ? :?

Gruß, Stephan
kase
Posts: 1031
Joined: 2002-10-14 22:56
 

Re: Skript für SMS- Trafficüberwachung

Post by kase »

es sieht mir so aus, als wäre da nach dem = ein Leerzeichen, dann dürfte dieser Fehler kommen...
mopsy
Posts: 17
Joined: 2002-11-16 00:22
Location: Notzing bei Erding
 

Re: Skript für SMS- Trafficüberwachung

Post by mopsy »

Also irgendwo ist da der Wurm drin :?
es sieht mir so aus, als wäre da nach dem = ein Leerzeichen
bewirkt wenig veränderung:

pxxxxxxxxx:/etc/chk # ./panic.sh
./panic.sh: printf: 508.6: invalid number
./panic.sh: [: -gt: unary operator expected

also am Leerzeichen liegt's wohl nicht :(
kase
Posts: 1031
Joined: 2002-10-14 22:56
 

Re: Skript für SMS- Trafficüberwachung

Post by kase »

doch, nach deinen Fehlermeldungen wurde zumindest 1 Fehler behoben, der durch das Leerzeichen entstanden ist...

pxxxxxxxx:/etc/chk # ./panic.sh
./panic.sh: 20021214: command not found
/usr/local/iam/iam: illegal from-date: 2003016
(standard_in) 2: parse error

Ich glaube ehrlich gesagt, du sollest einfach mal ein bißchen Copy & Paste üben... Notfalls klick da wo das Script steht auf Zitat, und kopierst es dann aus dem Textfeld raus
mopsy
Posts: 17
Joined: 2002-11-16 00:22
Location: Notzing bei Erding
 

Re: Skript für SMS- Trafficüberwachung

Post by mopsy »

Ich glaube ehrlich gesagt, du sollest einfach mal ein bißchen Copy & Paste üben
Also das führt jetzt schon a biserl weit, wenn Du das Posting von vratislav ansehen würdest dann springt einen doch das Leerzeichen geradezu an - soviel zum Thema Copy & Paste. ...aber egal

Das Script bin ich jetzt schon ein paarmal durchgegangen und es ist identisch mit dem ersten Posting von vratislav. Es sind alle ' wo sie sein sollten und auch keine zusätzlichen Leerzeichen.
kase
Posts: 1031
Joined: 2002-10-14 22:56
 

Re: Skript für SMS- Trafficüberwachung

Post by kase »

http://www.rootforum.org/forum/posting. ... te&p=25368

geh mal da hin und kopier dir dort das Script mal raus, bei ihm ist dort KEIN Leerzeichen, dort ist nur ein ` und kein ', wodurch vielleicht der Eindruck entstanden ist.
mopsy
Posts: 17
Joined: 2002-11-16 00:22
Location: Notzing bei Erding
 

Re: Skript für SMS- Trafficüberwachung

Post by mopsy »

Leider auch kein Erfolg:

./panic.sh: printf: 519.3: invalid number
./panic.sh: [: -gt: unary operator expected

Kann doch nicht sein, das es nur bei mir nicht läuft :evil:
Das ist doch eigentlich nichts wo man viel falsch machen könnte.
crocodoc
Posts: 27
Joined: 2002-10-07 14:29
Location: Rehau
 

Re: Skript für SMS- Trafficüberwachung

Post by crocodoc »

Ohne das ich jetzt unken will...aber bei mir geht auch nichts:
p15107338:~ # ./traffic
bash: ./traffic: bad interpreter: No such file or directory
p15107338:~ #
Rechte sind für root:root auf 777.

Jemand eine Idee?
crocodoc
Posts: 27
Joined: 2002-10-07 14:29
Location: Rehau
 

Re: Skript für SMS- Trafficüberwachung

Post by crocodoc »

Hat sich erledigt.

:oops:
mopsy
Posts: 17
Joined: 2002-11-16 00:22
Location: Notzing bei Erding
 

Re: Skript für SMS- Trafficüberwachung

Post by mopsy »

Moin,

nachdem ich ja anscheinend nicht in der Lage bin ein Script zu kopieren und zum laufen zu bekommen, wäre es schön wenn mir das jemand mailen könnte. :oops:

Gruß, Stephan
ghaslbe
Posts: 12
Joined: 2002-08-30 12:05
Location: Minga
 

Re: Skript für SMS- Trafficüberwachung

Post by ghaslbe »

zu den ganzen
./panik: [: 28: unary operator expected
/usr/local/iam/iam: illegal from-date: xxxxx
(standard_in) 2: parse error
postings... kanns sein, das iht beim abrechnungstag einfachs statt 03 für den dritten des monats nur 3 also ohne 0 eingegeben habt?

kanns sein?

War nämlich mein Fehler zuerst..

aber ich hab da auch ne Frage:
Woher wisst ihr eigentlich den Abrechnungstag? Muss ich da auf die erste Rechnung warten?
crocodoc
Posts: 27
Joined: 2002-10-07 14:29
Location: Rehau
 

Re: Skript für SMS- Trafficüberwachung

Post by crocodoc »

Hallo,
Woher wisst ihr eigentlich den Abrechnungstag? Muss ich da auf die erste Rechnung warten?
Hab einfach eine mail an den support geschrieben.