Tipy na ochranu serveru Linux před vnějšími útoky

Myslím, že lidé, kteří řídí Servery Linux vědět a vědět o DENYHOSTS y Fail2ban. Pro ty, kteří ho neznají, udělám vysvětlit trochu o těchto dvou aplikace.

John Fredy Perez je jedním z vítězové z naší týdenní soutěže: «Sdílejte, co víte o Linuxu«. Gratulujeme! Úzkost z účastnit se a přispějte do komunity, stejně jako John?

Nainstalujeme a nakonfigurujeme tyto dvě aplikace, abychom se vyhnuli následným bolestem hlavy. Nejprve vysvětlíme, co jsou tyto dvě aplikace a jaké jsou jejich funkce:

Fail2Ban

Jedná se o analyzátor protokolů, který hledá neúspěšné pokusy o registraci a blokuje adresy IP, ze kterých tyto pokusy pocházejí. Je distribuován pod licencí GNU a obvykle funguje na všech systémech, které jsou propojeny se systémem řízení útoků nebo lokálním firewallem.

Fail2Ban má skvělou konfiguraci a může také vytvářet pravidla pro programy
vlastní nebo třetí strany.

DENYHOSTS

Jedná se o bezpečnostní nástroj napsaný v pythonu, který sleduje protokoly přístupového serveru, aby se zabránilo útokům hrubou silou na virtuální server. Program funguje tak, že zakazuje adresy IP, které překračují určitý počet neúspěšných pokusů o připojení.

Tyto aplikace pro Linux - DenyHosts a Fail2ban - lze použít samostatně nebo společně. V mém případě je nechám oba pracovat společně.

Instalace a konfigurace každého z nich závisí na distribuci, kterou používáte. Tento příspěvek je zaměřen na CentOS 6.3, i když rozdíly mezi ostatními distribucemi nejsou příliš výrazné.

Pojďme tedy do práce.

Instalace a konfigurace Fail2Ban

Tato aplikace generuje dynamická pravidla v samotném firewallu Linux a je zodpovědná za vytváření živých pravidel v IpTables.

Instalace

Pro instalaci a:

yum nainstalovat fail2ban 

Pokud se balíček neobjeví, musíme přidat potřebné úložiště:

rpm -Uvh http://mirror.metrocast.net/fedora/epel/6/i386/epel-release-6-7.noarch.rpm

S tímto byste měli začít instalovat aplikaci spolu s jejími závislostmi.

Nyní musíme nakonfigurovat Fail2Ban, aby analyzoval protokoly, které chceme, a blokovat
IP adresy, zasílání upozornění prostřednictvím e-mailu. K tomu musíme upravit soubor jail.conf, který najdeme v / etc / fail2ban

cd / etc / fail2ban
nano vězení.conf

V tomto souboru je třeba provést následující:

  • Modify je bantime hodnota, tato hodnota určuje čas v sekundách, kdy bude IP útočníka zablokována, standardně hodnota přijde za 600 sekund.
  • Najděte hodnotu maxretry, která bude udávat, kolikrát může mít IP neúspěšnou autentizaci, než bude blokována.
  • Přidejte naše IP do parametru ignoreip. Zde aplikace bude ignorovat naše ověřené IP adresy v tomto parametru.
[VÝCHOZÍ]
# „ignoreip“ může být IP adresa, maska ​​CIDR nebo hostitel DNS. Fail2ban ne
# zakázat hostitele, který odpovídá adrese v tomto seznamu. Může být několik adres
# definováno pomocí oddělovače mezer.
ignoreip = 127.0.0.1

# „bantime“ je počet sekund, po který je hostitel zakázán.
bantime = 600

# Hostitel je zakázán, pokud během posledního „vyhledávacího času“ vygeneroval „maxretry“
# sekund.
findtime = 600

# „maxretry“ je počet selhání, než bude hostiteli zakázán přístup.
maxretry = 3

Příklad toho, jak to může vypadat, je následující:

ignoreip = 127.0.0.1 190.25.242.75 192.168.1.0/24
bantime = 800
maxretry = 2

Nakonfigurujte Fail2Ban a SSH

Abychom vyhledali neúspěšné pokusy o přihlášení SSH, upravujeme soubor, dokud nevypadá takto:

[ssh-iptables] 
enabled = true
filtr = sshd
action = iptables [name = SSH, port = 22, protocol = tcp] sendmail-whois [name = SSH, dest=FredySnake@outlook.com, sender = fail2ban @ localhost] logpath = / var / log / secure # Toto je log, který bude analyzovat fail2ban
maxretry = 3 # jakákoli IP adresa, která má tři nebo více neúspěšných pokusů, bude blokována.
bantime = 86400 # 24 hodinový čas zákazu vyjádřený v sekundách

Nezapomeňte, že pokud změníte port, kde naslouchá SSH, musíte také upravit parametr portu.

Tato aplikace funguje nejen pro neoprávněný přístup k SSH, ale také pro apache, ke čtení logů Asterisk atd.

Instalace a konfigurace DenyHOSTS

Jeho fungování je založeno na použití souboru /etc/hosts.deny, tj. Na blokování adres „útočících“ hostitelů a vytvoření seznamu odmítnutých hostitelů.

Instalaci z úložišť lze získat pomocí následujícího příkazu:

yum nainstalovat denyhosts 

Konfigurační soubor je umístěn v /etc/denyhosts.conf

Než budeme pokračovat, můžeme jako lidé dělat chyby a dělat typickou „vrstvu 8“, když přistupujeme k některé ze služeb a blokujeme sami sebe. Abychom tomu zabránili, upravíme soubor /etc/hosts.allow a přidáme IP adresy strojů, ze kterých nechceme být omezeni kvůli selhání přístupu.

Upravte soubor denyhosts.conf

Abychom v nastavení nešli tak daleko, v tomto souboru upravíme a odkomentujeme pouze některé parametry. Tyto jsou:

SYNC_SERVER = http://xmlrpc.denyhosts.net:9911
SYNC_INTERVAL = 1 hod
SYNC_UPLOAD = ano
SYNC_DOWNLOAD = ano
SYNC_DOWNLOAD_THRESHOLD = 3
SYNC_DOWNLOAD_RESILIENCY = 5 hodin

Konfiguraci tedy ponecháme prakticky ve výchozím nastavení, ale s velkým zabezpečením proti útokům SSH.

nano /etc/hosts.allow

příklad:

sshd: 127.0.0.1 
sshd: 192.168.1.10
sshd: 192.168.0. *

Poté restartujeme službu:

/etc/init.d/denyhosts restartujte

Tímto udělujeme povolení IP, rozsahu IP a samozřejmě našemu rozhraní zpětné smyčky. Něco, co jsem nezkoušel - proto nevím, jestli to funguje - je přidání DNS do tohoto souboru; to znamená se službami, jako je DynDNS. Pokud ano, řeknu vám, jak to šlo.

S určitými možnostmi a nastaveními se také ujistíme, že po uplynutí doby, kterou uvedeme v konfiguraci DenyHOSTS, budou uložené adresy vyčištěny a budou aktualizovány o další seznamy vytvořené jinými - pokud to označíme - udělování povolení přístup na server DenyHOSTS.

Chcete-li občas vyčistit uložené adresy, jak je nakonfigurováno, musí být démon spuštěn s parametrem –purge:

/etc/init.d/denyhosts start --purge

Kromě toho jej musíme zahrnout na začátku systému:

chkconfig denyhosts na

Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.