Page 1 of 1

Internetverbindungen speichern

Posted: 2012-08-30 23:51
by UbuntuUser
Also Freunde, ich habe einen Server und Angst, dass er gehackt werden könnte. Deshalb wollte ich alle Prozesse, die eine Internetverbindung herstellen, speichern/protokollieren und einmal am Tag eine Übersicht an eine EMail-Adresse schicken lassen. Ist das so ohne Weiteres möglich (z.B. mit einem bash script)? :-? Vielen Dank im Voraus

Re: Internetverbindungen speichern

Posted: 2012-08-31 00:02
by Joe User
Auf einem Server besteht die Internetverbindung permanent, die muss nicht ständig wiederhergestellt werden. Daher ist Dein Vorhaben ziemlich sinnfrei.
Was Du tun kannst, ist, die erzeugten Sockets für INET und INET6 zu protokollieren. Allerdings ist das ebenfalls nicht wirklich sinnvoll, da dieses Log ganz schnell in die Gigabytes gehen kann.

Am Sinnvollsten ist, den Server, die Dienste und die Apps uptodate zu halten und vernünftig zu konfigurieren.

Re: Internetverbindungen speichern

Posted: 2012-08-31 00:58
by ddm3ve
Ganz kurz un Simpel gesagt, schalte eine Firewall dazwischen.
Ein TCP Dump muss es ja nun nicht sein aber Snort sollte schon ausreichen um potentiell Angriffe zu erkennen.

Es sollte nur eine dedizierte eigenständige Firewall sein und keine "Software" Firewall.

Re: Internetverbindungen speichern

Posted: 2012-09-03 09:31
by daemotron
Na ja, mit Bordmitteln lässt sich da auch schon was machen. Per MAC/RBAC kann man schon eine Menge erreichen. Auf einem Standard-LAMP etwa könnte man per RBAC generell INET/INET6-Sockets verbieten, Apache auf passive INET/INET6 Sockets beschränken (Host name resolution ist normalerweise nicht nötig), und den Mailserver auf passive und aktive INET/INET6-Sockets (der muss ja Mails auch ausliefern können). Andere Dienste wie Syslog, MySQL etc. brauchen keine INET/INET6-Sockets, falls alles auf einer Maschine liegt.

Wenn man dann ein Policy-Log aufsetzt (hängt vom eingesetzten MAC/RBAC-Framework ab), bekommt man einen recht guten Überblick, wo und welche Prozesse versuchen, INET Sockets zu erstellen, die nicht per Policy freigegeben sind.

Dieses Vorgehen ist aber bestenfalls Stufe 2 in einem Sicherheitskonzept - Stufe 1 sollte sein, durch sorgfältige Auswahl, regelmäßige Aktualisierung und entsprechende Audits dafür zu sorgen, dass auf dem Server nur vertrauenswürdige Software vorhanden ist.

Ach ja - und Stufe 0 wäre das genaue Verständnis, wie die Software genau arbeitet (wie z. B. Multiplexing umgesetzt ist, welche Socket-Typen wofür benötigt werden, etc.), damit man Risiken einschätzen kann und abnormes Verhalten auch sofort erkennt.

Re: Internetverbindungen speichern

Posted: 2012-09-07 16:07
by ddm3ve
Btw. beim durchforsten eines Altservers sind mir ein paar Zeilen Code in die Finger gerutscht welche Dir ggf. bei Deiner Anfordrung helfen könnten.

Code: Select all

#!/bin/sh
TMPFILE=/lsof.tmp
if [ ! -f $TMPFILE ] ; then
   touch $TMPFILE
fi

i=0;
while [ $i -lt 200000 ] ; do

  lsof -n |grep TCP | grep -v LISTEN | while read zeile; do
  CURRLINE=`echo $zeile |sed -e "s/.*TCP //g"`
  HISTLINE=`sed -n "/$CURRLINE/ p" $TMPFILE`;
  if [ "$HISTLINE" != "$CURRLINE" ] ; then
    echo $CURRLINE >> $TMPFILE;
    echo "new connection found";
  fi
  done
  i=`expr $i + 1`
  echo $i
  sleep 5
done
exit