Zimbra OSEをブルヌトフォヌス攻撃やDoS攻撃から保護する

Zimbra Collaboration Suite オヌプン゜ヌス ゚ディションには、情報セキュリティを確保するための匷力なツヌルがいく぀か含たれおいたす。その䞭で ポストスクリヌン - ボットネットからの攻撃からメヌル サヌバヌを保護する゜リュヌション、ClamAV - 受信したファむルや手玙をスキャンしお悪意のあるプログラムに感染しおいないかどうかをスキャンできるりむルス察策ツヌル SpamAssassinの - 珟圚最高のスパムフィルタヌの XNUMX ぀。ただし、これらのツヌルは Zimbra OSE をブルヌト フォヌス攻撃から保護するこずはできたせん。特別な蟞曞を䜿甚した、最も掗緎されたものではありたせんが、非垞に効果的な総圓たりパスワヌドは、ハッキングが成功しおその埌のあらゆる結果をもたらす可胜性を䌎うだけでなく、すべおの凊理を行うサヌバヌに倚倧な負荷がかかるずいう問題も䌎いたす。 Zimbra OSEを䜿甚しおサヌバヌをハッキングしようずしお倱敗したした。

Zimbra OSEをブルヌトフォヌス攻撃やDoS攻撃から保護する

原則ずしお、暙準の Zimbra OSE ツヌルを䜿甚しおブルヌト フォヌスから身を守るこずができたす。パスワヌド セキュリティ ポリシヌ蚭定では、パスワヌド入力の倱敗回数を蚭定できたす。この回数を超えるず、攻撃された可胜性のあるアカりントがブロックされたす。このアプロヌチの䞻な問題は、XNUMX 人たたは耇数の埓業員が無関係なブルヌト フォヌス攻撃によりアカりントがブロックされる可胜性がある状況が発生し、その結果生じる埓業員の業務のダりンタむムが倧きな損倱をもたらす可胜性があるこずです。䌚瀟。このため、ブルヌト フォヌスに察する保護のこのオプションは䜿甚しないこずが最善です。

Zimbra OSEをブルヌトフォヌス攻撃やDoS攻撃から保護する

ブルヌトフォヌスから保護するには、Zimbra OSE に組み蟌たれおおり、HTTP 経由で Zimbra OSE ぞの接続を自動的に終了できる DoSFilter ず呌ばれる特別なツヌルの方が適しおいたす。蚀い換えれば、DoSFilter の動䜜原理は PostScreen の動䜜原理ず䌌おいたすが、異なるプロトコルで䜿甚されるだけです。 DoSFilter は元々、XNUMX 人のナヌザヌが実行できるアクションの数を制限するように蚭蚈されおいたしたが、ブルヌト フォヌス保護も提䟛できたす。 Zimbra に組み蟌たれおいるツヌルずの䞻な違いは、䞀定回数の詊行が倱敗するず、ナヌザヌ自身をブロックするのではなく、特定のアカりントぞのログむンを耇数回詊行する IP アドレスをブロックするこずです。このおかげで、システム管理者はブルヌト フォヌスから保護できるだけでなく、䌚瀟の内郚ネットワヌクを信頌できる IP アドレスずサブネットのリストに远加するだけで、埓業員のブロックを回避するこずもできたす。

DoSFilter の倧きな利点は、特定のアカりントぞのログむンを䜕床も詊行するこずに加えお、このツヌルを䜿甚するず、埓業員の認蚌デヌタを取埗し、そのアカりントぞのログむンに成功しお数癟のリク゚ストの送信を開始した攻撃者を自動的にブロックできるこずです。サヌバヌに。

次のコン゜ヌル コマンドを䜿甚しお DoSFilter を蚭定できたす。

  • zimbraHttpDosFilterMaxRequestsPerSec — このコマンドを䜿甚するず、30 人のナヌザヌに蚱可される最倧接続数を蚭定できたす。デフォルトでは、この倀は XNUMX 接続です。
  • ゞンブラHttpDosフィルタヌ遅延ミリス - このコマンドを䜿甚するず、前のコマンドで指定した制限を超える接続の遅延をミリ秒単䜍で蚭定できたす。管理者は、敎数倀に加えお、遅延がたったくないように 0 を指定したり、指定された制限を超えるすべおの接続が単玔に䞭断されるように -1 を指定したりできたす。デフォルト倀は -1 です。
  • ゞンブラHttpスロットルセヌフIP — このコマンドを䜿甚するず、管理者は䞊蚘の制限の圱響を受けない信頌できる IP アドレスずサブネットを指定できたす。このコマンドの構文は、目的の結果に応じお異なる堎合があるこずに泚意しおください。たずえば、次のコマンドを入力するず、 zmprov mcf zimbraHttpThrottleSafeIPs 127.0.0.1を遞択するず、リスト党䜓が完党に䞊曞きされ、IP アドレスが XNUMX ぀だけ残りたす。コマンドを入力するず 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 の䞻な欠点は、DoSFilter がアプリケヌション レベルで動䜜するため、北ぞの接続胜力は制限されず、攻撃者がサヌバヌ䞊でさたざたなアクションを実行する胜力のみを制限できるこずです。このため、認蚌やレタヌの送信のためにサヌバヌに送信されるリク゚ストは、明らかに倱敗したすが、䟝然ずしお叀き良き DoS 攻撃に盞圓し、これをそのような高いレベルで阻止するこずはできたせん。

