Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
fail2ban bannt nicht, update: regex-problem
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Jimini
Guru
Guru


Joined: 31 Oct 2006
Posts: 590
Location: Germany

PostPosted: Tue Mar 02, 2010 2:09 pm    Post subject: fail2ban bannt nicht, update: regex-problem Reply with quote

Aloha.
Da meine Logs seit einiger Zeit um die Einträge einiger tausend SSH-Login-Versuche pro Woche anwachsen, will ich dieses Problem mit Hilfe von fail2ban ein wenig eindämmen. Blöderweise tut das nicht, was es soll - es bannt die IPs scheinbar nicht.

fail2ban.conf:
Code:
[Definition]

# Option:  loglevel
#          1 = ERROR               
#          2 = WARN                 
#          3 = INFO                 
#          4 = DEBUG               
loglevel = 3                       
                                                                                                                                                               
logtarget = /var/log/fail2ban.log                                                                                                                             
                                                                                                                                                               
socket = /var/run/fail2ban/fail2ban.sock


jail.conf (um nicht genutzte Jails gekürzt)
Code:
[DEFAULT]

ignoreip = 127.0.0.1                                                           

bantime  = 600                                             

findtime  = 60                                                             

maxretry = 3                                                   

backend = auto

[ssh-iptables]

enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
logpath  = /var/log/authlog-2010-03
maxretry = 3


fail2ban-client status ssh-iptables
Code:
Status for the jail: ssh-iptables
|- filter
|  |- File list:        /var/log/authlog-2010-03
|  |- Currently failed: 0
|  `- Total failed:     0
`- action
   |- Currently banned: 0
   |  `- IP list:
   `- Total banned:     0


fail2ban.log zeigt keinerlei Sperren an, ebenso verzeichnet mein aktuelles Authlog (authlog-2010-03) weiterhin täglich munter hunderte neue Einträge von erfolglosen Loginversuchen, meist im Abstand von 2, 3 Sekunden. Die Adressen, von denen die Versuche ausgehen, bleiben in der Regel über Stunden die gleichen. "findtime" und "maxretry" habe ich - finde ich - relativ strikt gesetzt, es dürfte also nicht sein, dass täglich dermaßen viele neue Loginversuche geloggt werden.

Den Loglevel habe ich testweise mal auf "4" (debug) gesetzt - aber bis auf massenweise Einträge à la
Code:
2010-03-02 12:21:34,030 fail2ban.filter : DEBUG  /var/log/authlog-2010-03 has been modified
2010-03-02 12:21:34,032 fail2ban.filter.datedetector: DEBUG  Sorting the template list
2010-03-02 14:56:45,427 fail2ban.filter : DEBUG  /var/log/authlog-2010-03 has been modified
2010-03-02 14:56:45,428 fail2ban.filter.datedetector: DEBUG  Sorting the template list
2010-03-02 14:56:47,431 fail2ban.filter : DEBUG  /var/log/authlog-2010-03 has been modified
2010-03-02 14:56:47,432 fail2ban.filter.datedetector: DEBUG  Sorting the template list
2010-03-02 14:56:49,435 fail2ban.filter : DEBUG  /var/log/authlog-2010-03 has been modified
2010-03-02 14:56:49,437 fail2ban.filter.datedetector: DEBUG  Sorting the template list
2010-03-02 14:56:56,445 fail2ban.filter : DEBUG  /var/log/authlog-2010-03 has been modified
2010-03-02 14:56:56,447 fail2ban.filter.datedetector: DEBUG  Sorting the template list

taucht in fail2ban.log nichts weiter auf. Fail2ban scheint sich also nicht wirklich darum zu kümmern, was im Authlog festgehalten wird, nur, dass neue Einträge hinzukommen.
Findet irgendjemand den Fehler bzw weiß, woran es liegen könnte?

MfG Jimini

P.S.: mein Authlog wird nach dem Namensschema "authlog-Jahr-Monat" erstellt. Wie kann ich den Logpath festlegen, dass fail2ban automatisch das aktuelle Log parst?

P.P.S.: ich nutze übrigens iptables-1.4.3.2, shorewall-3.4.8 und Gentoo Hardened 2.6.28-r9. fail2ban arbeitete unter der selben Kombination (bis auf den Kernel, der war älter), auf einer anderen Kiste schon anstandslos, leider komme ich zur Zeit nicht an das entsprechende System heran.

P.P.P.S.: ich habe mir erlaubt, ein Crossposting im englischen Forum zu erstellen.
_________________
"The most merciful thing in the world, I think, is the inability of the human mind to correlate all its contents." (H.P. Lovecraft: The Call of Cthulhu)
Back to top
View user's profile Send private message
Jimini
Guru
Guru


Joined: 31 Oct 2006
Posts: 590
Location: Germany

PostPosted: Fri Mar 05, 2010 3:54 pm    Post subject: Reply with quote

UPDATE
Es scheint als hätte ich das Problem gefunden - meine Regex' passen nicht. Die Einträge in meinem authlog sehen wie folgt aus:
Code:
[2010-03-05 12:54:18] info auth sshd Invalid user gt05 from 112.65.216.15


