Tipy na ochranu servera Linux pred externými útokmi

Myslím, že ľudia, ktorí jazdia Servery Linux vedia a vedia o DENHOSTS y Fail2ban. Pre tých, ktorí ho nepoznajú, urobím vysvetliť trochu o týchto dvoch aplikácie.

John Fredy Perez je jedným z víťazov z našej týždennej súťaže: «Podeľte sa o to, čo viete o systéme Linux«. Blahoželáme! Úzkosť z zúčastniť sa a prispejete do komunity rovnako ako John?

Tieto dve aplikácie nainštalujeme a nakonfigurujeme, aby sme predišli následným bolestiam hlavy. Najskôr vysvetlíme, čo sú tieto dve aplikácie a aké sú ich funkcie:

Fail2Ban

Jedná sa o analyzátor protokolov, ktorý vyhľadáva neúspešné pokusy o registráciu a blokuje adresy IP, z ktorých tieto pokusy pochádzajú. Je distribuovaný pod licenciou GNU a zvyčajne funguje na všetkých systémoch, ktoré sú prepojené so systémom riadenia útokov alebo lokálnym firewallom.

Fail2Ban má vynikajúcu konfiguráciu a tiež dokáže vytvárať pravidlá pre programy
vlastné alebo tretie strany.

DENHOSTS

Je to bezpečnostný nástroj napísaný v pythone, ktorý monitoruje protokoly prístupového servera, aby zabránil útokom hrubou silou na virtuálny server. Program funguje tak, že zakazuje adresy IP, ktoré presahujú určitý počet neúspešných pokusov o pripojenie.

Tieto aplikácie pre Linux - DenyHosts a Fail2ban - je možné používať samostatne alebo spoločne. V mojom prípade mám obidve spolupracovať.

Inštalácia a konfigurácia každého z nich závisí od použitej distribúcie. Tento príspevok je zameraný na CentOS 6.3, aj keď rozdiely medzi ostatnými distribúciami nie sú príliš výrazné.

No tak, hor sa do práce.

Inštalácia a konfigurácia Fail2Ban

Táto aplikácia generuje dynamické pravidlá v samotnom firewalle Linux a je zodpovedná za vytváranie živých pravidiel v IpTables.

inštalácia

Pre inštaláciu a:

yum nainštaluj fail2ban 

Ak sa balík nezobrazí, musíme pridať potrebné úložisko:

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

S týmto by ste mali začať inštalovať aplikáciu spolu s jej závislosťami.

Teraz musíme nakonfigurovať Fail2Ban na analýzu protokolov, ktoré chceme, a blokovanie
IP adresy, zasielanie oznámení prostredníctvom e-mailu. Aby sme to dosiahli, musíme upraviť súbor jail.conf, ktorý nájdeme v / etc / fail2ban

cd / etc / fail2ban
nano väzenie.conf

V tomto súbore by sa malo robiť toto:

  • Modify je bantime hodnota, táto hodnota určuje čas v sekundách, kedy bude IP útočníka zablokovaná, štandardne hodnota prichádza za 600 sekúnd.
  • Nájdite hodnotu maxretry, ktorá bude predstavovať počet zlyhaní overenia adresy IP pred blokovaním.
  • Pridajte naše IP do parametra ignoreip. Aplikácia bude v tomto parametri ignorovať naše overené adresy IP.
[VÝCHODNÉ]
# „ignoreip“ môže byť adresa IP, maska ​​CIDR alebo hostiteľ DNS. Fail2ban nebude
# zakázať hostiteľa, ktorý sa zhoduje s adresou v tomto zozname. Môže byť niekoľko adries
# definované pomocou oddeľovača medzery.
ignoreip = 127.0.0.1

# „bantime“ je počet sekúnd, počas ktorých je hostiteľ zakázaný.
bantime = 600

# Hostiteľ je zakázaný, ak vygeneroval „maxretry“ počas posledného „času hľadania“
# sekúnd.
findtime = 600

# „maxretry“ je počet zlyhaní predtým, ako bude hostiteľovi zablokovaný prístup.
maxretry = 3

Príklad toho, ako to môže vyzerať, je nasledujúci:

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

Nakonfigurujte Fail2Ban a SSH

Aby sme vyhľadali neúspešné pokusy o prihlásenie SSH, upravujeme súbor tak, aby vyzeral takto:

[ssh-iptables] 
enabled = true
filter = 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, ktorý bude analyzovať fail2ban
maxretry = 3 # akákoľvek IP adresa, ktorá má tri alebo viac neúspešných pokusov, bude blokovaná.
bantime = 86400 # 24 hodinový čas zákazu vyjadrený v sekundách

Nezabudnite, že ak upravíte port, na ktorom SSH počúva, musíte upraviť aj parameter portu.

Táto aplikácia funguje nielen na neoprávnený prístup v SSH, ale aj na apache, na čítanie protokolov Asterisk atď.

Inštalácia a konfigurácia DenyHOSTS

Jeho činnosť je založená na použití súboru /etc/hosts.deny, to znamená na blokovaní adries „útočiacich“ hostiteľov, vytvorení zoznamu odmietnutých hostiteľov.

Inštaláciu z úložísk je možné získať nasledujúcim príkazom:

yum nainštalovať denyhosts 

Konfiguračný súbor sa nachádza v /etc/denyhosts.conf

Predtým, ako budeme pokračovať, môžeme ako ľudia robiť chyby a robiť typickú „vrstvu 8“, keď pristupujeme k niektorej zo služieb a blokujeme sa. Aby sme sa tomu vyhli, upravíme súbor /etc/hosts.allow a pridáme IP adresy strojov, z ktorých nechceme byť obmedzovaní kvôli zlyhaniu prístupu.

Upravte súbor denyhosts.conf

Aby sme v nastaveniach nešli tak ďaleko, v tomto súbore ideme iba upravovať a odkomentovať niektoré parametre. Sú to:

SYNC_SERVER = http://xmlrpc.denyhosts.net:9911
SYNC_INTERVAL = 1 hod
SYNC_UPLOAD = áno
SYNC_DOWNLOAD = áno
SYNC_DOWNLOAD_THRESHOLD = 3
SYNC_DOWNLOAD_RESILIENCY = 5 h

Konfiguráciu teda necháme prakticky predvolenú, ale s veľkým zabezpečením proti útokom SSH.

nano /etc/hosts.allow

príklad:

sshd: 127.0.0.1 
sshd: 192.168.1.10
sshd: 192.168.0. *

Potom reštartujeme službu:

/etc/init.d/denyhosts reštartovať

Týmto udeľujeme povolenie IP, rozsahu IP a samozrejme nášmu rozhraniu spätnej väzby. Niečo, čo som neskúšal - preto neviem, či to funguje - je pridať do tohto súboru DNS; teda so službami ako DynDNS. Ak tak urobím, poviem vám, ako to šlo.

S určitými možnosťami a úpravami tiež zaistíme, že po uplynutí času, ktorý uvedieme v konfigurácii DenyHOSTS, sa uložené adresy vyčistia a aktualizujú sa o ďalšie zoznamy vytvorené inými - ak to označíme - poskytnutie prístupu server DenyHOSTS.

Aby ste z času na čas vyčistili uložené adresy, tak ako sú nakonfigurované, musí byť démon spustený s parametrom –purge:

/etc/init.d/denyhosts štart --purge

Okrem toho ho musíme zahrnúť na začiatok systému:

chkconfig denyhosts na

Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.