smorken / ip-whitelist
IP Whitelist middleware for Laravel
v1.3.0
2026-05-08 16:46 UTC
Requires
- php: ^8.3
- illuminate/contracts: ^12.0|^13.0
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^v3.4.0
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.1.1
- orchestra/testbench: ^10.0|^11.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-arch: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- phpstan/extension-installer: ^1.3
- phpstan/phpstan-deprecation-rules: 2.0.2
- phpstan/phpstan-phpunit: ^2.0.6
- smorken/docker: *
- spatie/laravel-ray: ^1.35
README
Middleware to limit access by IP subnet. NOTE: IP addresses can be spoofed!
Installation
You can install the package via composer:
composer require smorken/ip-whitelist
You can publish and run the migrations with:
php artisan vendor:publish --tag="ip-whitelist-migrations"
php artisan migrate
You can publish the config file with:
php artisan vendor:publish --tag="ip-whitelist-config"
Usage
Add allowed subnet(s) to your .env file (or publish the config and add them as an array).
.env
IP_WHITELIST_SUBNETS="192.168.0.0/24,10.10.0.0/16"
Add as middleware to your routes:
\Illuminate\Support\Facades\Route::get('/', [Controller::class, 'index'])
->middleware([\Smorken\IpWhitelist\Middleware\AllowIpFromWhitelist::class])
Testing
composer test
Security Vulnerabilities
Please report security vulnerabilities to scott dot morken at phoenixcollege dot edu.
Credits
License
The MIT License (MIT). Please see License File for more information.