PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : snort automatisch starten



Seiten : [1] 2 3

CEROG
18.11.02, 21:10
Hallo zusammen,

ich möchte snort als Teil meiner firewall einsetzen (Zusätzlich zum Paketfilter). Dabei soll snort ppp0 überwachen, was durch den Paketfilter durchkommt und nicht erwünscht ist.

Leider wird snort beim Booten wieder beendet, da ppp0 dort noch nicht aktiviert wird. Deshalb möchte ich snort beim einwählen automatisch starten. Mein Versuch, snort mit dem script "ip-up" zu starten schlug leider fehl.

Wie kann ich snort trotzdem automatisch starten?

Ich benutze SuSE8.0. Zum Einwählen verwende ich wvdial.

Viele Grüße,
CEROG

tomes
18.11.02, 22:03
Eigendlich sollte folgendes reichen:
in die /etc/ppp/ip-up.local folgendes rein --> /etc/(rc.d/)init.d/snortd start
Und das ganz am Ende direkt vor dem EXIT

T;o)Mes

P.S.: Uebrigens haben wir gerade im anderen snort Thread n Loesung gefunden ;)

HangLoose
18.11.02, 22:37
hi

entweder du nimmst die lösung von tomes oder du änderst einfach die startreihenfolge.

ich denke mal du hast snort von den suse cd's installiert. suse legt das startscript von snort, wie du schon gemerkt hast, vor den smpppd. warum auch immer. du kannst jetzt einfach die nummer des startscripts ändern.

bsp:

/etc/init.d/rc3.d/S12snort ändern in /etc/init.d/rc3.d/S20snort

nimm einfach die letzte nummer + 1


ps: man hab ich das wieder kompliziert ausgedrückt *grins*


Gruß HangLoose

Harry
19.11.02, 05:32
Hallo,

ab SuSE 8.0 sollten die Links der Startskripte tunlichst nicht von Hand geändert werden.
Die elegantere Lösung besteht aus folgenden Schritten:
1. Im Skript /etc/init.d/snort die Headerzeile "# Required-Start: $network" um den Parameter "smpppd" ergänzen
2. "chkconfig -a snort" ausführen

Die Startlinks für snort werden dann automatisch und korrekt in /etc/init.d/rc?.d/S??snort angelegt.

Harry

HangLoose
19.11.02, 08:53
moin harry


Original geschrieben von Harry
Hallo,

ab SuSE 8.0 sollten die Links der Startskripte tunlichst nicht von Hand geändert werden.


könntest du noch den grund nennen, warum man es nicht per hand machen sollte, funktionieren tut es von hand jedenfalls auch, wobei mir deine lösung auch besser gefällt.


Gruß HangLoose

Harry
19.11.02, 10:34
Hi HangLoose,

das von mir beschriebene Vorgehen ist LSB-konform und verträgt sich besser mit dem Runlevel-Editor im YaST :)

Harry

HangLoose
19.11.02, 11:00
hi

thx harry wieder was gelernt :)

ich hätte bei diesem chkconfig nur bedenken, das er mir von hand geänderte sachen wieder zerschießt. aber damit muß man bei yast wohl immer rechnen.

Gruß HangLoose

CEROG
19.11.02, 20:24
Hallo zusammen,

@tomes:
Die Datei "/etc/ppp/ip-up.local" war leider nicht vorhanden. Ich habe sie mit den Zeilen :
/etc/init.d/snortd start
exit

angelegt und mit den gleichen Rechten wie ip-up versehen. Leider hat das nicht funktioniert.

@HangLoose:

Das Interface ppp0 wird erst beim Einwählen gestartet. Ich glaube deshalb nicht, daß die spätere Ausführung von snort im boot-Prozeß funktioniert.

Ich denke, der Versuch, snort mit ip-up zu starten ist der bessere und werde es weiter in der Richtung versuchen.

Viele Grüße,
CEROG

CEROG
20.11.02, 04:22
Hallo zusammen,

ich habe gerade ins "warnungen"-log geschaut. Dort sind folgende Einträge:

Nov 20 06:05:51 linux ip-up.local: start von snort
Nov 20 06:05:53 linux snort: Initializing daemon mode
Nov 20 06:05:53 linux snort: PID path stat checked out ok, PID path set to /var/run/
Nov 20 06:05:53 linux snort: Writing PID "4292" to file "/var/run//snort_ppp0.pid"
Nov 20 06:05:53 linux kernel: device ppp0 entered promiscuous mode
Nov 20 06:05:53 linux snort: http_decode arguments:
Nov 20 06:05:53 linux snort: FATAL ERROR: ERROR: /etc/snort/snort.conf(176) => Unknown argument to http_decode preprocessor: "-unicode"
Nov 20 06:05:53 linux kernel: device ppp0 left promiscuous mode

