Suojaa Zimbra OSE:ta raa'alta voimalta ja DoS-hyökkäyksiltä

Zimbra Collaboration Suite Open-Source Editionissa on useita tehokkaita työkaluja tietoturvan varmistamiseksi. Heidän joukossa Jälkiruutu - ratkaisu sähköpostipalvelimen suojaamiseen bottiverkkojen hyökkäyksiltä, ​​ClamAV - virustorjunta, joka voi tarkistaa saapuvat tiedostot ja kirjeet haittaohjelmien tartunnan varalta, sekä SpamAssassin - yksi parhaista roskapostisuodattimista tänään. Nämä työkalut eivät kuitenkaan pysty suojaamaan Zimbra OSE:tä raa'alta voimalta. Ei kaikkein tyylikkäimmät, mutta silti melko tehokkaat, raa'at pakottavat salasanat käyttämällä erityistä sanakirjaa, eivät ole täynnä vain onnistuneen hakkeroinnin todennäköisyyttä kaikkine seurauksineen, vaan myös merkittävän kuormituksen luomista palvelimelle, joka käsittelee kaikki epäonnistuneet yritykset murtaa palvelin Zimbra OSE:llä.

Suojaa Zimbra OSE:ta raa'alta voimalta ja DoS-hyökkäyksiltä

Periaatteessa voit suojautua raaalta voimalta käyttämällä tavallisia Zimbra OSE -työkaluja. Salasanan suojauskäytäntöasetusten avulla voit määrittää epäonnistuneiden salasanan syöttöyritysten määrän, jonka jälkeen mahdollisesti hyökätty tili estetään. Suurin ongelma tässä lähestymistavassa on, että syntyy tilanteita, joissa yhden tai useamman työntekijän tilit voivat jäädä raa'an voiman hyökkäyksen vuoksi, johon heillä ei ole mitään tekemistä, ja siitä johtuva työntekijöiden työseisokki voi aiheuttaa suuria tappioita. yritys. Tästä syystä on parasta olla käyttämättä tätä suojaa raakaa voimaa vastaan.

Suojaa Zimbra OSE:ta raa'alta voimalta ja DoS-hyökkäyksiltä

Suojaamaan raakaa voimaa vastaan ​​soveltuu paljon paremmin erikoistyökalu nimeltä DoSFilter, joka on sisäänrakennettu Zimbra OSE:hen ja joka voi automaattisesti katkaista yhteyden Zimbra OSE:hen HTTP:n kautta. Toisin sanoen DoSFilterin toimintaperiaate on samanlainen kuin PostScreenin toimintaperiaate, vain sitä käytetään eri protokollalle. DoSFilter, joka alun perin suunniteltu rajoittamaan yksittäisen käyttäjän suorittamien toimien määrää, voi tarjota myös raa'an voiman suojan. Sen tärkein ero Zimbraan sisäänrakennettuun työkaluun verrattuna on, että se ei estä tietyn määrän epäonnistuneita yrityksiä jälkeen käyttäjää itseään, vaan IP-osoitetta, josta useaan kertaan yritetään kirjautua tietylle tilille. Tämän ansiosta järjestelmänvalvoja ei voi vain suojautua raakaa voimaa vastaan, vaan myös välttää yrityksen työntekijöiden estämisen lisäämällä yrityksensä sisäisen verkon luotettujen IP-osoitteiden ja aliverkkojen luetteloon.

DoSFilterin suuri etu on, että lukuisten tiettyyn tiliin kirjautumisyritysten lisäksi tämän työkalun avulla voit automaattisesti estää ne hyökkääjät, jotka ottivat haltuunsa työntekijän todennustiedot ja kirjautuivat sitten onnistuneesti hänen tililleen ja alkoivat lähettää satoja pyyntöjä. palvelimelle.

Voit määrittää DoSFilterin seuraavilla konsolikomennoilla:

  • zimbraHttpDosFilterMaxRequestsPerSec — Tällä komennolla voit asettaa yhdelle käyttäjälle sallittujen yhteyksien enimmäismäärän. Oletuksena tämä arvo on 30 yhteyttä.
  • zimbraHttpDosFilterDelayMillis - Tällä komennolla voit asettaa millisekunteina viiveen yhteyksille, jotka ylittävät edellisen komennon määrittämän rajan. Kokonaislukuarvojen lisäksi järjestelmänvalvoja voi määrittää arvon 0, jotta viivettä ei ole ollenkaan, ja -1, jotta kaikki määritetyn rajan ylittävät yhteydet yksinkertaisesti keskeytyvät. Oletusarvo on -1.
  • zimbraHttpThrottleSafeIPs — Tämän komennon avulla järjestelmänvalvoja voi määrittää luotettavia IP-osoitteita ja aliverkkoja, joihin yllä luetellut rajoitukset eivät koske. Huomaa, että tämän komennon syntaksi voi vaihdella halutun tuloksen mukaan. Joten esimerkiksi kirjoittamalla komennon zmprov mcf zimbraHttpThrottleSafeIPs 127.0.0.1, korvaat koko luettelon kokonaan ja jätät siihen vain yhden IP-osoitteen. Jos annat komennon zmprov mcf +zimbraHttpThrottleSafeIPs 127.0.0.1, antamasi IP-osoite lisätään sallittujen luetteloon. Vastaavasti vähennysmerkkiä käyttämällä voit poistaa minkä tahansa IP-osoitteen sallittujen luettelosta.

