Zimbra Collaboration Suite Open-Source Edition маалымат коопсуздугун камсыз кылуу үчүн бир нече күчтүү куралдарга ээ. Алардын арасында - почта серверин ботнеттердин чабуулдарынан коргоо үчүн чечим, ClamAV - кирүүчү файлдарды жана каттарды зыяндуу программалар менен инфекцияга сканерлей турган антивирус, ошондой эле - бүгүнкү күндө эң мыкты спам чыпкаларынын бири. Бирок, бул инструменттер Zimbra OSEди орой күч чабуулдарынан коргой албайт. Атайын сөздүктүн жардамы менен эң элеганттуу, бирок дагы эле эффективдүү, катаал мажбурлоочу сырсөздөр бардык кесепеттери менен ийгиликтүү хакерлик кылуу ыктымалдыгы менен гана эмес, ошондой эле серверде олуттуу жүктөмдүн пайда болушу менен коштолот, ал бардыгын иштетет. Zimbra OSE менен серверди бузуп алуу аракети ийгиликсиз болду.

Негизи, Zimbra OSE стандарттык куралдарын колдонуу менен өзүңүздү орой күчтөн коргой аласыз. Сырсөздүн коопсуздук саясатынын жөндөөлөрү сырсөздү киргизүү боюнча ийгиликсиз аракеттердин санын коюуга мүмкүндүк берет, андан кийин чабуулга кабылышы мүмкүн болгон каттоо эсеби бөгөттөлөт. Бул ыкманын негизги көйгөйү - бир же бир нече кызматкерлердин эсептери алардын эч кандай тиешеси жок катаал чабуулдан улам жабылып калышы мүмкүн болгон кырдаалдардын келип чыгышы жана натыйжада кызматкерлердин жумушунун токтоп калышы ири жоготууларды алып келиши мүмкүн. компания. Мына ошондуктан орой күчкө каршы коргоонун бул вариантын колдонбогонуңуз жакшы.