Das bedeutet ja wohl, daß snort wegen des fehlerhaften Eintrages wieder beendet wird. Starte ich es aber manuell, so läuft es.

Ich muß also noch einige Arbeit in dei Konfiguration von Snort stecken.

Danke für Eure Hilfe.

Viele Grüße,
CEROG

HangLoose
21.11.02, 10:42
moin moin



Original geschrieben von CEROG
Hallo zusammen,


@HangLoose:

Das Interface ppp0 wird erst beim Einwählen gestartet. Ich glaube deshalb nicht, daß die spätere Ausführung von snort im boot-Prozeß funktioniert.

Ich denke, der Versuch, snort mit ip-up zu starten ist der bessere und werde es weiter in der Richtung versuchen.

Viele Grüße,
CEROG

CEROG du hast völlig recht, das nach hinten schieben von snort im bootprozess, bringt gar nichts.
ist zwar peinlich jetzt für mich :D. aber mir ist das bis jetzt nicht aufgefallen, hab mich nur gewundert, das es so ruhig ist vor meiner firewall :D:D:D.
zu meiner entschuldigung => ich hatte snort teilweise auch per hand gestartet, deshalb waren die logs nicht ganz leer *grins*

naja manchmal ist man schon 'nen haufen blöd ;)

ich hab das prob jetzt auch mit ip-up gelöst.

zu deiner fehlermeldung, hast du an dieser zeile etwas verändert

preprocessor http_decode: 80 -unicode -cginull


Gruß HangLoose

CEROG
21.11.02, 16:42
Hallo HangLoose,

ich habe den Parameter -unicode erstmal rausgenommen.

Wie hast du den automatischen Start von snort via ip-up gelöst.. Ich bin mir noch nicht daüber im klaren, wie der Aufruf aussehen muß.

Viele Grüße,
CEROG

HangLoose
21.11.02, 16:59
hi

meine ip-up sieht folgendermaßen aus

root@linux-server ppp # cat ip-up
#!/bin/sh

# this is a script which is executed after connecting the ppp interface.
# look at man pppd for details

# the followings parameters are available:
# $1 = interface-name
# $2 = tty-device
# $3 = speed
# $4 = local-IP-address
# $5 = remote-IP-address
# $6 = ipparam

/usr/bin/snort -D -u snort -g snort -i ppp0 -c /etc/snort/snort.conf




Gruß HangLoose

CEROG
21.11.02, 18:38
Hallo zusammen,

jetzt läuft's bei mir auch (scheint zumindest so). Ich habe die Datei ip-up.local neu angelegt.

Meine ip-up.local:

#!/bin/sh
/usr/sbin/snort -D -i ppp0 -c /etc/snort/snort.conf
exit 0

Viele Grüße,
CEROG

HangLoose
21.11.02, 18:43
hi

kannst du leicht überprüfen. mach auf einer konsole ein tail -f /var/log/snort/portscan.log und benutze dann mal einen onlineportscanner.


Gruß HangLoose

CEROG
22.11.02, 04:02
Hallo zusammen

ich habe den Aufruf in der ip-up.local von snort noch mal modifiziert. Er lautet jetzt :

/usr/sbin/snort -D -N -i ppp0 -c /etc/snort/snort.conf

Dadurch wird nicht jedesmal ein Log für die empfangenen Paktet erstellt (und gefüllt).

Das ganze läuft jetzt so.

Viele Grüße,

CEROG

Tillit
27.08.03, 23:24
hei

isch krisch gleisch plack..... *groll*

ich versuche meinen snort incl. razorback zum laufen zu bekommen (nur das rb immer einfriert, nach der konfiguration...). aber dauernd geht was daneben.

ich habe susanne 8.2 und habe, wie weiter oben beschrieben, in meiner /etc/ppp/ip-up diesen eintrag am schluss unten eingefügt:

# snort
/usr/bin/snort -D -N -i ppp0 -c /etc/snort/snort.conf
exit 0

habe dann versucht snort im eigenen verzeichnis mit snort - i ppp0 zu starten, das macht er auch bis dann das hier kommt:

ERROR: Unable to open rules file: /etc/rules/bad-traffic.rules or .//etc/rules/bad-traffic.rules
Fatal Error, Quitting.. (das kam auch bevor ich den eintrag in ip-up einfügte, falls das wichtig sein sollte)
das erste file existiert - daher kappiere ich net, woran es liegen könnte.

mache ich es ausserhalb des snort threads kommt das hier:

linux:/etc/ppp # snort -i ppp0
Log directory = /var/log/snort

