Zimbra Collaboration Suite Open-Source Edition ofron disa mjete tĂ« fuqishme pĂ«r sigurinĂ« e informacionit. NdĂ«r to â njĂ« zgjidhje pĂ«r mbrojtjen e serverit tĂ« postĂ«s nga sulmet e botnetĂ«ve, ClamAV â njĂ« antivirus i aftĂ« tĂ« kontrollojĂ« skedarin dhe emailĂ«t qĂ« vijnĂ« pĂ«r infeksione nga malware, si dhe â njĂ« nga filtrat mĂ« tĂ« mirĂ« tĂ« spamit sot. MegjithatĂ«, kĂ«to mjete nuk janĂ« nĂ« gjendje tĂ« sigurojnĂ« mbrojtje pĂ«r Zimbra OSE nga njĂ« lloj sulmi, si bruteforce. NjĂ« pĂ«rpjekje e tillĂ« pĂ«r tĂ« thyer fjalĂ«kalimet pĂ«rmes njĂ« fjalori tĂ« veçantĂ«, megjithĂ«se jo e eleganta, Ă«shtĂ« ende mjaft efektive dhe ka pasoja tĂ« rĂ«nda, duke krijuar njĂ« ngarkesĂ« tĂ« konsiderueshme nĂ« serverin qĂ« trajton tĂ« gjitha pĂ«rpjekjet e pasuksesshme pĂ«r tĂ« thyer serverin me Zimbra OSE.

Në parim, mbrojtja nga sulmet me brute-force mund të bëhet me mjetet standarde të Zimbra OSE. Cilësimet e politikës së fjalëkalimeve të sigurisë lejojnë vendosjen e numrit të përpjekjeve të pasuksesshme për të futur fjalëkalimin, pas së cilës llogaria e potencialisht sulmuar bllokohet. Problemi kryesor i këtij qasje është se ndodhin situata kur llogaritë e një ose më shumë punonjësve mund të bllokohen për shkak të një sulmi brute-force, me të cilin ata nuk kanë asnjë lidhje, dhe ndalimi i punës së stafit mund t'i sjellë kompanisë humbje të mëdha. Prandaj, ky variant mbrojtjeje nga sulmet me brute-force është më mirë të mos aplikohet.