Оор күчтөн коргоо үчүн DoSFilter деп аталган атайын курал алда канча ылайыктуу, ал Zimbra OSEге орнотулган жана HTTP аркылуу Zimbra OSE менен туташууну автоматтык түрдө токтото алат. Башкача айтканда, DoSFilterдин иштөө принциби PostScreenдин иштөө принцибине окшош, ал башка протокол үчүн гана колдонулат. Башында бир колдонуучу аткара турган аракеттердин санын чектөө үчүн иштелип чыккан, DoSFilter ошондой эле орой күч менен коргоону камсыздай алат. Анын Zimbraга орнотулган куралдан негизги айырмасы - белгилүү бир сандагы ийгиликсиз аракеттерден кийин, ал колдонуучунун өзүн эмес, белгилүү бир аккаунтка кирүү үчүн бир нече жолу аракет жасалган IP дарегин бөгөттөйт. Мунун аркасында системалык администратор катаал күчтөн коргоп гана тим болбостон, өзүнүн компаниясынын ички тармагын ишенимдүү IP даректердин жана субсеттердин тизмесине кошуу менен компаниянын кызматкерлерин бөгөттөп коюудан качат.
DoSFilterдин чоң артыкчылыгы - белгилүү бир аккаунтка кирүү үчүн көптөгөн аракеттерден тышкары, бул куралды колдонуу менен сиз кызматкердин аутентификация маалыматтарын ээлеп алган, андан кийин анын аккаунтуна ийгиликтүү кирип, жүздөгөн суроо-талаптарды жөнөтө баштаган чабуулчуларды автоматтык түрдө бөгөттөй аласыз. серверге.
Сиз DoSFilterди төмөнкү консолдук буйруктарды колдонуп конфигурациялай аласыз:
- zimbraHttpDosFilterMaxRequestsPerSec — Бул буйрукту колдонуу менен сиз бир колдонуучуга уруксат берилген туташуулардын максималдуу санын орното аласыз. Демейки боюнча бул маани 30 байланыш болуп саналат.
- zimbraHttpDosFilterDelayMillis - Бул буйрукту колдонуу менен сиз мурунку буйрукта көрсөтүлгөн чектен ашкан туташуулар үчүн миллисекундда кечиктирүүнү орното аласыз. Администратор бүтүн сандардын маанилеринен тышкары, такыр кечигүү болбошу үчүн 0 жана көрсөтүлгөн чектен ашкан бардык байланыштар жөн эле үзгүлтүккө учурагыдай -1ди белгилей алат. Демейки маани -1.
- zimbraHttpThrottleSafeIPs — Бул буйрукту колдонуу менен администратор жогоруда саналып өткөн чектөөлөргө дуушар болбой турган ишенимдүү IP даректерди жана субторлорду көрсөтө алат. Бул буйруктун синтаксиси каалаган натыйжага жараша өзгөрүшү мүмкүн экенин эске алыңыз. Ошентип, мисалы, буйрук киргизүү менен zmprov mcf zimbraHttpThrottleSafeIPs 127.0.0.1, сиз бүт тизмени толугу менен кайра жазасыз жана ага бир гана IP дарегин калтырасыз. Эгер сиз буйрук киргизсеңиз zmprov mcf +zimbraHttpThrottleSafeIPs 127.0.0.1, сиз киргизген IP дарек ак тизмеге кошулат. Ошо сыяктуу эле, кемитүү белгисин колдонуп, уруксат берилген тизмеден каалаган IPди алып салсаңыз болот.
Zextras Suite Pro кеңейтүүлөрүн колдонууда DoSFilter бир катар көйгөйлөрдү жаратышы мүмкүн экенин эске алыңыз. Аларды болтурбоо үчүн, биз буйрукту колдонуп, бир эле учурда туташуунун санын 30дан 100гө чейин көбөйтүүнү сунуштайбыз. zmprov mcf zimbraHttpDosFilterMaxRequestsPerSec 100. Мындан тышкары, уруксат берилгендердин тизмесине ишкананын ички тармагын кошууну сунуштайбыз. Бул буйрукту колдонуу менен жасалышы мүмкүн zmprov mcf +zimbraHttpThrottleSafeIPs 192.168.0.0/24. DoSFilterге кандайдыр бир өзгөртүүлөрдү киргизгенден кийин, буйрукту колдонуу менен почта сервериңизди өчүрүп күйгүзүүнү унутпаңыз zmmailboxdctl кайра иштетүү.
DoSFilterдин негизги кемчилиги - ал тиркеме деңгээлинде иштейт жана ошондуктан чабуулчулардын түндүккө туташуу мүмкүнчүлүгүн чектебестен серверде ар кандай аракеттерди жасоо мүмкүнчүлүгүн гана чектей алат. Ушундан улам, серверге аутентификация же каттарды жөнөтүү үчүн жөнөтүлгөн суроо-талаптар, албетте, ийгиликсиз болсо да, мурдагыдай эле жакшы эски DoS чабуулун көрсөтөт, аны мынчалык жогорку деңгээлде токтотуу мүмкүн эмес.
Zimbra OSE менен корпоративдик сервериңизди толугу менен коргоо үчүн сиз Fail2ban сыяктуу чечимди колдонсоңуз болот, ал маалымат тутумунун журналдарын кайталанган аракеттер үчүн тынымсыз көзөмөлдөй турган жана брандмауэр орнотууларын өзгөртүү менен бузукуларды бөгөттөй алат. Мындай төмөн деңгээлде бөгөт коюу серверге IP туташуу стадиясында эле чабуулчуларды өчүрүүгө мүмкүндүк берет. Ошентип, Fail2Ban DoSFilter аркылуу курулган коргоону эң сонун толуктай алат. Келгиле, сиз Fail2Banды Zimbra OSE менен кантип туташтыра аларыңызды жана ошону менен ишканаңыздын IT инфраструктурасынын коопсуздугун кантип жогорулатууну билели.
Башка ишкана-класстагы тиркемелер сыяктуу эле, Zimbra Collaboration Suite Open-Source Edition өзүнүн ишинин деталдуу журналдарын сактайт. Алардын көбү папкада сакталат /opt/zimbra/log/ файлдар түрүндө. Бул жерде алардын бир канчасы гана:
- mailbox.log — Жетти почта кызматынын журналдары
- audit.log - аутентификация журналдары
- clamd.log — антивирустук операция журналдары
- freshclam.log - антивирус жаңыртуу журналдары
- convertd.log — тиркеме конвертер журналдары
- zimbrastats.csv - сервердин иштөө журналдары
Zimbra журналдарын да файлдан тапса болот /var/log/zimbra.log, бул жерде Postfix жана Zimbra журналдары сакталат.
Биздин системаны орой күчтөн коргоо үчүн биз мониторинг жүргүзөбүз mailbox.log, audit.log и zimbra.log.
Баары иштеши үчүн, Zimbra OSE менен сервериңизде Fail2Ban жана iptables орнотулган болушу керек. Эгер сиз Ubuntu колдонуп жатсаңыз, муну буйруктарды колдонуп жасай аласыз dpkg -s fail2ban, эгер сиз CentOS колдонсоңуз, муну буйруктар аркылуу текшере аласыз yum тизмеси орнотулган fail2ban. Эгер сизде Fail2Ban орнотулган жок болсо, анда аны орнотуу көйгөй жаратпайт, анткени бул пакет дээрлик бардык стандарттык репозиторийлерде бар.
Бардык керектүү программа орнотулгандан кийин, сиз Fail2Ban орнотууну баштасаңыз болот. Бул үчүн сиз конфигурация файлын түзүшүңүз керек /etc/fail2ban/filter.d/zimbra.conf, анда биз туура эмес кирүү аракеттерине дал келген жана Fail2Ban механизмдерин ишке киргизген Zimbra OSE журналдары үчүн кадимки туюнтмаларды жазабыз. Бул жерде аутентификация аракети ишке ашпай калганда Zimbra OSE ыргыткан ар кандай каталарга туура келген үзгүлтүксүз туюнтмалар топтому менен zimbra.conf мазмунунун мисалы келтирилген:
# 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 =Zimbra OSE үчүн кадимки туюнтмалар түзүлгөндөн кийин, Fail2ban конфигурациясын оңдоп баштоого убакыт келди. Бул утилитанын орнотуулары файлда жайгашкан /etc/fail2ban/jail.conf. Болбосо, буйрукту колдонуп, анын резервдик көчүрмөсүн жасайлы cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.bak. Андан кийин, биз бул файлды болжол менен төмөнкү формага түшүрөбүз:
# 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 = 5Бул мисал абдан жалпы болгону менен, Fail2Ban'ди өзүңүз орнотуп жатканда өзгөрткүңүз келген кээ бир параметрлерди түшүндүрүп берүү керек:
- Ignoreip — бул параметрди колдонуу менен сиз Fail2Ban даректерди текшербеши керек болгон белгилүү бир IP же субсетти көрсөтө аласыз. Эреже катары, ишкананын ички тармагы жана башка ишенимдүү даректер эске алынбагандардын катарына кошулат.
- Bantime — Кылмышкерге тыюу салынган убакыт. Секунд менен өлчөнөт. -1 мааниси туруктуу тыюуну билдирет.
- Maxretry — Бир IP дарек серверге кирүүгө аракет кыла ала турган максималдуу саны.
- Почта жөнөтүү — Fail2Ban иштетилгенде электрондук почта эскертмелерин автоматтык түрдө жөнөтүүгө мүмкүндүк берүүчү жөндөө.
- Findtime — Ийгиликсиз аракеттердин максималдуу саны түгөнгөндөн кийин IP дареги серверге кайра кирүүгө аракет кыла турган убакыт аралыгын коюуга мүмкүндүк берүүчү параметр (maxretry параметри)
Файлды Fail2Ban орнотуулары менен сактагандан кийин, буйрукту колдонуп, бул утилитаны кайра иштетүү гана калат. кызматы fail2ban өчүрүп күйгүзүү. Кайра күйгүзгөндөн кийин, негизги Zimbra журналдары үзгүлтүксүз туюнтмаларга ылайык келүү үчүн дайыма көзөмөлдөнүп баштайт. Мунун аркасында администратор Zimbra Collaboration Suite Open-Source Edition почта ящиктерине гана эмес, Zimbra OSE ичинде иштеген бардык кызматтарды коргоп, ошондой эле уруксатсыз кирүү аракеттеринен кабардар болуп, чабуулчунун бардык мүмкүнчүлүгүн дээрлик жокко чыгара алат. .
Zextras Suite менен байланышкан бардык суроолор боюнча, сиз Zextras өкүлү Екатерина Триандафилиди менен katerina@zextras.com электрондук почтасы аркылуу байланышсаңыз болот.
Source: www.habr.com
