Month: February 2026

Fail2Ban: How to Detect Repeat Offenders and Ban Them for a Week (Recidive)

Fail2Ban: How to Detect Repeat Offenders and Ban Them for a Week (Recidive)

If you use Fail2Ban with Nginx and WordPress, sooner or later you’ll notice one thing: the same IP addresses keep coming back. They get banned for a few minutes or an hour, disappear… and shortly after try again /.env, /wp-login.php, /phpmyadmin, or other common attack paths. The solution is not to aggressively tighten the filters. […]

Read more »

Fail2Ban Nginx Setup – Block Scanners and Exploits Without Blocking WordPress Admin

Fail2Ban Nginx Setup – Block Scanners and Exploits Without Blocking WordPress Admin

This guide shows a complete Fail2Ban installation and configuration for Nginx, designed to: block real scanners and exploit attempts (e.g. requests to /.env, /.git, /phpmyadmin, etc.), avoid blocking administrators by accident (common issue when banning only by HTTP errors), ban IP addresses after repeated suspicious activity, use a short ban time (5 minutes) to reduce […]

Read more »

Automatic upgrade Debian 12 → Debian 13 with optional PHP and nginx update

Automatic upgrade Debian 12 → Debian 13 with optional PHP and nginx update

Upgrading Debian from version 12 (bookworm) to 13 (trixie) is an operation that should be performed in a repeatable and predictable way, especially on servers and containers (for example Proxmox LXC or virtual machines). Below you will find a simple guide and ready-to-use commands to download and run the upgrade script. Before running the upgrade: […]

Read more »