WAS IST FAIL2BAN?
Fail2ban scannt Protokolldateien und sperrt IPs, die böswillige Anzeichen aufweisen – zu viele Passwortfehler, Suche nach Exploits usw. Im Allgemeinen wird Fail2Ban dann verwendet, um Firewall-Regeln zu aktualisieren, um die IP-Adressen für einen bestimmten Zeitraum abzulehnen, obwohl jede beliebige andere Aktion (z. B. das Versenden einer E-Mail) ebenfalls konfiguriert werden. Standardmäßig enthält Fail2Ban Filter für verschiedene Dienste (Apache, Courier, SSH usw.).
WIE INSTALLIERE ICH ES?
sudo apt-get install fail2ban
Codesprache:Bash (bash)
WIE KONFIGURIEREN?
1. Zu ignorierende IPs hinzufügen
fail2ban-client set sshd addignoreip 151.237.48.31
Codesprache:Bash (bash)
2. Stellen Sie die Sperrzeit auf dauerhaft oder 3600 ein, wenn Sie möchten, für etwa 10 Minuten
fail2ban-client set sshd bantime -1
Codesprache:Bash (bash)
3. Neustart
Dienst fail2ban Neustart
Codesprache:Bash (bash)
WIE KANN ICH IP VERBINDEN?
fail2ban-client set sshd banip 151.237.48.31
Codesprache:Bash (bash)
WIE KANN ICH IP AUFHEBEN?
fail2ban-client set sshd unbanip 151.237.48.31
Codesprache:Bash (bash)
WIE KANN ICH DIE GEFÄNGNISLISTEN ÜBERPRÜFEN?
fail2ban-client status
Codesprache:Bash (bash)
WIE LISTE ICH GEBOTENE IPs AUF?
iptables -nL
Codesprache:Bash (bash)
Wenn Sie fail2ban aus der Konfigurationsdatei konfigurieren möchten, befindet sie sich in /etc/fail2ban/fail2ban.local und Sie müssen fail2ban neu starten>cd /etc/fail2bansudo cp jail.conf jail.localsudo nano jail.local Codesprache:Bash (bash) ## WARNUNG:In Version 0.9.0 stark umgestaltet. Bitte überprüfen Sie die Einstellungen für Ihr Setup und# passen Sie sie an. :## SO AKTIVIEREN SIE JAILS:## SIE SOLLTEN DIESE DATEI NICHT ÄNDERN.## Sie wird wahrscheinlich in einem Distributions-Update überschrieben oder verbessert.## Stellen Sie Anpassungen in einer jail.local-Datei oder einer jail.d/customisation.local bereit .# Um beispielsweise die Standardbantime für alle Gefängnisse zu ändern und das # ssh-iptables-Gefängnis zu aktivieren, würde Folgendes (unkommentiert) in der .local-Datei erscheinen.# Siehe man 5 jail.conf für Details.## [DEFAULT]# bantime =3600## [sshd]#enabled =true## Weitere Informationen finden Sie auf der Manpage jail.conf(5)# Kommentare:Verwenden Sie '#' für Kommentarzeilen und ';' (nach einem Leerzeichen) für Inline-Kommentare[INCLUDES]#before=paths-distro.confbefore=paths-debian.conf# Der DEFAULT erlaubt eine globale Definition der Optionen. Sie können danach in jedem Jail überschrieben werden.[DEFAULT]## VERSCHIEDENE OPTIONEN## "ignoreip" kann eine IP-Adresse, eine CIDR-Maske oder ein DNS-Host sein. Fail2ban wird keinen Host sperren, der mit einer Adresse in dieser Liste übereinstimmt. Mehrere Adressen können # mit Leerzeichen (und/oder Komma) definiert werden separator.ignoreip =127.0.0.1/8 212.122.165.163# Externer Befehl, der ein markiertes Argument zum Ignorieren akzeptiert, z.
,# und true zurückgeben, wenn die IP ignoriert werden soll. Sonst False.## ignorecommand =/path/to/command
ignorecommand =# "bantime" ist die Anzahl der Sekunden, die ein Host gesperrt ist. bantime =-1# Ein Host wird gesperrt, wenn er währenddessen "maxretry" generiert hat die letzte "findtime"# Sekunden.findtime =600# "maxretry" ist die Anzahl der Fehler, bevor ein Host gesperrt wird.maxretry =1# "backend" gibt das Backend an, das zum Abrufen von Dateiänderungen verwendet wird.# Verfügbare Optionen sind "pyinotify", "gamin", "polling", "systemd" und "auto".# Diese Option kann auch in jedem Jail überschrieben werden.## pyinotify:erfordert die Installation von pyinotify (eine Dateiänderungsüberwachung).# Wenn pyinotify nicht installiert ist , verwendet Fail2ban auto.# gamin:erfordert die Installation von Gamin (eine Dateiänderungsüberwachung).# Wenn Gamin nicht installiert ist, verwendet Fail2ban auto.# polling:verwendet einen Abfragealgorithmus, der keine externen Bibliotheken erfordert.# systemd:verwendet die systemd-Python-Bibliothek, um auf das systemd-Journal zuzugreifen. # Die Angabe von "logpath" ist für dieses Backend nicht gültig. # Siehe "journalmatch" in den Jails zugehörige Filterkonfiguration # auto:versucht, die folgenden Backends in dieser Reihenfolge zu verwenden:# pyinotify, gamin, polling eigene Protokolldateien, geben Sie ein anderes # Backend für dieses Jail an (z. Polling) und geben Sie einen leeren Wert für # Journalmatch an. Siehe https://github.com/fail2ban/fail2ban/issues/959#issuecomment-74901200backend =auto# "usedns" gibt an, ob Jails Hostnamen in Protokollen vertrauen,# warnen sollen, wenn DNS-Lookups durchgeführt werden, oder alle Hostnamen in Protokollen ignorieren# # yes:Wenn ein Hostname gefunden wird, wird ein DNS-Lookup durchgeführt. # warn:Wenn ein Hostname gefunden wird, wird ein DNS-Lookup durchgeführt, # aber es wird als Warnung protokolliert. # no:Wenn ein Hostname gefunden wird , wird nicht zum Sperren verwendet,# aber es wird als info protokolliert.# raw:Rohwert verwenden (kein Hostname), zulassen, ihn für No-Host-Filter/Aktionen verwenden (Beispielbenutzer)usedns =warn# "logencoding" spezifiziert die Kodierung der Protokolldateien, die von der Jail verwaltet werden# Dies wird verwendet, um die Zeilen aus der Protokolldatei zu entschlüsseln.# Typische Beispiele:"ascii", "utf-8"## auto:verwendet die Systemgebietsschemaeinstellung logencoding =auto# " enabled" aktiviert die Jails.# Standardmäßig sind alle Jails deaktiviert, und das sollte auch so bleiben.# Enable only relevant to your setup jails in your .local or jail.d/*.conf## true:jai l wird aktiviert und Protokolldateien werden auf Änderungen überwacht # false:Jail ist nicht aktiviertenabled =false # "filter" definiert den Filter, der vom Jail verwendet werden soll. # Standardmäßig haben Jails Namen, die mit ihrem Filternamen übereinstimmen #filter =%(__name__ )s## AKTIONEN## Einige Optionen, die für Aktionen verwendet werden# Ziel-E-Mail-Adresse, die ausschließlich für die Interpolationen in # jail.{conf,local,d/*} Konfigurationsdateien verwendet wird.destemail =root@localhost# Absender-E-Mail-Adresse, die ausschließlich für einige verwendet wird actionssender =root@localhost# E-Mail-Aktion. Seit 0.8.1 verwendet Fail2Ban sendmail MTA für den # Mailversand. Ändern Sie den mta-Konfigurationsparameter in mail, wenn Sie # zu herkömmlichem 'mail' zurückkehren möchten. mta =sendmail # Standardprotokollprotokoll =tcp # Geben Sie eine Kette an, in der Sprünge hinzugefügt werden müssen, in iptables-* actionschain =INPUT # Zu sperrende Ports # Normalerweise sollte in einem bestimmten Jailport überschrieben werden =0:65535# Format des Benutzeragenten https://tools.ietf.org/html/rfc7231#section-5.5.3fail2ban_agent =Fail2Ban/%(fail2ban_version)s## Aktionsverknüpfungen. Zur Definition von Aktionsparametern # Standardsperraktion (z. B. iptables, iptables-new, # iptables-multiport, shorewall usw.) Wird verwendet, um # action_*-Variablen zu definieren. Kann global oder pro # Abschnitt in jail.local überschrieben werden filebanaction =iptables-multiportbanaction_allports =iptables-allports# Die einfachste Aktion:ban onlyaction_ =%(banaction)s[name=%(__name__)s, bantime="%( bantime)s", port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]# ban &sende eine E-Mail mit Whois-Bericht an destemail. action_mw =%(banaction)s[name=%(__name__)s, bantime="%(bantime)s", port="%(port)s", protocol="%(protocol)s", chain="% (Kette)s"]%(mta)s-whois[name=%(__name__)s, sender="%(sender)s", dest="%(destemail)s", protocol="%(protocol)s ", chain="%(chain)s"]# ban &sende eine E-Mail mit Whois-Bericht und relevanten Logzeilen# an destemail.action_mwl =%(banaction)s[name=%(__name__)s, bantime="%(bantime)s", port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]%(mta)s-whois-lines[name=%(__name__)s, sender="%(sender)s", dest="%(destemail)s", logpath=%(logpath)s, chain="%(chain)s"]# Siehe den WICHTIGEN Hinweis in action.d/xarf-login-attack für wann t o verwenden Sie diese Aktion## sperren und senden Sie eine xarf-E-Mail, um den Kontakt der IP-Adresse zu missbrauchen, und fügen Sie relevante Protokollzeilen# zur destemail.action_xarf =%(banaction)s[name=%(__name__)s, bantime="% (bantime)s", port="%(port)s", protocol="%(protocol)s", chain="%(chain)s"]xarf-login-attack[service=%(__name__)s, sender="%(sender)s", logpath=%(logpath)s, port="%(port)s"]# IP auf CloudFlare verbieten &eine E-Mail mit Whois-Bericht und relevanten Protokollzeilen# an die Destemail senden .action_cf_mwl =cloudflare[cfuser="%(cfemail)s", cftoken="%(cfapikey)s"]%(mta)s-whois-lines[name=%(__name__)s, sender="%(sender) s", dest="%(destemail)s", logpath=%(logpath)s, chain="%(chain)s"]# Meldeblockierung über blocklist.de fail2ban Reporting Service API## Siehe den WICHTIGEN Hinweis in Aktion .d/blocklist_de.conf wann diese Aktion verwendet werden soll. Erstellen Sie eine Datei jail.d/blocklist_de.local mit# [Init]# blocklist_de_apikey ={API-Schlüssel aus Registrierung]#action_blocklist_de =blocklist_de[email="%(sender)s", service=%(filter)s, apikey=" %(blocklist_de_apikey)s", agent="%(fail2ban_agent)s"]# Sperre über badips.com melden und als schwarze Liste verwenden## Siehe BadIPsAction docstring in config/action.d/badips.py für # Dokumentation zu dieser Aktion .## HINWEIS:Diese Aktion ist darauf angewiesen, dass Banaction beim Start vorhanden ist, und sollte daher # die letzte Aktion sein, die für ein Jail definiert ist. #action_badips =badips.py[category="%(__name__)s", banaction="%(banaction) s", agent="%(fail2ban_agent)s"]## Sperre über badips.com melden (verwendet action.d/badips.conf nur zum Melden)#action_badips_report =badips[category="%(__name__)s", agent ="%(fail2ban_agent)s"]# Standardaktion wählen. Zum Ändern überschreiben Sie einfach den Wert von 'action' mit der # Interpolation auf die gewählte Aktionsverknüpfung (z. B. action_mw, action_mwl usw.) in jail.local# global (Abschnitt [DEFAULT]) oder pro spezifischem Abschnittaction =%(action_)s# # JAILS### SSH-Server#[sshd]enabled =trueport =0:65535logpath =%(sshd_log)sbackend =%(sshd_backend)sbanaction =iptables-multiport[sshd-ddos]# Dieses Jail entspricht der Standardkonfiguration in Fail2ban. # Die Aktion mail-whois sendet eine Benachrichtigungs-E-Mail mit einer Whois-Anfrage# im Body.enabled =trueport =0:65535logpath =%(sshd_log)sbackend =%(sshd_backend)s[dropbear]port =sshlogpath =%(dropbear_log )sbackend =%(dropbear_backend)s[selinux-ssh]port =sshlogpath =%(auditd_log)s## HTTP-Server#[apache]enabled =trueport =0:65535filter =apache-authlogpath =/var/log/apache2/* error.logmaxretry =3findtime =600#ignoreip =192.168.1.227[apache-auth]enabled =trueport =0:65535logpath =%(apache_error_log)s[apache-badbots]# Hosts verbieten, deren Agent Spa identifiziert mmer-Roboter durchsuchen das Web# nach E-Mail-Adressen. Die Mail-Ausgaben sind buffered.enabled =trueport =0:65535logpath =%(apache_access_log)sbantime =-1maxretry =1[apache-noscript]enabled =trueport =http,httpslogpath =%(apache_error_log)s[apache-overflows]enabled =trueport =0:65535logpath =%(apache_error_log)smaxretry =2[apache-nohome]enabled =trueport =0:65535logpath =%(apache_error_log)smaxretry =2[apache-botsearch]enabled =trueport =0:65535logpath =%(apache_error_log)smaxretry =2[Apache-fakegooglebot]enabled =trueport =0:65535logpath =%(apache_access_log)smaxretry =1ignorecommand =%(ignorecommands_dir)s/apache-fakegooglebot
[apache-modsecurity]enabled =trueport =0:65535logpath =%( apache_error_log)smaxretry =2[apache-shellshock]enabled =trueport =0:65535logpath =%(apache_error_log)smaxretry =1[openhab-auth]filter =openhabaction =iptables-allports[name=NoAuthFailures]logpath =/opt/openhab/logs /request.log[nginx-http-auth]port =http,httpslogpath =%(nginx_error_log)s# Um „nginx-limit-req“ jail y zu verwenden Sie sollten `ngx_http_limit_req_module`# haben und `limit_req` und `limit_req_zone` definieren, wie in der nginx-Dokumentation# http://nginx.org/en/docs/http/ngx_http_limit_req_module.html# beschrieben oder zum Beispiel in 'config/filter. d/nginx-limit-req.conf'[nginx-limit-req]port =http,httpslogpath =%(nginx_error_log)s[nginx-botsearch]port =http,httpslogpath =%(nginx_error_log)smaxretry =2# Verbiete Angreifern das Versuchen Sie, die URL-fopen()-Funktionalität # von PHP über GET/POST-Variablen zu verwenden. – Experimentell, mit mehr als einem Jahr # Nutzung in Produktionsumgebungen.[php-url-fopen]#enabled =trueport =http,httpslogpath =%(nginx_access_log)s%(apache_access_log)s[suhosin]port =http,httpslogpath =%(suhosin_log)s[lighttpd-auth]# Dasselbe wie oben für Apaches mod_auth# Es fängt falsche Authentifizierungsport =http,httpslogpath =%(lighttpd_error_log)s## Webmail- und Groupware-Server#[roundcube-auth]port =http,httpslogpath =%(roundcube_errors_log)s[openwebmail]port =http,httpslogpath =/var/log/openwebmail.log[horde]port =http,httpslogpath =/var/log/horde/horde.log[groupoffice]port =http,httpslogpath =/home/groupoffice/log/info.log[sogo-auth]# SOGo-Groupware-Server überwachen# ohne Proxy wäre dies:# port =20000port =http,httpslogpath =/var/log/sogo/sogo.log[tine20]logpath =/var/log/tine20/tine20.logport =http,https## Webanwendungen##[drupal-auth]port =http,httpslogpath =%(syslog_daemon)sbackend =%(syslog_backend)s[guacamole]port =http, httpslogpath =/var/lo g/tomcat*/catalina.out[monit]#Ban Clients Brute-Forcing der Monit-GUI loginport =2812logpath =/var/log/monit[webmin-auth]port =10000logpath =%(syslog_authpriv)sbackend =%(syslog_backend)s [froxlor-auth]port =http,httpslogpath =%(syslog_authpriv)sbackend =%(syslog_backend)s## HTTP-Proxy-Server##[squid]port =80,443,3128,8080logpath =/var/log/squid/access.log [3proxy]port =3128logpath =/var/log/3proxy.log## FTP-Server#[proftpd]port =ftp,ftp-data,ftps,ftps-datalogpath =%(proftpd_log)sbackend =%(proftpd_backend)s[pure -ftpd]port =ftp,ftp-data,ftps,ftps-datalogpath =%(pureftpd_log)sbackend =%(pureftpd_backend)s[gssftpd]port =ftp,ftp-data,ftps,ftps-datalogpath =%(syslog_daemon)sbackend =%(syslog_backend)s[wuftpd]port =ftp,ftp-data,ftps,ftps-datalogpath =%(wuftpd_log)sbackend =%(wuftpd_backend)s[vsftpd]# oder überschreibe es in jails.local zu # logpath =%(syslog_authpriv)s# wenn Sie sich auf fehlgeschlagene PAM-Anmeldeversuche verlassen wollen# vsftpds failregex sollte mit beiden Formen übereinstimmen atsport =ftp,ftp-data,ftps,ftps-datalogpath =%(vsftpd_log)s## Mailserver## ASSP SMTP Proxy Jail[assp]port =smtp,465,submissionlogpath =/root/path/to/assp/logs /maillog.txt[courier-smtp]port =smtp,465,submissionlogpath =%(syslog_mail)sbackend =%(syslog_backend)s[postfix]port =smtp,465,submissionlogpath =%(postfix_log)sbackend =%(postfix_backend)s [postfix-rbl]port =smtp,465,submissionlogpath =%(postfix_log)sbackend =%(postfix_backend)smaxretry =1[sendmail-auth]port =Submission,465,smtplogpath =%(syslog_mail)sbackend =%(syslog_backend)s [sendmail-reject]port =smtp,465,submissionlogpath =%(syslog_mail)sbackend =%(syslog_backend)s[qmail-rbl]filter =qmailport =smtp,465,submissionlogpath =/service/qmail/log/main/current# Dovecot protokolliert standardmäßig die Mail-Syslog-Einrichtung#, kann aber von syslog_facility in der Dovecot-Konfiguration festgelegt werden. [dovecot]port =pop3,pop3s,imap,imaps,submission,465,sievelogpath =%(dovecot_log)sbackend =%(dovecot_backend) s[sieb]port =smtp,46 5,submissionlogpath =%(dovecot_log)sbackend =%(dovecot_backend)s[solid-pop3d]port =pop3,pop3slogpath =%(solidpop3d_log)s[exim]port =smtp,465,submissionlogpath =%(exim_main_log)s[exim- spam]port =smtp,465,submissionlogpath =%(exim_main_log)s[kerio]port =imap,smtp,imaps,465logpath =/opt/kerio/mailserver/store/logs/security.log## Mailserver-Authentifikatoren:könnten sein Wird für SMTP-, FTP-, Imap-Server verwendet, sodass # alle relevanten Ports gesperrt werden # [courier-auth] port =smtp, 465, submission, imap3, imaps, pop3, pop3 postfix-sasl]port =smtp,465,submission,imap3,imaps,pop3,pop3s# Sie könnten stattdessen in Betracht ziehen, /var/log/mail.warn zu überwachen, wenn Sie # Postfix ausführen, da dies die gleichen Protokollzeilen am # liefern würde "warn"-Level, aber insgesamt bei der kleineren Dateigröße.logpath =%(postfix_log)sbackend =%(postfix_backend)s[perdition]port =imap3,imaps,pop3,pop3slogpath =%(syslog_mail)sbackend =%(syslog_backend)s[squirrelmail ]port =smtp,465,submission,imap2 ,imap3,imaps,pop3,pop3s,http,https,sockslogpath =/var/lib/squirrelmail/prefs/squirrelmail_access_log[cyrus-imap]port =imap3,imapslogpath =%(syslog_mail)sbackend =%(syslog_backend)s[uwimap- auth]port =imap3,imapslogpath =%(syslog_mail)sbackend =%(syslog_backend)s### DNS-Server## !!! WARNUNG !!!# Da UDP ein verbindungsloses Protokoll ist, ist das Spoofing von IP und die Nachahmung# illegaler Aktionen viel zu einfach. Daher könnte die Aktivierung dieses Filters # eine einfache Möglichkeit zur Implementierung eines DoS gegen ein ausgewähltes # Opfer darstellen. Siehe# http://nion.modprobe.de/blog/archives/690-fail2ban-+-dns-fail.html# Bitte BENUTZEN Sie dieses Jail NICHT, es sei denn, Sie wissen, was Sie tun.## WICHTIG:siehe filter.d /named-refused für Anweisungen zum Aktivieren der Protokollierung# Dieses Jail blockiert den UDP-Datenverkehr für DNS-Anfragen.# [named-refused-udp]## filter =named-refused# port =domain,953# protocol =udp# logpath =/var/ log/named/security.log# WICHTIG:Anweisungen zum Aktivieren der Protokollierung finden Sie unter filter.d/named-refused /security.log[nsd]port =53action =%(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol="tcp", chain="%(chain) s", actname=%(banaction)s-tcp]%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%( chain)s", actname=%(banaction)s-udp]logpath =/var/log/nsd.log## Verschiedenes#[asterisk]port =5060,5061action =%(banaction)s[name=%(__name__) s-tcp, port="%(port)s", protocol="tcp", chain="%(chain)s", actname=%( banaction)s-tcp]%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname=%(banaction)s-udp]%(mta)s-whois[name=%(__name__)s, dest="%(destemail)s"]logpath =/var/log/asterisk/messagesmaxretry =10[freeswitch]port =5060,5061action =%(banaction)s[name=%(__name__)s-tcp, port="%(port)s", protocol="tcp", chain="%(chain)s", actname=% (banaction)s-tcp]%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol="udp", chain="%(chain)s", actname =%(banaction)s-udp]%(mta)s-whois[name=%(__name__)s, dest="%(destemail)s"]logpath =/var/log/freeswitch.logmaxretry =10# Zum Protokollieren falsche MySQL-Zugriffsversuche zu /etc/my.cnf in [mysqld] oder# entsprechendem Abschnitt hinzufügen:# log-warning =2## für syslog (Daemon-Funktion)# [mysqld_safe]# syslog## für eigene Logdatei# [mysqld] # log-error=/var/log/mysqld.log[mysqld-auth]#enabled =trueport =3306logpath =%(mysql_log)sbackend =%(mysql_backend)s# Falsche MongoDB-Authentifizierung protokollieren (für Details siehe Filter 'filter.d /mongodb-auth.conf')[mongodb-au th]# Port ändern bei Ausführung mit "--shardsvr" oder "--configsvr" runtime operationport =27017logpath =/var/log/mongodb/mongodb.log# Jail für erweitertes Bannen hartnäckiger Missbraucher# !!! WARNUNGEN !!!# 1. Stellen Sie sicher, dass Ihr in fail2ban.conf/.local# angegebenes Loglevel nicht auf DEBUG-Level ist -- was dann dazu führen könnte, dass fail2ban in eine # Endlosschleife gerät, die sich ständig mit nicht informativen Zeilen füttert # 2 .Erhöhen Sie dbpurgeage definiert in fail2ban.conf auf z.B. 648000 (7,5 Tage)# um Einträge für fehlgeschlagene Anmeldungen ausreichend lange aufrechtzuerhalten[recidive]logpath =/var/log/fail2ban.logbanaction =%(banaction_allports)sbantime =604800; 1 Woche findtime =86400; 1 Tag# Generischer Filter für PAM. Muss mit Aktionen verwendet werden, die alle# Ports verbieten, wie iptables-allports, shorewall[pam-generic]# Der pam-generic-Filter kann angepasst werden, um eine bestimmte Teilmenge von 'tty'sbanaction =%(banaction_allports)slogpath =%(syslog_authpriv )sbackend =%(syslog_backend)s[xinetd-fail]banaction =iptables-multiport-loglogpath =%(syslog_daemon)sbackend =%(syslog_backend)smaxretry =2# stunnel - Port muss für diesen [stunnel]logpath =/var festgelegt werden /log/stunnel4/stunnel.log[ejabberd-auth]port =5222logpath =/var/log/ejabberd/ejabberd.log[counter-strike]logpath =/opt/cstrike/logs/L[0-9]*.log # Firewall:http://www.cstrike-planet.com/faq/6tcpport =27030,27031,27032,27033,27034,27035,27036,27037,27038,27039udpport =1200,27000,27001,27002,27003,27004 ,27005,27006,27007,27008,27009,27010,27011,27012,27013,27014,27015action =%(banaction)s[name=%(__name__)s-tcp, port="%(tcpport)s", Protokoll ="tcp", chain="%(chain)s", actname=%(banaction)s-tcp]%(banaction)s[name=%(__name__)s-udp, port="%(udpport)s" , Protokoll ol="udp", chain="%(chain)s", actname=%(banaction)s-udp]# Betrachten Sie eine niedrige maxretry und eine lange Bantime# niemand außer Ihrem eigenen Nagios-Server sollte jemals nrpe[nagios]logpath =prüfen %(syslog_daemon)s; nrpe.cfg kann ein anderes log_facilitybackend =%(syslog_backend)smaxretry =1[oracleims]# definieren, siehe „oracleims“-Filterdatei für Konfigurationsanforderungen für Oracle IMS v6 und obenlogpath =/opt/sun/comms/messaging64/log/mail.log_currentbanaction =%(banaction_allports)s[directadmin]logpath =/var/log/directadmin/login.logport =2222[portsentry]logpath =/var/lib/portsentry/portsentry.historymaxretry =1[pass2allow-ftp]# dieses Pass2allow-Beispiel erlaubt FTP-Verkehr nach erfolgreicher HTTP-Authentifizierungport =ftp,ftp-data,ftps,ftps-data# Die Variable knocking_url muss mit einem geheimen Wert in jail.localknocking_url =/knocking/filter =apache-pass[knocking_url="%(knocking_url)s überschrieben werden "]# Zugriffsprotokoll der Website mit HTTP authlogpath =%(apache_access_log)sblocktype =RETURNreturntype =DROPbantime =3600maxretry =1findtime =1[murmur]# AKA mumble-serverport =64738action =%(banaction)s[name=%(__name__) s-tcp, port="%(port)s", protocol=tcp, chain="%(chain)s", actname=%(banaction)s-tc p]%(banaction)s[name=%(__name__)s-udp, port="%(port)s", protocol=udp, chain="%(chain)s", actname=%(banaction)s- udp]logpath =/var/log/mumble-server/mumble-server.log[screensharingd]# Für Mac OS Screen Sharing Service (VNC)logpath =/var/log/system.loglogencoding =utf-8[haproxy-http- auth]# HAProxy protokolliert standardmäßig nicht in eine Datei, Sie müssen es einrichten, um # Protokolle an einen Syslog-Server weiterzuleiten, der sie dann auf die Festplatte schreibt.# Siehe "haproxy-http-auth"-Filter für eine kurze Warnung Beachten Sie beim Setzen # maxretry und findtime.logpath =/var/log/haproxy.log[slapd]port =ldap,ldapsfilter =slapdlogpath =/var/log/slapd.log
Codesprache:Basic (Basic)
Danach müssen wir fail2ban mit service fail2ban restart neu starten und prüfen, ob alle Jails geladen sind von:
fail2ban-client status status
Codesprache:Bash (bash)