Initializing Network Interface ppp0
using config file /root/.snortrc
Initializing Preprocessors!
Initializing Plug-ins!
Parsing Rules file /root/.snortrc

++++++++++++++++++++++++++++++++++++++++++++++++++ +
Initializing rule chains...
ERROR: Unable to open rules file: /root/.snortrc or /root//root/.snortrc
Fatal Error, Quitting..


ich würde ja gerne razorback und snort verwenden, aber es will net. ach ja: was mache ich mit dem snort eintrag im runlevel editor? der bringt logischerweise beim booten immer den fehler, dass das interface ppp0 net läuft. auskommentieren? ich möchte aber einen automatischen start haben.

thX & greetZ!

CEROG
28.08.03, 04:43
Hallo Tillit,

du findest in der snort.conf diesen Eintrag:

# Path to your rules files (this can be a relative path)
var RULE_PATH /etc/snort/rules

Wie sieht er bei dir aus? Stimmt er?

Viele Grüße,
CEROG

Tillit
28.08.03, 19:45
hei cerog

danke schön :) nee, da steht das hier:

# Path to your rules files (this can be a relative path)
var RULE_PATH /etc/rules

d.h. ich muss nur /snort dazuschreiben, dann müsste es stimmen?


edit: ich hoffe, ich kann meine home konfig so schreiben?

var HOME_NET 127.0.0.1 (meine ip wechselt ja immer)

noml edit: hab jetzt var RULE_PATH /etc/snort eingegeben, jetzt kommts schon weiter - ABER nächster fehler:

ERROR => Undefined variable name: (/etc/snort//telnet.rules:13): TELNET_SERVERS
Fatal Error, Quitting..

ich krieg echt nen vogel...


greetZ!

Windoofsklicker
28.08.03, 20:04
ich lasse ein script laufen, dass überprüft ob:

- ppp0 up ist und wenn ja
- snort läuft...



# detect
#! /bin/sh
ps -A > /temp/process.txt
/sbin/ifconfig > /temp/ifconfig.txt
i=$(grep -c /temp/process.txt -e snort)
if [ $i != 1 ]; then
grep /temp/ifconfig.txt -e ppp0 -q #liefert 0 wenn ppp0 hefunden wird
if [ $? = 0 ]; then
/scripts/snortstart
fi
fi
rm /temp/process.txt
rm /temp/ifconfig.txt




#snortstart
/usr/local/bin/snort -A full -M /etc/snort/smb-hosts -i ppp0 -c /etc/snort/snort.conf -b &

HangLoose
28.08.03, 20:17
@Tillit


noml edit: hab jetzt var RULE_PATH /etc/snort eingegeben, jetzt kommts schon weiter - ABER nächster fehler:

ERROR => Undefined variable name: (/etc/snort//telnet.rules:13): TELNET_SERVERS
Fatal Error, Quitting..



kommentiere in der snort.conf die telnet-rules aus. ich nehme mal an du hast keinen telnet server laufen, also brauchst du diese rules auch nicht.

ansonsten findest du hier ein howto von mir, eventuell hilft es dir ja weiter

http://www.harry.homelinux.org/modules.php?name=News&new_topic=2


Gruß HL

Tillit
28.08.03, 20:18
hei wk - hm.... ich gestehe: ich habe selber noch nicht wirklich mit skripten gearbeitet. wie und wo packe ich das hin? :confused:
und smb-hosts? ich hab nen desktop - also kein netzwerk dahinter - ich will einfach mal sehen, was meine firewall so alles bekommt und was das ausgewertet bedeutet.

hoffe, das ist nicht zu noobig ;)

thX & greetZ!

Tillit
28.08.03, 21:04
hei HL

da haben sich unsere posts vorhin überschnitten *g*

jetzt hab ich schon die sufu bemüht und er kommt mir mit ner eigenen how-to seite ;) dankeschön, ich gucks mir sofort an :) hm.... das ist ja eine kugelfuhr mit der deaktiviererei... kaum habe ich eins deaktiviert, meckert der nächste an. aber ich lese mir jetzt erstmal dein how-to nochmal richtig durch ;) danke dir erstmal sehr!

danach kann mir vielleicht jmd. was zum antivir update sagen, das geht bei mir nämlich auch net *grummel* --- begin GnuPG (antivir)---
sh: line 1: /usr/local/bin/gpg: Datei oder Verzeichnis nicht gefunden
---- end GnuPG ----
06.21.00.30 <=> 06.21.00.30 [vdf, on-disk]

error updating /usr/lib/AntiVir/antivir.vdf

See log files for details.

schon x-mal probiert - der dl funktionert, aber das updaten net. es scheitert wohl an einer fehlenden gpg identifizerung?

greetZ!

HangLoose
28.08.03, 21:13
Hi Tillit