Huomaa, että DoSFilter voi aiheuttaa useita ongelmia käytettäessä Zextras Suite Pro -laajennuksia. Niiden välttämiseksi suosittelemme lisäämään samanaikaisten yhteyksien määrää 30:stä 100:aan komennolla zmprov mcf zimbraHttpDosFilterMaxRequestsPerSec 100. Lisäksi suosittelemme yrityksen sisäisen verkon lisäämistä sallittujen luetteloon. Tämä voidaan tehdä komennolla zmprov mcf +zimbraHttpThrottleSafeIPs 192.168.0.0/24. Kun olet tehnyt muutoksia DoSFilteriin, muista käynnistää sähköpostipalvelin uudelleen komennolla zmmailboxdctl käynnistyy uudelleen.

DoSFilterin suurin haitta on, että se toimii sovellustasolla ja voi siksi vain rajoittaa hyökkääjien kykyä suorittaa erilaisia ​​toimintoja palvelimella rajoittamatta kykyä muodostaa yhteyttä pohjoiseen. Tästä johtuen palvelimelle lähetetyt todennuspyynnöt tai kirjeiden lähettäminen, vaikka ne ilmeisesti epäonnistuvatkin, edustavat silti vanhaa hyvää DoS-hyökkäystä, jota ei voida pysäyttää näin korkealla tasolla.

Yrityksesi palvelimen täydelliseen suojaamiseen Zimbra OSE:llä voit käyttää ratkaisua, kuten Fail2ban, joka on kehys, joka pystyy jatkuvasti tarkkailemaan tietojärjestelmän lokeja toistuvien toimien varalta ja estää tunkeilijan muuttamalla palomuuriasetuksia. Esto näin alhaisella tasolla mahdollistaa hyökkääjien poistamisen käytöstä heti, kun IP-yhteys muodostetaan palvelimeen. Siten Fail2Ban voi täydentää täydellisesti DoSFilterin avulla rakennettua suojausta. Selvitetään, kuinka voit yhdistää Fail2Banin Zimbra OSE:hen ja parantaa siten yrityksesi IT-infrastruktuurin turvallisuutta.

Kuten kaikki muutkin yritysluokan sovellukset, Zimbra Collaboration Suite Open-Source Edition pitää yksityiskohtaisia ​​lokeja työstään. Suurin osa niistä on tallennettu kansioon /opt/zimbra/log/ tiedostojen muodossa. Tässä on vain muutamia niistä:

  • mailbox.log — Jetty-postipalvelun lokit
  • audit.log - todennuslokit
  • clamd.log — virustentorjuntatoimintolokit
  • freshclam.log - virustorjuntapäivityslokit
  • convertd.log — liitteiden muuntimen lokit
  • zimbrastats.csv - palvelimen suorituskykylokit

Zimbra-lokit löytyvät myös tiedostosta /var/log/zimbra.log, jossa pidetään lokit Postfixista ja itse Zimbrasta.

Suojellaksemme järjestelmäämme raakaa voimaa vastaan, valvomme mailbox.log, audit.log и zimbra.log.

Jotta kaikki toimisi, Fail2Ban ja iptables on asennettu palvelimellesi Zimbra OSE:n kanssa. Jos käytät Ubuntua, voit tehdä tämän komennoilla dpkg -s fail2ban, jos käytät CentOS:ää, voit tarkistaa tämän komennoilla yum list asennettu fail2ban. Jos sinulla ei ole Fail2Bania asennettuna, sen asentaminen ei ole ongelma, koska tämä paketti on saatavana melkein kaikissa vakiovarastoissa.

Kun kaikki tarvittavat ohjelmistot on asennettu, voit aloittaa Fail2Banin asennuksen. Tätä varten sinun on luotava asetustiedosto /etc/fail2ban/filter.d/zimbra.conf, johon kirjoitamme säännöllisiä lausekkeita Zimbra OSE -lokeille, jotka vastaavat virheellisiä kirjautumisyrityksiä ja laukaisevat Fail2Ban-mekanismeja. Tässä on esimerkki zimbra.conf-tiedoston sisällöstä, jossa on joukko säännöllisiä lausekkeita, jotka vastaavat Zimbra OSE:n aiheuttamia erilaisia ​​virheitä, kun todennusyritys epäonnistuu:

# Fail2Ban configuration file
 
