Beskerm Zimbra OSE teen brute geweld en DoS-aanvalle

Zimbra Collaboration Suite Open-Source Edition het verskeie kragtige inligtingsekuriteitnutsmiddels in sy arsenaal. Tussen hulle Posskerm - 'n oplossing om die posbediener te beskerm teen aanvalle deur botnets, ClamAV - 'n antivirus wat inkomende lêers en briewe kan skandeer vir malware-infeksie, sowel as Spam Assassin een van die beste strooiposfilters vandag. Hierdie instrumente is egter nie in staat om Zimbra OSE te beskerm teen hierdie tipe aanval, soos brute geweld nie. Nie die mees elegante, maar nog steeds redelik effektiewe wagwoord brute krag wat 'n spesiale woordeboek gebruik, is nie net belaai met die waarskynlikheid van 'n suksesvolle hack met al die gevolge nie, maar ook met die skepping van 'n aansienlike las op die bediener wat alle onsuksesvolle pogings verwerk. om die bediener met Zimbra OSE te hack.

Beskerm Zimbra OSE teen brute geweld en DoS-aanvalle

In beginsel kan u uself beskerm teen brute geweld met behulp van standaard Zimbra OSE-gereedskap. Wagwoordsekuriteitbeleidinstellings laat jou toe om die aantal onsuksesvolle wagwoordinvoerpogings te stel, waarna die potensieel aangeval rekening geblokkeer word. Die grootste probleem met hierdie benadering is dat daar situasies is waarin die rekeninge van een of meer werknemers geblokkeer kan word as gevolg van 'n brute-krag-aanval waaraan hulle niks te doen het nie, en die gevolglike stilstand in die werk van werknemers kan groot verliese vir die maatskappy. Daarom is dit die beste om nie hierdie opsie van beskerming teen brute geweld te gebruik nie.

Beskerm Zimbra OSE teen brute geweld en DoS-aanvalle

Om teen brute geweld te beskerm, is 'n spesiale instrument genaamd DoSFilter baie beter geskik, wat in Zimbra OSE ingebou is en outomaties die verbinding met Zimbra OSE via HTTP kan beëindig. Met ander woorde, die beginsel van DoSFilter is soortgelyk aan die beginsel van PostScreen, net dit word vir 'n ander protokol gebruik. Oorspronklik ontwerp om die aantal aksies wat 'n enkele gebruiker kan neem te beperk, kan DoSFilter ook beskerming bied teen brute geweld. Die belangrikste verskil van die instrument wat in Zimbra ingebou is, is dat dit na 'n sekere aantal onsuksesvolle pogings nie die gebruiker self blokkeer nie, maar die IP-adres vanwaar verskeie pogings aangewend word om by een of ander rekening aan te meld. Danksy dit kan die stelseladministrateur homself nie net teen brute geweld beskerm nie, maar ook vermy om werknemers van die onderneming te blokkeer deur bloot die interne netwerk van sy onderneming by die lys van betroubare IP-adresse en subnette te voeg.

Die groot voordeel van DoSFilter is dat jy, benewens talle pogings om by een of ander rekening aan te meld, met hierdie hulpmiddel outomaties daardie indringers kan blokkeer wat die werknemer se stawingsdata in besit geneem het, en dan suksesvol by sy rekening aangemeld het en honderde begin stuur het. van versoeke aan die bediener.

U kan DoSFilter opstel deur die volgende konsole-opdragte te gebruik:

  • zimbraHttpDosFilterMaxRequestsPerSec - Met hierdie opdrag kan jy die maksimum aantal verbindings wat per gebruiker toegelaat word, instel. By verstek is hierdie waarde 30 verbindings.
  • zimbraHttpDosFilterDelayMillis - Met hierdie opdrag kan jy 'n vertraging in millisekondes stel vir verbindings wat die limiet sal oorskry wat deur die vorige opdrag gespesifiseer is. Benewens heelgetalwaardes, kan die administrateur 0 spesifiseer om geen vertraging te hê nie, sowel as -1 om eenvoudig alle verbindings te beëindig wat die gespesifiseerde limiet oorskry. By verstek is hierdie waarde -1.
  • zimbraHttpThrottleSafeIPs - Deur hierdie opdrag te gebruik, kan die administrateur vertroude IP-adresse en subnette spesifiseer wat nie deur die beperkings hierbo gelys sal word beïnvloed nie. Let daarop dat die sintaksis van hierdie opdrag kan verskil na gelang van die gewenste resultaat. So, byvoorbeeld, deur die opdrag in te voer zmprov mcf zimbraHttpThrottleSafeIPs 127.0.0.1, sal jy die hele lys heeltemal oorskryf en net een IP-adres daarin laat. As jy die opdrag invoer zmprov mcf +zimbraHttpThrottleSafeIPs 127.0.0.1, sal die IP-adres wat jy ingevoer het by die witlys gevoeg word. Net so, met die aftrekteken, kan jy enige IP van die toegelate lys verwyder.

Let daarop dat DoSFilter 'n aantal probleme kan skep wanneer u Zextras Suite Pro-uitbreidings gebruik. Om dit te vermy, beveel ons aan om die aantal gelyktydige verbindings van 30 tot 100 te verhoog met behulp van die opdrag zmprov mcf zimbraHttpDosFilterMaxRequestsPerSec 100. Daarbenewens beveel ons aan dat jy die maatskappy se interne netwerk by die toegelate lys voeg. Jy kan dit doen met die opdrag zmprov mcf +zimbraHttpThrottleSafeIPs 192.168.0.0/24. Nadat u enige veranderinge aan DoSFilter gemaak het, maak seker dat u die posbediener herbegin met die opdrag zmmailboxdctl herbegin.