Për të mbrojtur nga forcat e dhunshme, është shumë më e përshtatshme të përdoret një mjet special i quajtur DoSFilter, i cili është i integruar në Zimbra OSE dhe mund të ndërpresë automatikisht lidhjen me Zimbra OSE përmes HTTP. Me fjalë të tjera, principi i funksionimit të DoSFilter është i ngjashëm me atë të PostScreen, vetëm se përdoret për një protokoll tjetër. Fillimisht i destinuar për të kufizuar numrin e veprimeve që mund të kryejë një përdorues i vetëm, DoSFilter gjithashtu mund të ofrojë mbrojtje nga forcat e dhunshme. Dallimi kryesor i tij nga mjeti i integruar në Zimbra është se pas një numri të caktuar dështimesh, ai bllokon jo përdoruesin, por adresën IP nga e cila bëhen përpjekjet e shumta për të hyrë në një llogari të caktuar. Falë kësaj, administratori i sistemit mund të mbrohet jo vetëm nga forcat e dhunshme, por gjithashtu të shmangë bllokimin e punonjësve të kompanisë, thjesht duke shtuar në listën e adresave IP dhe nënrrjeteve të besuara rrjetin e brendshëm të kompanisë së tij.
Një përparësi e madhe e DoSFilter është se, përveç shumë përpjekjeve për të hyrë në ndonjë llogari, me këtë mjet mund të bllokoni automatikisht ata sulmues që kanë fituar të dhënat e autentikimit të një punonjësi, dhe pastaj kanë hyrë me sukses në llogarinë e tij dhe kanë filluar të dërgojnë qindra kërkesa në server.
Për të konfiguruar DoSFilter, mund të përdorni komandat e mëposhtme të konsolës:
- zimbraHttpDosFilterMaxRequestsPerSec â Me kĂ«tĂ« komandĂ« mund tĂ« vendosni numrin maksimal tĂ« lidhjeve, tĂ« lejuara pĂ«r njĂ« pĂ«rdorues. Me parazgjedhje, kjo vlerĂ« Ă«shtĂ« 30 lidhje.
- zimbraHttpDosFilterDelayMillis â Me kĂ«tĂ« komandĂ« mund tĂ« vendosni njĂ« vonesĂ« nĂ« milisekonda pĂ«r lidhjet qĂ« do tĂ« tejkalojnĂ« kufirin e vendosur nga komanda e mĂ«parshme. PĂ«rveç vlerave tĂ« plota, administratori mund tĂ« tregojĂ« 0, pĂ«r tĂ« mos pasur asnjĂ« vonesĂ«, dhe gjithashtu -1, qĂ« tĂ« gjitha lidhjet qĂ« tejkalojnĂ« kufirin e vendosur thjesht tĂ« ndalen. Me parazgjedhje, kjo vlerĂ« Ă«shtĂ« -1.
- zimbraHttpThrottleSafeIPs â Me kĂ«tĂ« komandĂ«, administratori mund tĂ« specifikojĂ« adresat IP dhe nĂ«nrrjetet e besuara, tĂ« cilat nuk do tĂ« preken nga kufizimet e pĂ«rmendura mĂ« sipĂ«r. Vlen tĂ« theksohet se sintaksa e kĂ«saj komande mund tĂ« ndryshojĂ« nĂ« varĂ«si tĂ« rezultatit tĂ« dĂ«shiruar. PĂ«r shembull, duke futur komandĂ«n zmprov mcf zimbraHttpThrottleSafeIPs 127.0.0.1, ju do tĂ« ridhni tĂ« gjithĂ« listĂ«n dhe do tĂ« lini vetĂ«m njĂ« adresĂ« IP. NĂ«se dĂ«shironi tĂ« shtoni njĂ« adresĂ« IP nĂ« listĂ«n e bardhĂ«, mund tĂ« pĂ«rdorni komandĂ«n zmprov mcf +zimbraHttpThrottleSafeIPs 127.0.0.1, e cila do tĂ« shtojĂ« adresĂ«n IP qĂ« keni futur. Po ashtu, duke pĂ«rdorur shenjĂ«n e zbritjes, mund tĂ« hiqni ndonjĂ« IP nga lista e lejuar.
Vlen të theksohet se DoSFilter mund të krijojë një sërë problemesh kur përdoren zgjerime të Zextras Suite Pro. Për të shmangur këto probleme, rekomandojmë të rrisni numrin e lidhjeve simultane nga 30 në 100 me anë të komandës zmprov mcf zimbraHttpDosFilterMaxRequestsPerSec 100. Gjithashtu, rekomandojmë të shtoni rrjetin e brendshëm të ndërmarrjes në listën e lejuar. Kjo mund të bëhet me anë të komandës zmprov mcf +zimbraHttpThrottleSafeIPs 192.168.0.0/24. Pas çdo ndryshimi në DoSFilter, sigurohuni që të rinisni serverin e postës me anë të komandës zmmailboxdctl restart.
Megjithatë, disavantazhi kryesor i DoSFilter është se ai funksionon në nivelin e aplikacionit dhe për këtë arsye mund të kufizojë vetëm mundësinë e sulmuesve për të kryer veprime të ndryshme në server, pa e kufizuar mundësinë për të lidhur me serverin. Për këtë arsye, kërkesat e dërguara në server për autentifikim ose për dërgimin e email-eve, edhe pse do të dështojnë sigurisht, sërish do të përbëjnë një sulm të njohur DoS, të cilin është e pamundshme ta ndalosh në një nivel kaq të lartë.
Për të siguruar plotësisht serverin tuaj korporativ me Zimbra OSE, mund të përdorni një zgjidhje si Fail2ban, e cila është një kornizë që mundëson monitorimin e vazhdueshëm të regjistrave të sistemeve informative për veprime të përsëritura dhe bllokimin e shkelësve duke ndryshuar konfigurimet e firewall-it. Bllokimi në një nivel kaq të ulët lejon ndalimin e sulmuesve direkt në fazën e lidhjes IP me serverin. Kështu, Fail2Ban mund të plotësojë në mënyrë të shkëlqyer mbrojtjen e ndërtuar me DoSFilter. Le të zgjidhim se si mund ta lidhim Fail2Ban me Zimbra OSE dhe t'i rritim kështu sigurinë e infrastrukturës IT të biznesit tuaj.
Si çdo aplikacion tjetër në nivel korporativ, Zimbra Collaboration Suite Open-Source Edition mban regjistra të detajuar të punës së saj. Shumica e tyre ruhen në dosjen /opt/zimbra/log/ në formë skedari. Ja disa prej tyre:
- mailbox.log â regjistra tĂ« shĂ«rbimit tĂ« postĂ«s Jetty
- audit.log â regjistra tĂ« autentikimit
- clamd.log â regjistra tĂ« funksionimit tĂ« antivirusit
- freshclam.log â regjistra tĂ« pĂ«rditĂ«simeve tĂ« antivirusit
- convertd.log â regjistra tĂ« konvertuesit tĂ« anexeve
- zimbrastats.csv â regjistra tĂ« performancĂ«s sĂ« serverit
Gjithashtu, regjistrat e Zimbra mund të gjenden në skedarin /var/log/zimbra.log, ku janë regjistratat e punës së Postfix dhe vetë Zimbra.
Për të mbrojtur sistemin tonë nga bruteforcing, ne do të monitorojmë mailbox.log, audit.log dhe zimbra.log.
Për të funksionuar gjithçka, është e nevojshme që në serverin tuaj me Zimbra OSE të jenë instalur Fail2Ban dhe iptables. Nëse jeni duke përdorur Ubuntu, mund ta bëni këtë me komandat dpkg -s fail2ban, nëse jeni duke përdorur CentOS, atëherë mund ta kontrolloni këtë me komandat yum list installed fail2ban. Në rast se Fail2Ban nuk është instaluar, instalimi i tij nuk do të jetë problem, pasi ky paketë ndodhet në pothuajse të gjitha depozitat standarde.
Pasi të jetë instaluar të gjithë softueri i nevojshëm, mund të filloni konfigurimin e Fail2Ban. Për këtë, është e nevojshme të krijoni një skedar konfigurimi /etc/fail2ban/filter.d/zimbra.conf, ku do të shkruajmë shprehjet e rregullta për regjistratat e Zimbra OSE, të cilat do të përputhen me përpjekjet e gabuara për t'u futur dhe do të aktivizojnë mekanizmat e Fail2Ban. Këtu është një shembull i përmbajtjes së zimbra.conf me një grup shprehjesh të rregullta që përputhen me gabime të ndryshme, të dhëna në Zimbra OSE gjatë një përpjekje të dështuar për autentikim:
# 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 =Pasi që janë përgatitur shprehjet e rregullta për Zimbra OSE, është koha për të filluar redaktimin e konfigurimit të Fail2ban. Cilësimet e kësaj utilitare gjenden në skedarin /etc/fail2ban/jail.conf. Për çdo rast, le të bëjmë një kopje rezervë me komandën cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.bak. Pas kësaj, do ta sjellim këtë skedar në një formë të ngjashme me këtë:
# 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, dest=admin@company.ru, sender=fail2ban@company.ru]
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, dest=support@company.ru]
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, dest=support@company.ru ]
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, dest=support@company.ru]
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, dest=support@company.ru]
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, dest=support@company.ru]
logpath = /var/log/zimbra.log
bantime = -1
maxretry = 5Ky shembull, ndonëse është mjaft universalisht, gjithsesi është e rëndësishme të shqyrtohen disa parametra që ndoshta dëshironi të ndryshoni gjatë konfigurimit të vetë Fail2Ban:
- Ignoreip â nĂ«pĂ«rmjet kĂ«tij parametri, mund tĂ« tregoni njĂ« IP tĂ« caktuar ose njĂ« nĂ«ndrejtkĂ«, adresat nga tĂ« cilat Fail2Ban nuk duhet tĂ« kontrollojĂ«. Rregullisht, nĂ« listĂ«n e pĂ«rjashtimeve shtohet rrjeti i brendshĂ«m i ndĂ«rmarrjes dhe adresat e tjera tĂ« besuara.
- Bantime â Koha, pĂ«r tĂ« cilĂ«n shkelĂ«si do tĂ« bllokohet. Matet nĂ« sekonda. Vlera -1 do tĂ« thotĂ« bllokim tĂ« pĂ«rhershĂ«m.
- Maxretry â Numri maksimal i herĂ«ve qĂ« njĂ« adresĂ« IP mund tĂ« pĂ«rpiqet tĂ« aksesojĂ« serverin.
- Sendmail â CilĂ«simi qĂ« lejon dĂ«rgimin automatik tĂ« njoftimeve me email pĂ«r aktivizimin e Fail2Ban.
- Findtime â NjĂ« konfigurim qĂ« lejon pĂ«rcaktimin e njĂ« intervali kohor, pas tĂ« cilit njĂ« adresĂ« IP mund tĂ« provojĂ« sĂ«rish tĂ« qaset nĂ« server pas shterimit tĂ« numrit maksimal tĂ« pĂ«rpjekjeve tĂ« dĂ«shtuara (parametri maxretry)
Pas ruajtjes së skedarit me konfigurimet e Fail2Ban, vetëm sa duhet të rinitëni këtë utilitare me komandën shërbimi fail2ban rinitë. Pas rinitjes, log-ët kryesore të Zimbra do të monitorohen vazhdimisht për përputhjen me shprehjet e rregullta. Falë kësaj, administratori do të jetë në gjendje të eliminojë çdo mundësi të depërtimit të një sulmuesi jo vetëm në kutitë postare të Zimbra Collaboration Suite Open-Source Edition, por gjithashtu të mbrojë të gjitha shërbimet që punojnë në kuadër të Zimbra OSE, si dhe të jetë në dijeni për çdo përpjekje për qasje të paautorizuar.
Për çdo pyetje lidhur me Zextras Suite, mund të kontaktoni përfaqësuesen e kompanisë «Zextras», Ekaterina Triandafiliidi në e-mail katerina@zextras.com
Burimi: habr.com
