Ich brauche eine Log von dem sshd

B

blacky

Hallo,
wollte fail2ban installieren, leider fehlt mir das wichtigste, eine Log von sshd.
Wo bekomme ich die denn her?
 
Hallo,

der schreibt doch einfach nach Syslog?!?

Bei mir steht einfach
Code:
failregex = : (?:(?:Authentication failure|Failed [-/\w+]+) for(?: [iI](?:llegal|nvalid) user)?|[Ii](?:llegal|nvalid) user|ROOT LOGIN REFUSED) .*(?: from|FROM) (?:::f{4,6}:)?(?P<host>\S*)
und das funzt....
 
Hi,
wo soll ich das denn reinschreiben? In die fail2ban.conf? - funktioniert leider nicht. Hab aber herausgefunden, das sshd in die messages schreibt, jetzt könnte ich ja eine eigene Datei dafür anlegen. Und, kennt noch einer eine schöne howto, für fail2ban vielleicht mit Beispielen unter SuSE?
 
wo soll ich das denn reinschreiben? In die fail2ban.conf?
ja, da...

Hab aber herausgefunden, das sshd in die messages schreibt
Ja, genau. Syslog schreibt in die /var/log/messages.

vielleicht mit Beispielen unter SuSE?
Äh, ja.... das war eins. Ich poste einfach mal, was im kompletten SSH-Abschnitt meiner Config steht:
Code:
# Option:  port
# Notes.:  specifies port to monitor
# Values:  [ NUM | STRING ]  Default:
#
port = ssh

# Option:  timeregex
# Notes.:  regex to match timestamp in SSH logfile. For TAI64N format,
#          use timeregex = @[0-9a-f]{24}
# Values:  [Mar  7 17:53:28]
# Default: \S{3}\s{1,2}\d{1,2} \d{2}:\d{2}:\d{2}
#
timeregex = \S{3}\s{1,2}\d{1,2} \d{2}:\d{2}:\d{2}

# Option:  timepattern
# Notes.:  format used in "timeregex" fields definition. Note that '%' must be
#          escaped with '%' (see http://rgruet.free.fr/PQR2.3.html#timeModule).
#          For TAI64N format, use timepattern = tai64n
# Values:  TEXT  Default:  %%b %%d %%H:%%M:%%S
#
timepattern = %%b %%d %%H:%%M:%%S

# Option:  failregex
# Notes.:  regex to match the password failures messages in the logfile.
# Values:  TEXT  Default:  Authentication failure|Failed password|Invalid user
#
failregex = : (?:(?:Authentication failure|Failed [-/\w+]+) for(?: [iI](?:llegal|nvalid) user)?|[Ii](?:llegal|nvalid) user|ROOT LOGIN REFUSED) .*(?: from|FROM) (?:::f{4,6}:)?(?P<host>\S*)

Und das funktioniert hier auch tatsächlich....
 
Wenn das Teil läuft ("ps ax | grep fail" mal eingeben), sollte er das... Bei mir kann ich z.B. aus einer VM heraus nen Bann auslösen, der nach der vorgegebenen Zeit wieder aufgelöst wird....

Wie testest du das, woher weißt du, daß das Ding überhaupt läuft?
 
hi,
wie ich das teste, ganz einfach, ich gebe mehrmals über ssh fehlerhafte Passwörter ein.
 
umpfff... nein, ich meinte wie testest du, ob fail2ban überhaupt ordentlich läuft?

Code:
~> ps ax | grep fail
11009 ?        S      0:03 /usr/bin/python /usr/bin/fail2ban -b

Ich habe außerdem ein Init-Script und lasse das als Dienst laufen:
Code:
#!/bin/bash
#
# fail2ban
# Author: Andrey G. Grozin
# 
# $Revision: 216 $
### BEGIN INIT INFO
# Provides:          Fail2Ban
# Required-Start:    $network SuSEfirewall2_setup
# Default-Start:     3 5
# Default-Stop:      0 1 2 6
# Short-Description: "Fail2Ban" - block addresses that repeatedly fail to authenticate
# Description: if many unsuccessfull login attempts from some ip address \
#              during a short period happen, this address is banned \
#              by the firewall.
#      
### END INIT INFO

# Source function library.
#. /etc/init.d/functions

# Get config.
#if [ -s /etc/sysconfig/network ];then
#. /etc/sysconfig/network

# Check that networking is up.
[ "${NETWORKING}" = "no" ] && exit 0
[ -f /etc/fail2ban.conf ] || exit 0

FAIL2BAN="/usr/bin/fail2ban"
PIDFILE="/var/run/fail2ban.pid"

RETVAL=0

start() {
    echo -n $"Starting fail2ban: "
    "${FAIL2BAN}" -b > /dev/null
    RETVAL=$?
    echo
}

stop() {
    if [ -f "${PIDFILE}" ]; then
	echo -n $"Stopping fail2ban: "
	"${FAIL2BAN}" -k > /dev/null
	echo
    fi
}

restart() {
    stop
    start
}

# See how we were called.
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  status)
        status fail2ban
        RETVAL=$?
        ;;
  reload)
        restart
        ;;
  restart)
        restart
        ;;
  condrestart)
        if [ -f "${PIDFILE}" ]; then
            restart
        fi
        ;;
  *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart}"
        exit 1
        ;;
esac

exit $RETVAL
 
Hi,
hopala, ja, da funktioniert etwas nicht, so wie es soll.
4062 pts/2 S 0:00 /usr/bin/python /usr/local/bin/fail2ban-client start
4063 pts/2 Z 0:00 [fail2ban-server] <defunct>
 
Hi,
hab mich länger nicht gemeldet, aber was mache ich denn jetzt anscheinend wurde der fail2ban Server nicht installiert.
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

So, hab jetzt noch ein paar Infos mehr.
Habe server.py direkt gestartet und was kommt, klar, 5 Zeilen mit unkown command. Also ist jetzt logisch warum das ding nicht geht. Ich glaube es liegt an meiner Aktuellen Version von pyhton habe 2.5 anstatt 2.4. Kann dies einer bestätigen?
 
Zuletzt bearbeitet von einem Moderator:

Ähnliche Themen

Kernel-Log, das "dmesg" ausgibt, löschen?

Verzeichnis mit 1200 Dateien auf Verweise in Textdateien checken

sed - Bitte um Unterstützung

Kernel Kaltstart / reboot?

Samba 4 aus repository über lokale Source-Installation installieren?

Zurück
Oben