Die grootste nadeel van DoSFilter is dat dit op toepassingsvlak werk en dus net die vermoë van aanvallers kan beperk om verskeie aksies op die bediener uit te voer, sonder om die vermoë om aan die bediener te koppel, te beperk. As gevolg hiervan sal versoeke wat na die bediener gestuur word vir verifikasie of stuur van briewe, alhoewel dit natuurlik sal misluk, steeds 'n goeie ou DoS-aanval wees, wat nie op so 'n hoë vlak gestop kan word nie.

Om jou korporatiewe bediener heeltemal met Zimbra OSE te beveilig, kan jy 'n oplossing soos Fail2ban gebruik, wat 'n raamwerk is wat voortdurend inligtingstelsellogboeke vir herhalende aksies kan monitor en die indringer kan blokkeer deur die firewall-instellings te verander. As u op so 'n lae vlak blokkeer, kan u indringers deaktiveer op die stadium van die IP-verbinding met die bediener. Fail2Ban kan dus die beskerming wat met DoSFilter gebou is, perfek aanvul. Kom ons vind uit hoe jy vriende kan maak met Fail2Ban Zimbra OSE en sodoende die sekuriteit van jou onderneming se IT-infrastruktuur kan verhoog.

Soos enige ander ondernemingklas-toepassing, hou Zimbra Collaboration Suite Open-Source Edition gedetailleerde logboeke van sy werk. Die meeste van hulle word in die gids gestoor /opt/zimbra/log/ in die vorm van lêers. Hier is net 'n paar van hulle:

  • mailbox.log - Jetty pos diens logs
  • oudit.log - verifikasie logs
  • clamd.log - antivirus operasie logs
  • freshclam.log - antivirus opdatering logs
  • convertd.log - aanhegsel-omskakelaarlogboeke
  • zimbrastats.csv - bediener prestasie logs

Ook Zimbra-logs kan in die lêer gevind word /var/log/zimbra.log, waar die logs van Postfix en Zimbra self gehou word.

Om ons stelsel teen brute geweld te beskerm, sal ons monitor posbus.log, oudit.log и zimbra.log.

Om alles te laat werk, moet jy Fail2Ban en iptables op jou Zimbra OSE-bediener geïnstalleer hê. In die geval dat jy Ubuntu gebruik, kan jy dit doen deur die opdragte te gebruik dpkg -s fail2ban, As jy CentOS gebruik, kan jy dit nagaan deur die opdragte te gebruik yum lys geïnstalleer fail2ban. As u nie Fail2Ban geïnstalleer het nie, sal dit nie 'n probleem wees om dit te installeer nie, aangesien hierdie pakket in byna alle standaardbewaarplekke is.

Nadat al die nodige sagteware geïnstalleer is, kan jy begin om Fail2Ban op te stel. Om dit te doen, moet jy 'n konfigurasielêer skep /etc/fail2ban/filter.d/zimbra.conf, waarin ons gereelde uitdrukkings vir die Zimbra OSE-logboeke skryf, wat sal ooreenstem met ongeldige aanmeldpogings en die Fail2Ban-meganismes sal aktiveer. Hier is 'n voorbeeld van die inhoud van zimbra.conf met 'n stel gereelde uitdrukkings wat ooreenstem met verskeie foute wat in Zimbra OSE uitgereik word wanneer 'n verifikasiepoging misluk:

# 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 =

Nadat die gereelde uitdrukkings vir Zimbra OSE saamgestel is, is dit tyd om die konfigurasie van Fail2ban self te begin redigeer. Die instellings vir hierdie program is in die lêer geleë /etc/fail2ban/jail.conf. Net vir ingeval, ons sal 'n rugsteunkopie daarvan maak deur die opdrag te gebruik cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.bak. Daarna sal ons hierdie lêer na die volgende vorm bring:

# 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

Alhoewel hierdie voorbeeld redelik generies is, is dit die moeite werd om sommige van die instellings te verduidelik wat jy dalk wil verander wanneer jy Fail2Ban self opstel:

  • Ignoreer - deur hierdie parameter te gebruik, kan u 'n spesifieke ip of subnet spesifiseer, adresse waarvan Fail2Ban nie moet nagaan nie. As 'n reël word die interne netwerk van die onderneming en ander betroubare adresse by die lys van geïgnoreer gevoeg.
  • Bantime - Die tyd waarvoor die oortreder verban sal word. Gemeet in sekondes. 'n Waarde van -1 beteken 'n onbepaalde verbod.
  • maksimum probeer - Die maksimum aantal kere wat een ip-adres kan probeer om toegang tot die bediener te kry.
  • sendmail - 'n Instelling waarmee u outomaties e-poskennisgewings oor die werking van Fail2Ban kan stuur.
  • Vindtyd - 'n Instelling wat jou toelaat om die tydsinterval in te stel waarna die ip-adres weer kan probeer om toegang tot die bediener te kry nadat die maksimum aantal onsuksesvolle pogings uitgeput is (maxretry parameter)

Nadat u die lêer met die Fail2Ban-instellings gestoor het, bly dit net om hierdie program weer te begin met die opdrag diens fail2ban herbegin. Na herbegin, sal die hoof Zimbra logs voortdurend gemonitor word vir gereelde uitdrukkings. Danksy dit sal die administrateur feitlik enige moontlikheid uitskakel dat 'n aanvaller nie net Zimbra Collaboration Suite Open-Source Edition-posbusse kan binnedring nie, maar ook alle dienste wat binne Zimbra OSE loop, kan beskerm, en bewus wees van enige pogings om ongemagtigde toegang te verkry.

Vir alle vrae wat verband hou met Zextras Suite, kan jy die verteenwoordiger van Zextras Ekaterina Triandafilidi per e-pos kontak [e-pos beskerm]

Bron: will.com

Voeg 'n opmerking