Różnice pomiędzy wersjami 3 i 6 (Spinanie 3 wersji)
⇤ ← Wersja 3 z 2013-10-24 20:13:48 →
Rozmiar: 1784
Edytor: wtps0n
Komentarz: Aktualizacje do stanu bieżącego
← Wersja 6 z 2016-11-19 19:17:01 → ⇥
Rozmiar: 3283
Edytor: wtps0n
Komentarz: *** (re)KREACJA ***
Usunięcia zostały oznaczone w ten sposób. Dodatki zostały oznaczone w ten sposób.
Linia 4: Linia 4:
<<TableOfContents>> <<Action(print, Wydrukuj tę dokumentację)>>` `<<Action(SlideShow, Pokaż jako slajdy)>><<BR>>
<<Navigation(children)>>
<<TableOfContents()>>
Linia 6: Linia 8:
= Konfiugracja fail2ban = = Konfiguracja fail2ban =
Linia 8: Linia 10:
W ports pojawił się bardzo fajny skrypt napisany w [[http://www.python.org|pythonie|target="_blank"]], który powoduje dopisywanie regułek blokujących dla adresów IP, które próbują atakować serwer. [[FreshPorts:security/py-fail2ban|fail2ban]] to skrypt napisany w [[http://www.python.org/|pythonie|target="_blank"]], który powoduje dopisywanie regułek blokujących dla adresów IP, które próbują atakować serwer.
Linia 11: Linia 13:
Konfiguracja globalna to dwa pliki (umieszczone w repozytorium CVS):
{{{#!shell
Konfiguracja globalna to dwa pliki (umieszczone w [[UniMaster|repozytorium skryptów]]):
{{{#!highlight bash numbers=off
Linia 17: Linia 19:
=== JAIL === == Jail ==
Linia 28: Linia 30:
Niestety fail2ban powstał głównie z myślą o Linuxie oraz iptables. Dlatego też trzeba odpowiednio połatać konfigurację specyficznie dla FreeBSD. Oto różnice (patche):

=== action.d/ipfw.conf ===
{{{#!shell numbers=off
cd /usr/local/etc/fail2ban/action.d
patch -p < ~wtp/scripts/fail2ban/ipfw.conf.patch
}}}

=== filter.d/ssh.conf ===
{{{#!shell numbers=off
cd /usr/local/etc/fail2ban/filter.d
cp bsd-sshd.conf sshd.conf
patch -p < ~wtp/scripts/fail2ban/sshd.conf.patch
Niestety [[FreshPorts:security/py-fail2ban|fail2ban]] powstał głównie z myślą o Linuxie oraz iptables. Dlatego też trzeba odpowiednio połatać konfigurację specyficznie dla [[https://www.freebsd.org|FreeBSD|target="_blank"]]. Oto różnice (patche). Całość została umieszczona w [[UniMaster|repozytorium skryptów]], tak więc po zainstalowaniu odpowiedniego `Makefile` można wydać polecenie:
{{{#!highlight bash numbers=off
cd /usr/local/etc/fail2ban/
make patch start
Linia 44: Linia 37:
{{{#!shell numbers=off
mkdir -p /var/log/fail2ban/

Przygotowanie katalogów oraz pliku `/etc/rc.conf`:
{{{#!highlight bash numbers=off
mkdir -p /var/log/fail2ban/ /var/db/fail2ban
Linia 48: Linia 43:
}}}
Linia 49: Linia 45:
/usr/local/etc/rc.d/fail2ban start Właściwe uruchomienie:
{{{#!highlight bash numbers=off
cd /usr/local/etc/fail2ban/
make start
}}}
Linia 51: Linia 51:
# powinno byc widac regule 64000 zawierajaca table(22)
ipfw show
oraz sprawdzenie poprawności kopnfiguracji:
{{{#!highlight bash numbers=off
cd /usr/local/etc/fail2ban/
make show

# wylistowanie zawartości table(22)
make list
Linia 54: Linia 59:

= fail2ban dla jails =
Mechanizm jail(8) nie pozwala, aby reguły firewalla były uruchamiania wewnątrz jail. Dlatego też, [[FreshPorts:security/py-fail2ban|fail2ban]] należy uruchomić na głównym ''host'' ("''serwerze matce''"). Należy tylko wziąć pod uwagę odpowiednie pliki do monitorowania. Np.:

{{{#!highlight ini numbers=off
# definicja monitorowania SSHd
#
[sshd-ipfw]
enabled = true
filter = sshd
action = ipfw[localhost=31.179.155.109]
logpath = /usr/jails/smtpd.nss.local/var/log/auth.log
ignoreip = 127.0.0.1 ...
}}}

{{{#!wiki comment
= Źródła w sieci internet =
 * [[url1||target="_blank"]]
 * [[url2||target="_blank"]]
 * [[url3||target="_blank"]]
 * [[url4||target="_blank"]]
}}}

{{{#!wiki comment
Gdy trzeba dołączyć inną (pod)stronę
https://moinmo.in/HelpOnMacros/Include
https://moinmo.in/HelpOnParsers
<<Include(pagename, heading, level, from="regex", to="regex", sort=ascending|descending, items=n, skipitems=n, titlesonly, editlink)>>
}}}

----
{i} ` `<<GetVal(SlownikNewBsd,adm-podpis)>>

Wydrukuj tę dokumentację Pokaż jako slajdy

Konfiguracja fail2ban

fail2ban to skrypt napisany w pythonie, który powoduje dopisywanie regułek blokujących dla adresów IP, które próbują atakować serwer.

Konfiguracja globalna

Konfiguracja globalna to dwa pliki (umieszczone w repozytorium skryptów):

/usr/local/etc/fail2ban/fail2ban.local
/usr/local/etc/fail2ban/jail.local

Jail

Nie należy odnosić tego do mechanizmu jail(8). Jest to raczej sparowanie akcji oraz sposobu filtrowania wraz z ustawieniami, jaki plik logu należy przeglądać.

Akcje

Akcje (czyli co robić, jeżeli wystąpi zdarzenie) zapisane są w podkatalogu action.d/. Każda usługa (np. bsd-ipfw) jest zapisany w stosownym pliku .conf.

Filtry

Co należy filtrować (REGEXPy), których należy poszukiwać w logach, aby uruchomić akcję banowania.

Poprawki dla FreeBSD

Niestety fail2ban powstał głównie z myślą o Linuxie oraz iptables. Dlatego też trzeba odpowiednio połatać konfigurację specyficznie dla FreeBSD. Oto różnice (patche). Całość została umieszczona w repozytorium skryptów, tak więc po zainstalowaniu odpowiedniego Makefile można wydać polecenie:

cd /usr/local/etc/fail2ban/
make patch start

Uruchomienie demona

Przygotowanie katalogów oraz pliku /etc/rc.conf:

mkdir -p /var/log/fail2ban/ /var/db/fail2ban
echo 'fail2ban_enable="YES"' >> /etc/rc.conf
echo 'fail2ban_flags="-x"' >> /etc/rc.conf

Właściwe uruchomienie:

cd /usr/local/etc/fail2ban/
make start

oraz sprawdzenie poprawności kopnfiguracji:

cd /usr/local/etc/fail2ban/
make show

# wylistowanie zawartości table(22)
make list

fail2ban dla jails

Mechanizm jail(8) nie pozwala, aby reguły firewalla były uruchamiania wewnątrz jail. Dlatego też, fail2ban należy uruchomić na głównym host ("serwerze matce"). Należy tylko wziąć pod uwagę odpowiednie pliki do monitorowania. Np.:

# definicja monitorowania SSHd
#
[sshd-ipfw]
enabled  = true
filter   = sshd
action   = ipfw[localhost=31.179.155.109]
logpath  = /usr/jails/smtpd.nss.local/var/log/auth.log
ignoreip = 127.0.0.1 ...


{i}  (c) 2004 - 2026 BSD Serwis Krzysztof Stryjek. W przypadku błędów, poprawek proszę kontaktować się z administratorem wiki.

FailTwoBan (ostatnio edytowane 2016-11-19 19:17:01 przez wtps0n)