[Definition]
failregex = [ip=<HOST>;] account - authentication failed for .* (no such account)$
                        [ip=<HOST>;] security - cmd=Auth; .* error=authentication failed for .*, invalid password;$
                        ;oip=<HOST>;.* security - cmd=Auth; .* protocol=soap; error=authentication failed for .* invalid password;$
                        ;oip=<HOST>;.* security - cmd=Auth; .* protocol=imap; error=authentication failed for .* invalid password;$
                        [oip=<HOST>;.* SoapEngine - handler exception: authentication failed for .*, account not found$
                        WARN .*;ip=<HOST>;ua=ZimbraWebClient .* security - cmd=AdminAuth; .* error=authentication failed for .*;$

ignoreregex =

Kun Zimbra OSE:n säännölliset lausekkeet on käännetty, on aika alkaa muokata itse Fail2banin asetuksia. Tämän apuohjelman asetukset ovat tiedostossa /etc/fail2ban/jail.conf. Tehdään siitä varmuuden vuoksi varmuuskopio komennolla cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.bak. Sen jälkeen pienennämme tämän tiedoston suunnilleen seuraavaan muotoon:

# Fail2Ban configuration file
 
[DEFAULT]
ignoreip = 192.168.0.1/24
bantime = 600
findtime = 600
maxretry = 5
backend = auto
 
[ssh-iptables]
enabled = false
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
sendmail-whois[name=SSH, [email protected], [email protected]]
logpath = /var/log/messages
maxretry = 5
 
[sasl-iptables]
enabled = false
filter = sasl
backend = polling
action = iptables[name=sasl, port=smtp, protocol=tcp]
sendmail-whois[name=sasl, [email protected]]
logpath = /var/log/zimbra.log
 
[ssh-tcpwrapper]
enabled = false
filter = sshd
action = hostsdeny
sendmail-whois[name=SSH, dest=support@ company.ru]
ignoreregex = for myuser from
logpath = /var/log/messages
 
[zimbra-account]
enabled = true
filter = zimbra
action = iptables-allports[name=zimbra-account]
sendmail[name=zimbra-account, [email protected] ]
logpath = /opt/zimbra/log/mailbox.log
bantime = 600
maxretry = 5
 
[zimbra-audit]
enabled = true
filter = zimbra
action = iptables-allports[name=zimbra-audit]
sendmail[name=Zimbra-audit, [email protected]]
logpath = /opt/zimbra/log/audit.log
bantime = 600
maxretry = 5
 
[zimbra-recipient]
enabled = true
filter = zimbra
action = iptables-allports[name=zimbra-recipient]
sendmail[name=Zimbra-recipient, [email protected]]
logpath = /var/log/zimbra.log
bantime = 172800
maxretry = 5
 
[postfix]
enabled = true
filter = postfix
action = iptables-multiport[name=postfix, port=smtp, protocol=tcp]
sendmail-buffered[name=Postfix, [email protected]]
logpath = /var/log/zimbra.log
bantime = -1
maxretry = 5

Vaikka tämä esimerkki on melko yleinen, kannattaa silti selittää joitain parametreja, joita saatat haluta muuttaa, kun määrität Fail2Banin itse:

  • Jätä huomioimatta — Tällä parametrilla voit määrittää tietyn IP-osoitteen tai aliverkon, josta Fail2Ban ei saa tarkistaa osoitteita. Pääsääntöisesti yrityksen sisäinen verkko ja muut luotettavat osoitteet lisätään ohitettujen osoitteiden luetteloon.
  • Bantime — Aika, jonka rikoksentekijälle määrätään pelikielto. Mitattu sekunneissa. Arvo -1 tarkoittaa pysyvää kieltoa.
  • Maxretry — Enimmäismäärä, jolloin yksi IP-osoite voi yrittää päästä palvelimeen.
  • Lähetä postia — Asetus, jonka avulla voit lähettää automaattisesti sähköposti-ilmoituksia, kun Fail2Ban laukeaa.
  • Etsi aikaa — Asetus, jonka avulla voit asettaa ajanjakson, jonka jälkeen IP-osoite voi yrittää päästä palvelimeen uudelleen, kun epäonnistuneiden yritysten enimmäismäärä on käytetty (maxretry-parametri)

Kun olet tallentanut tiedoston Fail2Ban-asetuksella, sinun tarvitsee vain käynnistää tämä apuohjelma uudelleen komennolla palvelun fail2ban uudelleenkäynnistys. Uudelleenkäynnistyksen jälkeen tärkeimpiä Zimbra-lokeja aletaan valvoa jatkuvasti säännöllisten lausekkeiden noudattamisen varalta. Tämän ansiosta järjestelmänvalvoja pystyy käytännössä eliminoimaan kaikki mahdolliset hyökkääjät tunkeutumaan paitsi Zimbra Collaboration Suite Open-Source Edition -postilaatikoihin, myös suojaamaan kaikkia Zimbra OSE:ssa käynnissä olevia palveluita ja olemaan myös tietoisia kaikista yrityksistä päästä luvatta. .

Kaikissa Zextras Suiteen liittyvissä kysymyksissä voit ottaa yhteyttä Zextrasin edustajaan Ekaterina Triandafilidiin sähköpostitse [sähköposti suojattu]

Lähde: will.com

Lisää kommentti