Zimbra Collaboration Suite Open-Source Edition ir vairÄki spÄcÄ«gi rÄ«ki, lai nodroÅ”inÄtu informÄcijas droŔību. Starp viÅiem
PrincipÄ jÅ«s varat pasargÄt sevi no brutÄla spÄka, izmantojot standarta Zimbra OSE rÄ«kus. Paroles droŔības politikas iestatÄ«jumi ļauj iestatÄ«t neveiksmÄ«go paroles ievadÄ«Å”anas mÄÄ£inÄjumu skaitu, pÄc kuriem potenciÄli uzbrukuÅ”ais konts tiek bloÄ·Äts. Å Ä«s pieejas galvenÄ problÄma ir tÄda, ka rodas situÄcijas, kurÄs var tikt bloÄ·Äti viena vai vairÄku darbinieku konti rupja spÄka uzbrukuma dÄļ, kuram viÅiem nav ko darÄ«t, un no tÄ izrietoÅ”Ä dÄ«kstÄve darbinieku darbÄ var radÄ«t lielus zaudÄjumus. kompÄnija. TÄpÄc labÄk neizmantot Å”o aizsardzÄ«bas pret brutÄlu spÄku iespÄju.
Lai aizsargÄtu pret brutÄlu spÄku, daudz labÄk ir piemÄrots Ä«paÅ”s rÄ«ks ar nosaukumu DoSFilter, kas ir iebÅ«vÄts Zimbra OSE un var automÄtiski pÄrtraukt savienojumu ar Zimbra OSE, izmantojot HTTP. Citiem vÄrdiem sakot, DoSFilter darbÄ«bas princips ir lÄ«dzÄ«gs PostScreen darbÄ«bas principam, tikai tas tiek izmantots citam protokolam. SÄkotnÄji izstrÄdÄts, lai ierobežotu darbÄ«bu skaitu, ko var veikt viens lietotÄjs, DoSFilter var nodroÅ”inÄt arÄ« aizsardzÄ«bu pret brutÄlu spÄku. TÄ galvenÄ atŔķirÄ«ba no Zimbra iebÅ«vÄtÄ rÄ«ka ir tÄda, ka pÄc noteikta skaita neveiksmÄ«giem mÄÄ£inÄjumiem tas bloÄ·Ä nevis paÅ”u lietotÄju, bet gan IP adresi, no kuras tiek veikti vairÄki mÄÄ£inÄjumi pieteikties konkrÄtajÄ kontÄ. Pateicoties tam, sistÄmas administrators var ne tikai aizsargÄties pret brutÄlu spÄku, bet arÄ« izvairÄ«ties no uzÅÄmuma darbinieku bloÄ·ÄÅ”anas, vienkÄrÅ”i pievienojot sava uzÅÄmuma iekÅ”Äjo tÄ«klu uzticamo IP adreÅ”u un apakÅ”tÄ«klu sarakstam.
DoSFilter lielÄ priekÅ”rocÄ«ba ir tÄ, ka papildus daudziem mÄÄ£inÄjumiem pieteikties noteiktÄ kontÄ, izmantojot Å”o rÄ«ku, jÅ«s varat automÄtiski bloÄ·Ät tos uzbrucÄjus, kuri pÄrÅÄma darbinieka autentifikÄcijas datus un pÄc tam veiksmÄ«gi pieteicÄs viÅa kontÄ un sÄka sÅ«tÄ«t simtiem pieprasÄ«jumu. uz serveri.
DoSFilter var konfigurÄt, izmantojot Å”Ädas konsoles komandas:
- zimbraHttpDosFilterMaxRequestsPerSec ā Izmantojot Å”o komandu, varat iestatÄ«t maksimÄlo vienam lietotÄjam atļauto savienojumu skaitu. PÄc noklusÄjuma Ŕī vÄrtÄ«ba ir 30 savienojumi.
- zimbraHttpDosFilterDelayMillis - Izmantojot Å”o komandu, varat iestatÄ«t aizkavi milisekundÄs savienojumiem, kas pÄrsniegs iepriekÅ”ÄjÄ komandÄ norÄdÄ«to ierobežojumu. Papildus veselu skaitļu vÄrtÄ«bÄm administrators var norÄdÄ«t 0, lai vispÄr nebÅ«tu aizkaves, un -1, lai visi savienojumi, kas pÄrsniedz noteikto ierobežojumu, tiktu vienkÄrÅ”i pÄrtraukti. NoklusÄjuma vÄrtÄ«ba ir -1.
- zimbraHttpThrottleSafeIP ā Izmantojot Å”o komandu, administrators var norÄdÄ«t uzticamas IP adreses un apakÅ”tÄ«klus, uz kuriem netiks attiecinÄti iepriekÅ” minÄtie ierobežojumi. Å emiet vÄrÄ, ka Ŕīs komandas sintakse var atŔķirties atkarÄ«bÄ no vÄlamÄ rezultÄta. TÄ, piemÄram, ievadot komandu zmprov mcf zimbraHttpThrottleSafeIPs 127.0.0.1, jÅ«s pilnÄ«bÄ pÄrrakstÄ«sit visu sarakstu un atstÄsiet tajÄ tikai vienu IP adresi. Ja ievadÄt komandu zmprov mcf +zimbraHttpThrottleSafeIP 127.0.0.1, ievadÄ«tÄ IP adrese tiks pievienota baltajam sarakstam. TÄpat, izmantojot atÅemÅ”anas zÄ«mi, jÅ«s varat noÅemt jebkuru IP no atļautÄ saraksta.
LÅ«dzu, Åemiet vÄrÄ, ka DoSFilter var radÄ«t vairÄkas problÄmas, izmantojot Zextras Suite Pro paplaÅ”inÄjumus. Lai no tiem izvairÄ«tos, mÄs iesakÄm palielinÄt vienlaicÄ«go savienojumu skaitu no 30 lÄ«dz 100, izmantojot komandu zmprov mcf zimbraHttpDosFilterMaxRequestsPerSec 100. TurklÄt mÄs iesakÄm atļauto tÄ«klu sarakstam pievienot uzÅÄmuma iekÅ”Äjo tÄ«klu. To var izdarÄ«t, izmantojot komandu zmprov mcf +zimbraHttpThrottleSafeIP 192.168.0.0/24. PÄc DoSFilter izmaiÅu veikÅ”anas noteikti restartÄjiet pasta serveri, izmantojot komandu zmmailboxdctl restartÄjiet.
Galvenais DoSFilter trÅ«kums ir tas, ka tas darbojas lietojumprogrammu lÄ«menÄ« un tÄpÄc var tikai ierobežot uzbrucÄju iespÄjas veikt dažÄdas darbÄ«bas serverÄ«, neierobežojot iespÄju izveidot savienojumu ar ziemeļiem. Å Ä« iemesla dÄļ serverim nosÅ«tÄ«tie autentifikÄcijas vai vÄstuļu sÅ«tÄ«Å”anas pieprasÄ«jumi, lai arÄ« tie acÄ«mredzami neizdosies, joprojÄm bÅ«s vecais, labais DoS uzbrukums, kuru nevar apturÄt tik augstÄ lÄ«menÄ«.
Lai pilnÄ«bÄ aizsargÄtu savu korporatÄ«vo serveri ar Zimbra OSE, varat izmantot tÄdu risinÄjumu kÄ Fail2ban, kas ir ietvars, kas var pastÄvÄ«gi uzraudzÄ«t informÄcijas sistÄmas žurnÄlus atkÄrtotÄm darbÄ«bÄm un bloÄ·Ät iebrucÄju, mainot ugunsmÅ«ra iestatÄ«jumus. BloÄ·ÄÅ”ana tik zemÄ lÄ«menÄ« ļauj atspÄjot uzbrucÄjus tieÅ”i IP savienojuma posmÄ ar serveri. TÄdÄjÄdi Fail2Ban var lieliski papildinÄt aizsardzÄ«bu, kas izveidota, izmantojot DoSFilter. Noskaidrosim, kÄ jÅ«s varat savienot Fail2Ban ar Zimbra OSE un tÄdÄjÄdi palielinÄt sava uzÅÄmuma IT infrastruktÅ«ras droŔību.
TÄpat kÄ jebkura cita uzÅÄmuma klases lietojumprogramma, Zimbra Collaboration Suite Open-Source Edition glabÄ detalizÄtus žurnÄlus par savu darbu. LielÄkÄ daļa no tiem tiek saglabÄti mapÄ /opt/zimbra/log/ failu veidÄ. Å eit ir tikai daži no tiem:
- mailbox.log ā Jetty pasta pakalpojumu žurnÄli
- audit.log - autentifikÄcijas žurnÄli
- clamd.log ā pretvÄ«rusu darbÄ«bu žurnÄli
- freshclam.log ā pretvÄ«rusu atjauninÄÅ”anas žurnÄli
- convertd.log ā pielikumu pÄrveidotÄja žurnÄli
- zimbrastats.csv ā servera veiktspÄjas žurnÄli
Zimbra žurnÄlus var atrast arÄ« failÄ /var/log/zimbra.log, kur tiek glabÄti Postfix un paÅ”as Zimbra žurnÄli.
Lai aizsargÄtu mÅ«su sistÄmu no brutÄla spÄka, mÄs uzraudzÄ«sim pastkaste.log, audit.log Šø zimbra.log.
Lai viss darbotos, jÅ«su serverÄ« ar Zimbra OSE ir nepiecieÅ”ams instalÄt Fail2Ban un iptables. Ja izmantojat Ubuntu, varat to izdarÄ«t, izmantojot komandas dpkg -s fail2ban, ja izmantojat CentOS, varat to pÄrbaudÄ«t, izmantojot komandas yum saraksts instalÄts fail2ban. Ja jums nav instalÄts Fail2Ban, tÄ instalÄÅ”ana nebÅ«s problÄma, jo Ŕī pakotne ir pieejama gandrÄ«z visÄs standarta krÄtuvÄs.
Kad visa nepiecieÅ”amÄ programmatÅ«ra ir instalÄta, varat sÄkt Fail2Ban iestatÄ«Å”anu. Lai to izdarÄ«tu, jums ir jÄizveido konfigurÄcijas fails /etc/fail2ban/filter.d/zimbra.conf, kurÄ mÄs rakstÄ«sim regulÄras izteiksmes Zimbra OSE žurnÄliem, kas atbildÄ«s nepareiziem pieteikÅ”anÄs mÄÄ£inÄjumiem un aktivizÄs Fail2Ban mehÄnismus. Å eit ir faila zimbra.conf satura piemÄrs ar regulÄro izteiksmju kopu, kas atbilst dažÄdÄm kļūdÄm, kuras Zimbra OSE rada, ja autentifikÄcijas mÄÄ£inÄjums neizdodas:
# 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 =
Kad Zimbra OSE regulÄrÄs izteiksmes ir apkopotas, ir pienÄcis laiks sÄkt rediÄ£Ät paÅ”as Fail2ban konfigurÄciju. Å Ä«s utilÄ«tas iestatÄ«jumi atrodas failÄ /etc/fail2ban/jail.conf. Katram gadÄ«jumam, izmantojot komandu, izveidosim tÄ rezerves kopiju cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.bak. PÄc tam mÄs reducÄsim Å”o failu lÄ«dz aptuveni Å”Ädai formai:
# 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
Lai gan Å”is piemÄrs ir diezgan vispÄrÄ«gs, tomÄr ir vÄrts izskaidrot dažus parametrus, kurus, iespÄjams, vÄlÄsities mainÄ«t, pats iestatot Fail2Ban:
- IgnorÄt ā izmantojot Å”o parametru, varat norÄdÄ«t konkrÄtu IP vai apakÅ”tÄ«klu, no kura Fail2Ban nevajadzÄtu pÄrbaudÄ«t adreses. Parasti ignorÄto sarakstam tiek pievienots uzÅÄmuma iekÅ”Äjais tÄ«kls un citas uzticamas adreses.
- Bantime ā Laiks, uz kuru likumpÄrkÄpÄjam tiks piemÄrots aizliegums. MÄrÄ«ts sekundÄs. VÄrtÄ«ba -1 nozÄ«mÄ pastÄvÄ«gu aizliegumu.
- Maksretrija ā MaksimÄlais reižu skaits, kad viena IP adrese var mÄÄ£inÄt piekļūt serverim.
- NosÅ«tÄ«t pastu ā IestatÄ«jums, kas ļauj automÄtiski nosÅ«tÄ«t e-pasta paziÅojumus, kad tiek aktivizÄts Fail2Ban.
- Atrast laiku ā IestatÄ«jums, kas ļauj iestatÄ«t laika intervÄlu, pÄc kura IP adrese var mÄÄ£inÄt vÄlreiz piekļūt serverim pÄc tam, kad ir izsmelts maksimÄlais neveiksmÄ«go mÄÄ£inÄjumu skaits (maksimÄlÄ mÄÄ£inÄjuma parametrs)
PÄc faila saglabÄÅ”anas ar Fail2Ban iestatÄ«jumiem atliek tikai restartÄt Å”o utilÄ«tu, izmantojot komandu pakalpojuma fail2ban restartÄÅ”ana. PÄc restartÄÅ”anas sÄks pastÄvÄ«gi uzraudzÄ«t galveno Zimbra žurnÄlu atbilstÄ«bu regulÄrajÄm izteiksmÄm. Pateicoties tam, administrators varÄs praktiski novÄrst jebkÄdu iespÄju, ka uzbrucÄjs varÄtu iekļūt ne tikai Zimbra Collaboration Suite Open-Source Edition pastkastÄs, bet arÄ« aizsargÄt visus pakalpojumus, kas darbojas Zimbra OSE, kÄ arÄ« apzinÄties jebkÄdus mÄÄ£inÄjumus iegÅ«t nesankcionÄtu piekļuvi. .
Par visiem jautÄjumiem, kas saistÄ«ti ar Zextras Suite, varat sazinÄties ar Zextras pÄrstÄvi Jekaterinu Triandafilidi pa e-pastu [e-pasts aizsargÄts]
Avots: www.habr.com