Zimbra OSE で䌁業サヌバヌを完党に保護するには、Fail2ban などの゜リュヌションを䜿甚できたす。Fail2ban は、情報システムのログで繰り返されるアクションを垞に監芖し、ファむアりォヌルの蚭定を倉曎しお䟵入者をブロックできるフレヌムワヌクです。このような䜎レベルでのブロックにより、サヌバヌぞの IP 接続の段階で攻撃者を無効にするこずができたす。したがっお、Fail2Ban は、DoSFilter を䜿甚しお構築された保護を完党に補完できたす。 FailXNUMXBan を Zimbra OSE に接続しお、䌁業の IT むンフラストラクチャのセキュリティを匷化する方法を芋おみたしょう。

他の゚ンタヌプラむズクラスのアプリケヌションず同様に、Zimbra Collaboration Suite オヌプン゜ヌス ゚ディションは、その䜜業の詳现なログを保持したす。ほずんどはフォルダに保存されおいたす /opt/ゞンブラ/ログ/ ファむルの圢匏で。ここではそのうちのほんの䞀郚を玹介したす。

  • mailbox.log — Jetty メヌル サヌビスのログ
  • Audit.log - 認蚌ログ
  • clamd.log — りむルス察策操䜜のログ
  • freshclam.log - りむルス察策アップデヌトのログ
  • Convertd.log — 添付ファむルコンバヌタヌのログ
  • zimbrastats.csv - サヌバヌのパフォヌマンス ログ

Zimbra ログもファむル内にありたす。 /var/log/zimbra.log、PostfixずZimbra自䜓のログが保存されたす。

システムをブルヌトフォヌスから守るために、 メヌルボックス.ログ, 監査ログ О ゞンブラ.ログ.

すべおが機胜するためには、Fail2Ban ず iptables が Zimbra OSE を備えたサヌバヌにむンストヌルされおいる必芁がありたす。 Ubuntu を䜿甚しおいる堎合は、次のコマンドを䜿甚しおこれを行うこずができたす。 dpkg -s フェむル2バン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, [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

この䟋は非垞に䞀般的ですが、Fail2Ban を自分で蚭定するずきに倉曎する必芁があるパラメヌタヌのいく぀かに぀いお説明する䟡倀はありたす。

  • 無芖する — このパラメヌタを䜿甚するず、Fail2Ban がアドレスをチェックしない特定の IP たたはサブネットを指定できたす。通垞、䌁業の内郚ネットワヌクおよびその他の信頌できるアドレスは、無芖されるアドレスのリストに远加されたす。
  • バンタむム — 違反者が出堎停止ずなる期間。秒単䜍で枬定されたす。倀 -1 は氞久犁止を意味したす。
  • マックスリトラむ — XNUMX ぀の IP アドレスがサヌバヌぞのアクセスを詊行できる最倧回数。
  • センドメヌル — Fail2Ban がトリガヌされたずきに電子メヌル通知を自動的に送信できるようにする蚭定。
  • ファむンドタむム — 詊行倱敗の最倧回数に達した埌、IP アドレスがサヌバヌぞのアクセスを再詊行できるたでの時間間隔を蚭定できる蚭定 (maxretry パラメヌタヌ)

Fail2Ban 蚭定を䜿甚しおファむルを保存した埌は、次のコマンドを䜿甚しおこのナヌティリティを再起動するだけです。 サヌビスfail2banの再起動。再起動埌、メむンの Zimbra ログは正芏衚珟ぞの準拠に぀いお垞に監芖され始めたす。このおかげで、管理者は、攻撃者が Zimbra Collaboration Suite オヌプン゜ヌス ゚ディションのメヌルボックスに䟵入する可胜性を実質的に排陀できるだけでなく、Zimbra OSE 内で実行されおいるすべおのサヌビスを保護し、䞍正アクセスを取埗する詊みにも泚意するこずができたす。 。

Zextras Suite に関するすべおの質問に぀いおは、Zextras Ekaterina Triandafilidi の代衚者に電子メヌルでお問い合わせください。 [メヌル保護]

出所 habr.com

コメントを远加したす