nginx extras

nginx-module-ipset-access in CentOS/RHEL 7 (x86_64) - Zero-latency IP blocking using Linux kernel ipsets

Website: https://github.com/GetPageSpeed/ngx_ipset_access_module
License: BSD
Vendor: GetPageSpeed LLC
Description:
High-performance NGINX module for IP-based access control using Linux kernel ipsets.

Key Features:

- Blacklist/Whitelist modes: Block or allow IPs based on ipset membership
- Honeypot auto-add: Automatically add malicious IPs to ipsets with configurable timeouts and custom HTTP status codes
- Built-in rate limiting: Per-IP rate limiting with auto-ban to ipsets
- JavaScript challenges: Proof-of-work challenges to filter bots
- Dual-stack support: Works with both IPv4 and IPv6 ipsets
- FirewallD compatible: Integrates with firewall-cmd managed ipsets
- Whitelist bypass: Whitelisted IPs skip rate limiting and challenges
- Dry-run mode: Test rules in production without blocking
- Prometheus metrics: Native /metrics endpoint for monitoring
- LRU cache: Shared memory cache for high-performance lookups

Uses libipset directly (no CLI fallback) for kernel-level performance.
Compatible with realip module for proper client IP detection behind proxies.


To enable this module after installation, add the following to /etc/nginx/nginx.conf
and reload NGINX:

    load_module modules/ngx_http_ipset_access.so;


Alternatively, you can enable all installed modules by placing this line at the top of /etc/nginx/nginx.conf:

    include /usr/share/nginx/modules/*.conf;
Distro notes:
This package is compatible with all RHEL-based distributions, including CentOS, AlmaLinux, Oracle Linux, Rocky Linux, etc.

How to Install nginx-module-ipset-access in CentOS/RHEL 7 (x86_64)

sudo yum -y install https://extras.getpagespeed.com/release-latest.rpm
sudo yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum -y install nginx-module-ipset-access

Packages

nginx-module-ipset-access-1.28.0+2.0.6-1.el7.gps.x86_64 [30 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+2.0.5-1.el7.gps.x86_64 [29 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+2.0.4-1.el7.gps.x86_64 [28 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+2.0.2-1.el7.gps.x86_64 [25 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+2.0.1-1.el7.gps.x86_64 [25 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+2.0.0-1.el7.gps.x86_64 [25 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+1.0.6-1.el7.gps.x86_64 [16 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+1.0.5-1.el7.gps.x86_64 [16 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+1.0.4-1.el7.gps.x86_64 [15 KiB] (no changelog entry)
nginx-module-ipset-access-1.28.0+1.0.3-1.el7.gps.x86_64 [13 KiB] (no changelog entry)
nginx-module-ipset-access-1.26.3+1.0.3-1.el7.gps.x86_64 [13 KiB] (no changelog entry)

Subscribe