kleiner tip noch, ich glaube das kam in meinem howto nicht so rüber. du kannst in den rules-sets auch einzelne regeln auskommentieren.

beispiel:

in der /etc/snort/exploid.rules finden sich die unterschiedlichsten regeln zu den unterschiedlichsten diensten. wenn du jetzt die variable TELNET_SERVER in der snort.conf nicht gesetzt hast, da du keinen telnet server laufen hast, öffne einfach die datei /etc/snort/exploid.rules und kommentiere alle rules in denen was mit telnet vorkommt aus.

das ganze ist beim einrichten etwas aufwendig. viel spaß ;).


Gruß HL

Tillit
28.08.03, 22:23
hab grad ganz andere nöte... jetzt hab ich soweit mal alles drin - jetzt spackt doch noch was

Initializing Network Interface ppp0
ERROR: OpenPcap() device ppp0 open:
socket: Operation not permitted
Fatal Error, Quitting..

habe das als normaler user gestartet, da es ja als root net gemacht werden soll. oder muss ich als user snort starten?

greetZ!

edit: habe snort aus dem runleveleditor rausgenommen. wo muss ich denn das o.g. startscript einbinden? nachtrag: bin ich *plöt* ;) hab ich doch schon gemacht - in der /etc/ppp/ip-up *ggg* das hat sich bei susanne 8.2 geändert - also aufpassen.

cane
29.08.03, 12:00
Hallo Tillit
Also ich starte mittels
[b]snort -T -u snort -g snort -i pppo -c /etc/snort/snort.conf[b]

T = Testbetrieb (das werd ich auslassen wenn snort läuft ;-) )
u = user
g = group
i = interface
c = config file

mehr Infos mittels [b]snort --help[b]

@Hang Loose

Hallo Hang!
Wenn ich mal Zeit habe werde ich Dein Howto aktualisieren bzw Dir einen Vorschlag machen was ich ergänzen würde. (Du erwähnst zum Beispiel nicht in welchem Verzeichnis man snort entpacken sollte - das kann für einige schon zu Fehlern führen... Auch die verbesserten Startmethoden wären sicher erwähnenswert...)

mfg
cane

HangLoose
29.08.03, 12:24
Hi cane

verbesserungsvorschläge sind immer willkommen ;). ich müßte mich dann erstmal mit harry in verbindung setzen, da ich selbst auch nicht ohne weiteres an das howto zum editieren rankomme.

allerdings scheint harry im moment andere *sorgen* zu haben, hab jedenfalls lange nichts mehr von ihm gehört.



Gruß HL

tomes
29.08.03, 15:36
Original geschrieben von Tillit

habe das als normaler user gestartet, da es ja als root net gemacht werden soll. oder muss ich als user snort starten?

Hi Tillit,

das starten von snort muss root machen, da das Interface in den promisc(u)ous mode
gehn muss. Snort selber laeuft dann mit den Userrechten unter den du es startest.

@cane
Wieso muss man aufpassen in welches Verzeichniss man entpackt ???
Ich entpacke mal hier, mal da ;). Kommt immer auf das System an.

@HangLoose
Vielleicht sollte man die ganzen Fragen mal zusammenfassen und noch eine grosse Ergaenzung schreiben. Dabei sollte vielleicht auch einen kleinen Abschnitt geben, in den du auf das Erstellen eigender Regeln eingehst ;)

T;o)Mes

HangLoose
29.08.03, 18:18
@tomes


Vielleicht sollte man die ganzen Fragen mal zusammenfassen und noch eine grosse Ergaenzung schreiben. Dabei sollte vielleicht auch einen kleinen Abschnitt geben, in den du auf das Erstellen eigender Regeln eingehst




vergiß es :D, ich habe nichts gegen eine erweiterung. aber das howto schreiben liegt mir einfach nicht ;).


Gruß HL

Tillit
30.08.03, 18:22
@ all

thX ich werds mal probieren. aber wieso kommt diese ppp0 fehlermeldung überhaupt - ich habs ja so gestartet, wie hl es vorgeschlagen hat? :confused:

weiss eure hilfe jedenfalls sehr zu schätzen

greetZ und ein schönes woe (endlich mal kühler *g*)

Tillit
30.08.03, 18:35
also - ich ändere diesen beitrag nun, da ich es irgendwie doch noch geschafft hab ;)

was jetzt noch fehlt bzw. nicht funktioniert ist die kombi mit razorback. da gibts ja eigentlich net viel zu konfigurieren, ausser den pfad anzugeben, wo sich das scan.log befindet. s tut aber net aufzeichnen, obwohl meine firewall jede menge drop-defaults zeigt. *menno* ;)

ideen?

thX & greetZ!