|
Das ist eine kurze Anleitung um Snort in einer neuen Version unter Ubuntu Lucid Lynx Server Edition zu kompilieren. Die Version in den Repositories ist leider so alt, dass man die neuen Rulesets damit nicht mehr verwenden kann. Wenn ich mal mehr Zeit habe wird das HowTo besser dokumentiert, versprochen ;)
Much fun!
sudo su
aptitude install bison libpcre3-dev g++ libpcap0.8-dev zlib1g-dev gcc flex
// libdnet NICHT AUS DEN REPOS INSTALLIEREN
wget http://www.snort.org/downloads/745
tar zxvf 745
cd daq-0.5/
./configure
make
checkinstall make install
ldconfig
wget http://libdnet.googlecode.com/files/libdnet-1.12.tgz
tar zxvf libdnet-1.12.tgz
cd libdnet-1.12
./configure
make
checkinstall make install
ln -s /usr/local/lib/libdnet.1.0.1 /usr/lib/libdnet.1
wget http://www.snort.org/downloads/752
./configure --prefix=/usr/local/snort --enable-ipv6 --enable-gre --enable-mpls --enable-targetbased --enable-decoder-preprocessor-rules --enable-ppm --enable-perfprofiling --enable-zlib --enable-active-response --enable-normalizer --enable-reload --enable-react --enable-flexresp3
make
checkinstall make install
groupadd snort
useradd -g snort snort
mkdir /var/log/snort
mkdir /etc/snort
mkdir /etc/snort/rules
chown snort:snort /var/log/snort
Download snort rules from www.snort.org
tar xvzf snortrules-snapshot-2903.tar.gz -C /usr/local/snort
mkdir /usr/local/snort/lib/snort_dynamicrules
cp /usr/local/snort/so_rules/precompiled/Ubuntu-10-4/i386/2.9.0.3/* /usr/local/snort/lib/snort_dynamicrules
Edit /usr/local/snort/etc/snort.conf
var RULE_PATH /usr/local/snort/rules
var SO_RULE_PATH /usr/local/snort/lib/snort_dynamicrules
var PREPROC_RULE_PATH /usr/local/snort/preproc_rules
adapt var HOME_NET
dynamicpreprocessor directory /usr/local/snort/lib/snort_dynamicpreprocessor/
dynamicengine /usr/local/snort/lib/snort_dynamicengine/libsf_engine.so
dynamicdetection directory /usr/local/snort/lib/snort_dynamicrules
Danach kann man snort wie folgt als Daemon starten:
/usr/local/snort/bin/snort -c /usr/local/snort/etc/snort.conf -d -D -i eth0
Da im Ruleset icmp-info eingeschalten ist sollte man sogar für normales Pingen Alerts im File /var/log/snort/alert bekommen.
Da das mit der Zeit stressig wird ;) kann man die Zeile
include $RULE_PATH/icmp-info.rules
auskommentieren. Danach wird nicht mehr jeder Ping mit einem Alert belohnt.
Weiters sind die Preprocessor Rules per default nicht eingebunden.
Man muss folgende Zeile einkommentieren
include $PREPROC_RULE_PATH/preprocessor.rules
um preprocessor Anweisungen zu verwenden.
Der sfPortscan ist per default deaktiviert und damit erkennt Snort die Scans nicht. Folgende Zeile muss dafür einkommentiert und gegebenenfalls angepasst werden
preprocessor sfportscan: proto { all } memcap { 10000000 } sense_level { low } |
|
|