1- .. image :: https://img.shields.io/badge/licence-AGPL--3-blue.svg
2- :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
3- :alt: License: AGPL-3
4-
5- ===============================================================
6- Tracks Authentication Attempts and Prevents Brute-force Attacks
7- ===============================================================
8-
9- This module registers each request done by users trying to authenticate into
10- Odoo. If the authentication fails, a counter is increased for the given remote
11- IP. After a defined number of attempts, Odoo will ban the remote IP and
12- ignore new requests.
1+ ===================================
2+ Authentication - Brute-Force Filter
3+ ===================================
4+
5+ ..
6+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
7+ !! This file is generated by oca-gen-addon-readme !!
8+ !! changes will be overwritten. !!
9+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10+ !! source digest: sha256:619f103b2ff519e702a28bfa3155d8e8984eb1bff7007dd2a9aa3d7ae1566a32
11+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12+
13+ .. |badge1 | image :: https://img.shields.io/badge/maturity-Beta-yellow.png
14+ :target: https://odoo-community.org/page/development-status
15+ :alt: Beta
16+ .. |badge2 | image :: https://img.shields.io/badge/licence-AGPL--3-blue.png
17+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
18+ :alt: License: AGPL-3
19+ .. |badge3 | image :: https://img.shields.io/badge/github-OCA%2Fserver--auth-lightgray.png?logo=github
20+ :target: https://github.com/OCA/server-auth/tree/18.0/auth_brute_force
21+ :alt: OCA/server-auth
22+ .. |badge4 | image :: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
23+ :target: https://translation.odoo-community.org/projects/server-auth-18-0/server-auth-18-0-auth_brute_force
24+ :alt: Translate me on Weblate
25+ .. |badge5 | image :: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
26+ :target: https://runboat.odoo-community.org/builds?repo=OCA/server-auth&target_branch=18.0
27+ :alt: Try me on Runboat
28+
29+ |badge1 | |badge2 | |badge3 | |badge4 | |badge5 |
30+
31+ This module registers each request done by users trying to authenticate
32+ into Odoo. If the authentication fails, a counter is increased for the
33+ given remote IP. After a defined number of attempts, Odoo will ban the
34+ remote IP and ignore new requests.
35+
1336This module applies security through obscurity
14- (https://en.wikipedia.org/wiki/Security_through_obscurity),
15- When a user is banned, the request is now considered as an attack. So, the UI
16- will **not ** indicate to the user that his IP is banned and the regular message
17- 'Wrong login/password' is displayed.
37+ (https://en.wikipedia.org/wiki/Security_through_obscurity). When a user
38+ is banned, the request is now considered as an attack. So, the UI will
39+ **not ** indicate to the user that his IP is banned and the regular
40+ message 'Wrong login/password' is displayed.
41+
42+ This module realizes a call to a web API (http://ip-api.com) to try to
43+ have extra information about remote IP.
44+
45+ **Table of contents **
1846
19- This module realizes a call to a web API (http://ip-api.com) to try to have
20- extra information about remote IP.
47+ .. contents ::
48+ :local:
2149
2250Configuration
2351=============
2452
25- You can use these configuration parameters
26- (menu ` Settings / Technical / Parameters / System Parameters `) that control
53+ You can use these configuration parameters (menu
54+ `` Settings / Technical / Parameters / System Parameters ` `) that control
2755this addon behavior:
2856
29- * ``auth_brute_force.whitelist_remotes `` is a comma-separated list of
57+ - ``auth_brute_force.whitelist_remotes `` is a comma-separated list of
3058 whitelisted IPs. Failures from these remotes are ignored.
3159
32- * ``auth_brute_force.max_by_ip `` defaults to 50, and indicates the maximum
33- successive failures allowed for an IP. After hitting the limit, the IP gets
34- banned.
60+ - ``auth_brute_force.max_by_ip `` defaults to 50, and indicates the
61+ maximum successive failures allowed for an IP. After hitting the
62+ limit, the IP gets banned.
3563
36- * ``auth_brute_force.max_by_ip_user `` defaults to 10, and indicates the
64+ - ``auth_brute_force.max_by_ip_user `` defaults to 10, and indicates the
3765 maximum successive failures allowed for any IP and user combination.
3866 After hitting the limit, that user and IP combination is banned.
3967
40- * ``auth_brute_force.check_remote `` defaults to True, and indicates if it
41- it will check the information on http://ip-api.com
68+ - ``auth_brute_force.check_remote `` defaults to True, and indicates if
69+ it it will check the information on http://ip-api.com
4270
4371Usage
4472=====
@@ -50,74 +78,77 @@ Logging
5078
5179This module generates some WARNING logs, in the following cases:
5280
53- * When the IP limit is reached: *Authentication failed from remote 'x.x.x.x'.
54- The remote has been banned. Login tried: xxxx. *
81+ - When the IP limit is reached: *Authentication failed from remote
82+ 'x.x.x.x'. The remote has been banned. Login tried: xxxx. *
5583
56- * When the IP+user combination limit is reached:
57- * Authentication failed from remote 'x.x.x.x'.
58- The remote and login combination has been banned. Login tried: xxxx. *
84+ - When the IP+user combination limit is reached: * Authentication failed
85+ from remote 'x.x.x.x'. The remote and login combination has been
86+ banned. Login tried: xxxx. *
5987
6088Screenshot
6189----------
6290
6391**List of Attempts **
6492
65- .. image :: /auth_brute_force/static/description/screenshot_attempts_list.png
66-
67-
68- .. image :: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
69- :alt: Try me on Runbot
70- :target: https://runbot.odoo-community.org/runbot/149/11.0
71-
72- For further information, please visit:
73-
74- * https://www.odoo.com/forum/help-1
93+ https://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/.https://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/.https://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/ https://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/ihttps://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/mhttps://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/ahttps://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/ghttps://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/ehttps://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/:https: //raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/:https: //raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force/
94+ https://raw.githubusercontent.com/OCA/server-auth/18.0/auth_brute_force//auth_brute_force/static/description/screenshot_attempts_list.png
7595
7696Known issues / Roadmap
7797======================
7898
79- * Remove 🐒 patch for https://github.com/odoo/odoo/issues/24183 in v12.
99+ - Depending of server and / or user network configuration, the
100+ idenfication of the user can be wrong, and mainly in the following
101+ cases:
80102
81- * Depending of server and / or user network configuration, the idenfication
82- of the user can be wrong, and mainly in the following cases:
103+ - If the Odoo server is behind an Apache / NGinx proxy and it is not
104+ properly configured, all requests will use the same IP address.
105+ Blocking such IP could render Odoo unusable for all users! **Make
106+ sure your logs output the correct IP for werkzeug traffic before
107+ installing this addon. **
83108
84- * If the Odoo server is behind an Apache / NGinx proxy and it is not properly
85- configured, all requests will use the same IP address. Blocking such IP
86- could render Odoo unusable for all users! **Make sure your logs output the
87- correct IP for werkzeug traffic before installing this addon. **
88-
89- * The IP metadata retrieval should use a better system. `See details here
90- <https://github.com/OCA/server-tools/pull/1219/files#r187014504> `_.
109+ - The IP metadata retrieval should use a better system.
110+ ``See details here <https://github.com/OCA/server-tools/pull/1219/files#r187014504> ``\ \_ .
91111
92112Bug Tracker
93113===========
94114
95- Bugs are tracked on `GitHub Issues
96- <https://github.com/OCA/server-tools/issues> `_. In case of trouble, please
97- check there if your issue has already been reported. If you spotted it first,
98- help us smash it by providing detailed and welcomed feedback.
115+ Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-auth/issues >`_.
116+ In case of trouble, please check there if your issue has already been reported.
117+ If you spotted it first, help us to smash it by providing a detailed and welcomed
118+ `feedback <https://github.com/OCA/server-auth/issues/new?body=module:%20auth_brute_force%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior** >`_.
119+
120+ Do not contact contributors directly about support or help with technical issues.
99121
100122Credits
101123=======
102124
125+ Authors
126+ -------
127+
128+ * Nitrokey GmbH
129+ * GRAP
130+ * Tecnativa
131+
103132Contributors
104133------------
105134
106- * Sylvain LE GAL (https://twitter .com/legalsylvain)
107- * David Vidal < david.vidal@tecnativa.com>
108- * Jairo Llopis < jairo.llopis@tecnativa.com>
135+ - Sylvain LE GAL (https://x .com/legalsylvain)
136+ - David Vidal david.vidal@tecnativa.com
137+ - Jairo Llopis jairo.llopis@tecnativa.com
109138
110- Maintainer
111- ----------
139+ Maintainers
140+ -----------
141+
142+ This module is maintained by the OCA.
112143
113144.. image :: https://odoo-community.org/logo.png
114145 :alt: Odoo Community Association
115146 :target: https://odoo-community.org
116147
117- This module is maintained by the OCA.
118-
119148OCA, or the Odoo Community Association, is a nonprofit organization whose
120149mission is to support the collaborative development of Odoo features and
121150promote its widespread use.
122151
123- To contribute to this module, please visit https://odoo-community.org.
152+ This module is part of the `OCA/server-auth <https://github.com/OCA/server-auth/tree/18.0/auth_brute_force >`_ project on GitHub.
153+
154+ You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
0 commit comments