Hi @ All,
heute befassen wir uns mit dem Automatisieren Rootkit scann und das Senden des Logfiles via E-Mail.
Ich benutze rkhunter und chkrootkit.
Installation:
Installation und Konfiguration als root!
RKHUNTER
Installation:
aptitude install rkhunter
Konfiguration:
nano /etc/rkhunter.conf
Einzige Option die hier zu bearbeiten ist:
MAIL-ON-WARNING=""
Ändern auf:
MAIL-ON-WARNING="root"
Cron ändern damit die Version und auf Updates geprüft wird:
nano /etc/cron.daily/rkhunter
Original Datei:
#!/bin/sh RKHUNTER=/usr/bin/rkhunter test -x $RKHUNTER || exit 0 # source our config . /etc/default/rkhunter if [ -z "$NICE" ]; then NICE=0 fi case "$CRON_DAILY_RUN" in [Yy]*) OUTFILE=`mktemp` || exit 1 /usr/bin/nice -n $NICE $RKHUNTER --cronjob --report-warnings-only --appendlog > $OUTFILE if [ -s "$OUTFILE" ]; then ( echo "Subject: [rkhunter] $(hostname -f) - Daily report" echo "To: $REPORT_EMAIL" echo "" cat $OUTFILE ) | /usr/sbin/sendmail $REPORT_EMAIL fi rm -f $OUTFILE ;; *) exit 0 ;; esac
Versionsprüfung und Update hinzufügen:
#!/bin/sh RKHUNTER=/usr/bin/rkhunter test -x $RKHUNTER || exit 0 # source our config . /etc/default/rkhunter if [ -z "$NICE" ]; then NICE=0 fi /usr/bin/rkhunter --versioncheck /usr/bin/rkhunter --update case "$CRON_DAILY_RUN" in [Yy]*) OUTFILE=`mktemp` || exit 1 /usr/bin/nice -n $NICE $RKHUNTER --cronjob --report-warnings-only --appendlog > $OUTFILE if [ -s "$OUTFILE" ]; then ( echo "Subject: [rkhunter] $(hostname -f) - Daily report" echo "To: $REPORT_EMAIL" echo "" cat $OUTFILE ) | /usr/sbin/sendmail $REPORT_EMAIL fi rm -f $OUTFILE ;; *) exit 0 ;; esac
Testen:
sh /etc/cron.daily/rkhunter
Wenn alles richtig eingestellt ist bekommt man eine E-Mail mit dem Report auf die Eingestellte E-Mail Adresse bzw. an Root wie in meinem Beispiel.
CHKROOTKIT:
Installation:
aptitude install chkrootkit
Konfiguration:
nano /etc/chkrootkit.conf
Original Datei:
RUN_DAILY="false" RUN_DAILY_OPTS="-q" DIFF_MODE="false" Tägliche Prüfung einschalten und E-Mailadresse hinzufügen: RUN_DAILY="true" RUN_DAILY_OPTS="-q" // Option damit die Prüfung ohne Ausgabe in die Console läuft DIFF_MODE="false" REPORT_EMAIL="root"
Anpassung des Cronjobs für Sendmail/Postfix:
nano /etc/cron.daily/chkrootkit
Originaldatei:
leider nicht mehr vorhanden!
Zu bearbeiten ist die Zeile:
$CHKROOTKIT $RUN_DAILY_OPTS
nach eval die Zeile
$CHKROOTKIT $RUN_DAILY_OPTS
zu entfernen und zu ersetzen mit
$CHKROOTKIT > $LOG_DIR/chkrootkit.log #Run chkrootkit and save the logfile ( echo "Subject: [chkrootkit] $(hostname -f) - Daily report" #Create subject line using the hostname echo "To: $REPORT_EMAIL" #Insert To: delivery email address using the variable defined in chkrootkit.conf echo "" cat $LOG_DIR/chkrootkit.log #Concat the logfile to the output ) | /usr/sbin/sendmail $REPORT_EMAIL #Send out the email!
Die Einzelnen Zeilen sind ja schon beschrieben und sollte daher klar sein.
Danach kann man noch einen Datei für das Logrotate erstellen.
Datei erstellen:
nano /etc/logrotate.d/chkroot
/var/log/chkrootkit/*.log { daily rotate 15 dateext delaycompress missingok notifempty }
Test:
sh /etc/cron.daily/chkrootkit
Durch die Option in der
/etc/chkrootkit.conf
-q wird es keine Ausgabe geben sondern es wird das Logfile geschrieben und eine E-Mail verschickt das ist alles.
Nun wird einmal am Tag das System mit beiden Programmen nach Rootkits geprüft und Ihr bekommt für jeden Scan eine E-Mail.
Solltet Ihr Plesk oder ähnliches benutzen bitte nicht wundern wenn Ihr eine Fehlermeldung erhaltet wie INFECTED (PORTS: 465) bekommt das liegt an Plesk also keine Panik.
Quelle:
http://www.planetdebian.de/howto-installation-von-chkrootkit-und-rkhunter
http://peterpetrik.com/blog/daily-emails-from-chkrootkit-using-postfix-sendmail-command
Das war es auch schon wieder, viel Spass 🙂
LG
DocSchneidi ak Cheech
Finde ich super, dass hier haeufig geschrieben wird.
Nette Ausfuehrungen! Ich werde mich damit in Zukunft mehr beschaeftigen! Warte auf neue Beitraege!
Ich geb mein bestes 😉
Lg Cheech
Hallo!
Ich nutze aktuell Debian 7 64 Bit und wollte dein Tutorial benutzen. Es funktioniert zwar alles, aber ich bekomme einfach keine E-Mails geschickt o.o Egal ob lokal und ich rufe mit „mail“ in der Konsole ab oder an eine richtige E-Mail Adresse.
Hast du eine Idee wieso?
Gruß
Hi,
steht den was im syslog ? Nutz du ein anderes E-Teil Programm/Server ? hast Du eine E-Mailadresse konfiguriert oder nur root drin stehen ? Wenn nur root drin steht muss im System für root auch eine echte E-Mailadresse hinter legt sein.
Gruß
Cheech
Meinst du mit syslog die Konsole?
Ich habe MAIL-ON-WARNING=“root mail@mail.de“ in der rkhunter.conf eingetragen.
Ich habe für root keine E-Mailadresse hinterlegt, wie mache ich das? Bin ein Linuxnoob.
dann trag mal nen richtige E-Mail ein und dann bekommste auch Post mit der Adresse wird da nie was ankommen.
Gruß
Cheech
Ich habe nun die Datei /root/.forward erstellt und dort eine richtige E-Mailadresse angegeben.
Mail-on-warning habe ich auf root gelassen. Nun habe ich eine E-Mail bekommen.
Ich dachte ich kann bei Mail on warning direkt „echte“ E-Mailadressen angeben.
Danke.
Hi,
dein Eintrag ”root mail@mail.de” ist keine echte E-Mail gewesen. entweder wie in meiner Anleitung nur root oder eine echte E-Mail dann geht es.
Gruß
Cheech
Laut rkhunter.conf
# Multiple addresses may be specified
# simply be separating them with a space.
sollte das aber auch gehen? Einmal an root (also lokal) und einmal an eine echte E-Mailadresse, welche ich absichtlich mit mail@mail.de abgekürzt habe. Dann scheint der Kommentar in der Datei falsch zu sein?
Gruß
Hi,
ka ich nutz die funktion nicht habe es daher noch nie versucht.
Naja scheint ja jetzt bei Dir zu gehen 😉
Cya
Cheech