/etc/fail2ban/filter.d/sshd.conf enthält:
Code:
failregex = ^%(__prefix_line)s(?:error: PAM: )?Authentication failure for .* from <HOST>\s*$
            ^%(__prefix_line)s(?:error: PAM: )?User not known to the underlying authentication module for .* from <HOST>\s*$
            ^%(__prefix_line)sFailed (?:password|publickey) for .* from <HOST>(?: port \d*)?(?: ssh\d*)?$
            ^%(__prefix_line)sROOT LOGIN REFUSED.* FROM <HOST>\s*$
            ^%(__prefix_line)s[iI](?:llegal|nvalid) user .* from <HOST>\s*$
            ^%(__prefix_line)sUser \S+ from <HOST> not allowed because not listed in AllowUsers$
            ^%(__prefix_line)sauthentication failure; logname=\S* uid=\S* euid=\S* tty=\S* ruser=\S* rhost=<HOST>(?:\s+user=.*)?\s*$
            ^%(__prefix_line)srefused connect from \S+ \(<HOST>\)\s*$
            ^%(__prefix_line)sAddress <HOST> .* POSSIBLE BREAK-IN ATTEMPT!*\s*$
            ^%(__prefix_line)sUser \S+ from <HOST> not allowed because none of user's groups are listed in AllowGroups$
            ^%(__prefix_line)sInvalid user .* from <HOST>$


Ich habe den Filter mittels fail2ban-regex getestet, eine Übereinstimmung wird dabei nicht gefunden.
Wo liegt der Fehler?

MfG Jimini
_________________
"The most merciful thing in the world, I think, is the inability of the human mind to correlate all its contents." (H.P. Lovecraft: The Call of Cthulhu)
Back to top
View user's profile Send private message
Hollowman
Guru
Guru


Joined: 19 Apr 2007
Posts: 584

PostPosted: Fri Mar 05, 2010 4:58 pm    Post subject: Reply with quote

Hi

Hast du das Loglevel in der sshd_config auf VERBOSE gestellt? Das musste ich laut Anleitung machen. Ich habs aber nie ohne probiert. Bei mir geht das mit iptables, openssh und fail2ban problemlos.

/etc/ssh/sshd_config
Code:

# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH
LogLevel VERBOSE


So sieht das bei mir aus.

Sebastian
Back to top
View user's profile Send private message
Jimini
Guru
Guru


Joined: 31 Oct 2006
Posts: 590
Location: Germany

PostPosted: Fri Mar 05, 2010 6:01 pm    Post subject: Reply with quote

Danke für deine Antwort!
Ich habe das Loglevel mal von "INFO" auf "VERBOSE" gesetzt. Allerdings würde es mich wundern, wenn es daran liegen würde, denn mein authlog ist wie gesagt voll mit Einträgen von Loginversuchen, die über Stunden zig Usernamen durchprobieren. Zudem meine ich mich zu erinnern, dass das Loglevel vom SSHD auf dem alten System auch nur auf "INFO" stand - aber ich kann es nicht beschwören. Mal schauen, ob das andere Loglevel in den kommenden 12 Stunden neue Erkenntnisse bringt.

MfG Jimini
_________________
"The most merciful thing in the world, I think, is the inability of the human mind to correlate all its contents." (H.P. Lovecraft: The Call of Cthulhu)
Back to top
View user's profile Send private message
Hollowman
Guru
Guru


Joined: 19 Apr 2007
Posts: 584

PostPosted: Sat Mar 06, 2010 11:25 am    Post subject: Reply with quote

Hi

Also ich hab nichts anderes gemacht als fail2ban installiert, die conf und das jail angepasst und das LOGLEVEL eändert. Danach ging das sofort.

Halt, da war nochwas:

Code:

And don't forget to add/change:

LogLevel VERBOSE

in your sshd configuration file /etc/ssh/sshd_config. Else, password failures are not logged correctly.

The log prefix needs adaption /etc/fail2ban/filter.d/common.conf:

__daemon_re = [\[\(]?%(_daemon)s(?:\([^\)]+\))?[\]\)]?:?

because of pam_unix(sshd:auth).


Lies ma das hier: http://en.gentoo-wiki.com/wiki/Fail2ban

Sebastian
Back to top
View user's profile Send private message
Jimini
Guru
Guru


Joined: 31 Oct 2006
Posts: 590
Location: Germany

PostPosted: Sun Mar 07, 2010 4:33 pm    Post subject: Reply with quote

Leider hat das nichts gebracht - ich habe das Problem jetzt erstmal so umschifft, dass ich das Loggingformat von syslog-ng wieder auf die Standardeinstellungen gesetzt habe. Für mich keine befriedigende Lösung, aber immerhin arbeitet fail2ban jetzt ohne Probleme. Wenn ich viel Zeit und Motivation habe, werde ich die regex des Filters mal meinen Filterregeln anpassen...

Dennoch vielen Dank für deine Hilfestellung!

MfG Jimini
_________________
"The most merciful thing in the world, I think, is the inability of the human mind to correlate all its contents." (H.P. Lovecraft: The Call of Cthulhu)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum