やあ、
失敗した認証/ログイン試行を禁止しようとしています。 いくつかのチュートリアル/ハウツーがありますが、彼らはある種の時代遅れのregexを使用しているようですか?
/etc/fail2ban # fail2ban-regex /var/log/mail.log /etc/fail2ban/filter.d/dovecot-pop3imap.conf
Running tests
=============
Use failregex filter file : dovecot-pop3imap, basedir: /etc/fail2ban
ERROR: No failure-id group in '(?: pop3-login|imap-login): (?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed).*rip=(?P<host>\S*),.*'
https://wiki.dovecot.org/HowTo/Fail2Banと。
2ページ目の例ではエラーは発生しませんが、実際に実行したいことを実行できるかどうかもわかりません。
dovecotwikiに記載されているようにdovecot-pop3imap.confを作成します
失敗したログイン/認証の試行を禁止します。
Regexが機能していません。
昨日ubuntuサーバーをアップグレードしましたが、新しいバージョンのfail2banがインストールされました。 それ以降、カスタム構成は機能しなくなります。
_できればloglevel = 4
fail2banを実行しているときに取得します_
2018-05-16 14:20:09,136 fail2ban.filter [31796]: ERROR No failure-id group in '(?: pop3-login|imap-login): (?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed).*rip=(?P<host>\S*),.*'
2018-05-16 14:20:09,136 fail2ban.transmitter [31796]: WARNING Command ['set', 'dovecot-pop3imap', 'addfailregex', '(?: pop3-login|imap-login): (?:Authentication failure|Aborted login \\(auth failed|Aborted login \\(tried to use disabled|Disconnected \\(auth failed).*rip=(?P<host>\\S*),.*'] has failed. Received Rege
xException("No failure-id group in '(?: pop3-login|imap-login): (?:Authentication failure|Aborted login \\(auth failed|Aborted login \\(tried to use disabled|Disconnected \\(auth failed).*rip=(?P<host>\\S*),.*'",)
2018-05-16 14:20:09,137 fail2ban [31796]: ERROR NOK: ("No failure-id group in '(?: pop3-login|imap-login): (?:Authentication failure|Aborted login \\(auth failed|Aborted login \\(tried to use disabled|Disconnected \\(auth failed).*rip=(?P<host>\\S*),.*'",)
(?P<host>\S*)
値は無効になりました(0.10でのIPv6サポート以降、最新バージョンのfail2banには、DNS / IPv4 / IPv6のその他の処理とregexpがあります。これは、マッチング中にこのグループを区別するためです)。
したがって、代わりに<HOST>
(すべてのフォームを累積)、 <ADDR>
(ipsのみ)、または<DNS>
(dns-hostsのみ)を使用する必要があります。
ところで。 補間<HOST>
は、次のregexの「エイリアス」です。
(?:(?:::f{4,6}:)?(?P<ip4>(?:\\d{1,3}\\.){3}\\d{1,3})|\\[?(?P<ip6>(?:[0-9a-fA-F]{1,4}::?|::){1,7}(?:[0-9a-fA-F]{1,4}|(?<=:):))\\]?|(?P<dns>[\\w\\-.^_]*\\w))
DISLIKEボタンはどこにありますか。 ubuntuを更新した後、同じ問題についてコメントします。
fail2ban.filter [8151]: ERROR No failure-id group in '(?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed|Aborted login \(\d+ authentication attempts).*rip=(?P<host>\S*),.*'
2018-08-15 14:19:18,200 fail2ban.transmitter [8151]: WARNING Command ['multi-set', 'dovecot-pop3imap', 'addfailregex', ['(?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \\(auth failed|Aborted login \\(tried to use disabled|Disconnected \\(auth failed|Aborted login \\(\\d+ authentication attempts).*rip=(?P<host>\\S*),.*', '.*(?:pop3-login|imap-login):.*(?:Authentication failure|Aborted login \\(auth failed|Aborted login \\(tried to use disabled|Disconnected \\(auth failed|Aborted login \\(tried to use disallowed plaintext auth).*\\s+rip=(?P<host>\\S*),.*', 'pam.*dovecot.*(?:authentication failure).*\\s+rhost=<HOST>(?:\\s+user=.*)?\\s*$']] has failed. Received RegexException("No failure-id group in '(?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \\(auth failed|Aborted login \\(tried to use disabled|Disconnected \\(auth failed|Aborted login \\(\\d+ authentication attempts).*rip=(?P<host>\\S*),.*'",)
2018-08-15 14:19:18,200 fail2ban [8151]: ERROR NOK: ("No failure-id group in '(?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \\(auth failed|Aborted login \\(tried to use disabled|Disconnected \\(auth failed|Aborted login \\(\\d+ authentication attempts).*rip=(?P<host>\\S*),.*'",)
そして開発者のsebresはこれにコメントします。
(?:(?:::f{4,6}:)?(?P<ip4>(?:\\d{1,3}\\.){3}\\d{1,3})|\\[?(?P<ip6>(?:[0-9a-fA-F]{1,4}::?|::){1,7}(?:[0-9a-fA-F]{1,4}|(?<=:):))\\]?|(?P<dns>[\\w\\-.^_]*\\w))
開発者のサーバーを理解していなかったので、誰もがそれを修復する方法を理解しています。 悪い開発者がそのようなことをやめるとき "(?:(?::: f {4,6}:)?(?P
そして、解決策を与えます。 動作する100%まともなマニュアル。 明日あなたは警察に行かなければなりません、誰かがあなたがマリファナを吸っているのを見て、あなたは刑務所に行きます。 問題は、それが同じであるために、なぜsebresが刑務所に入れられるのかということです:100%まともな説明はありません。
しかし、ここでの違いは、sebresが警察に不平を言うことと、ここのPEOPLESがsebresのような悪い開発者に不平を言うことはないということです。 私は人々が悪い開発者のためにデータベースを作ることに投票します、誰もが毎日悪い開発が高いのを見るでしょう。 したがって、sebresが警察の刑務所に行くか、人々が不平を言っているかに違いはありません。 したがって、sebresには置く時間があります:
だからあなたは使うべきです
例:sebresが書くのにどれくらいの時間がかかるか例:
1分。 sebresと比較してfail2banコードを記述しています。 また、dovecot-pop3imapの解決に失敗すると、syslogがフラッディングすることを忘れないでください。
あなたは今「DISLIKE」を見ますか...
そして開発者のsebresはこれをコメントします...
いや、 "開発者のsebresは"コメント-トークンの使用<HOST>
の代わりに(?P<host>\S*)
。
regex (?P<host>\S*)
はとにかく文書化されていない機能
https://github.com/fail2ban/fail2ban/blob/e2a255d104f947f149cc34b17e778c05175e9f78/ChangeLog#L9 -L22
さらにもう一度:
(?P<host>\S*)
-いいえ。<HOST>
、 <ADDR>
、 <DNS>
-はい。0.10以降のfail2banがIPv4とIPv6を区別する必要があるという理由だけで、それが書き直される理由です。
したがって、 (?P<host>\S*)
の適切なregexベースの置換はより複雑です。
共通タグ<HOST>
に加えて、現在可能な他の多くのタグがあります- <ADDR>
、 <IP4>
、 <IP6>
、およびDNS
。
障害IDのIPとして他のものを使用する場合は、 wiki ::を参照してください
例を書くのにsebresがかかる時間:
多すぎる(無料のため)。 しかし、彼(および他の多くの人)はすでに十分な例(上記のwikiを参照)、ドキュメント、および変更ログエントリ(誰も読まない)を書いています。
そして最後になりましたが、英語を学んでみてください。最初のコメントで答えを理解できるようになります。
<HOST>
(すべてのフォームを累積)、 <ADDR>
(ipsのみ)、または<DNS>
(dns-hostsのみ)を使用する必要があります。Comprendo?
sebresいつか人間が来て、あなたのプログラムを書き直します
最も参考になるコメント
あなたは今「DISLIKE」を見ますか...
いや、 "開発者のsebresは"コメント-トークンの使用
<HOST>
の代わりに(?P<host>\S*)
。regex
(?P<host>\S*)
はとにかく文書化されていない機能https://github.com/fail2ban/fail2ban/blob/e2a255d104f947f149cc34b17e778c05175e9f78/ChangeLog#L9 -L22
さらにもう一度:
(?P<host>\S*)
-いいえ。<HOST>
、<ADDR>
、<DNS>
-はい。0.10以降のfail2banがIPv4とIPv6を区別する必要があるという理由だけで、それが書き直される理由です。
したがって、
(?P<host>\S*)
の適切なregexベースの置換はより複雑です。共通タグ
<HOST>
に加えて、現在可能な他の多くのタグがあります-<ADDR>
、<IP4>
、<IP6>
、およびDNS
。障害IDのIPとして他のものを使用する場合は、 wiki ::を参照してください
多すぎる(無料のため)。 しかし、彼(および他の多くの人)はすでに十分な例(上記のwikiを参照)、ドキュメント、および変更ログエントリ(誰も読まない)を書いています。
そして最後になりましたが、英語を学んでみてください。最初のコメントで答えを理解できるようになります。
<HOST>
(すべてのフォームを累積)、<ADDR>
(ipsのみ)、または<DNS>
(dns-hostsのみ)を使用する必要があります。Comprendo?