Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.2.2] - 2024-11-30

Added

  • Respect CSP nonces in LiveDashboard Plugin. You can now add your nonce values using the csp_nonce_assign_key option in your router. See the Docs for more info. Closes #4

Fixed

  • We properly sanitize IPv4 or IPv6 addresses everywhere now. Fixes this bug

[0.2.1] - 2024-11-29

Fixed

  • Fixes a FunctionClauseError in the KnownMaliciousIP rule when an IPv6 address was checked.
  • Bumped the dependency phoenix_live_dashboard to at least 0.8.0 because versions below that were missing some functions we use in the LiveDashboardPlugin and that lead to compilation errors. (See #2)

[0.2.0] - 2024-11-28

Added

  • New Rule KnownMaliciousIP. Fetches a public blocklist of ~85k known malicious IPs tracked by AbuseIPDB from ezsuite.dev and blocks requests originating from these IPs.
  • Phx2Ban.manually_block_ip_address/1 function will manually add an IP address to the block list..
  • Phx2Ban.ip_address_status/1 function will return the current status of an IP address.
  • Config option allow_list. Accepts a list of IP addresses as strings so that you can avoid analyzing/blocking traffic from certain trusted IP addresses.
  • Config option enabled for enabling/disabling the firewall. Can be triggered through the LiveDashboard plugin or manually through Phx2Ban.FirewallConfig.put!(:enabled, true|false).
  • Config option ignore_routes. Accepts a list of routes as string or regex that Phx2ban should ignore. Any requests to these routes are excluded from analysis and will never get blocked.

[0.1.0] - 2024-10-28

Added

  • Initial release