diff --git a/app/Http/Middleware/AllowedIpAddressesMiddleware.php b/app/Http/Middleware/AllowedIpAddressesMiddleware.php new file mode 100644 index 000000000..f3f6a338d --- /dev/null +++ b/app/Http/Middleware/AllowedIpAddressesMiddleware.php @@ -0,0 +1,28 @@ +ip(), $allowedIps) + ? $next($request) + : abort(403); + } +} diff --git a/bootstrap/app.php b/bootstrap/app.php index bc634e905..3a71da348 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -19,6 +19,14 @@ 'public-dashboard' => App\Http\Middleware\PublicDashboard::class, ]); + $middleware->prependToGroup('api', [ + App\Http\Middleware\AllowedIpAddressesMiddleware::class, + ]); + + $middleware->prependToGroup('web', [ + App\Http\Middleware\AllowedIpAddressesMiddleware::class, + ]); + $middleware->redirectGuestsTo(fn () => route('filament.admin.auth.login')); $middleware->redirectUsersTo(AppServiceProvider::HOME); diff --git a/config/speedtest.php b/config/speedtest.php index f18055c87..ba3dc003d 100644 --- a/config/speedtest.php +++ b/config/speedtest.php @@ -11,6 +11,8 @@ /** * General settings. */ + 'allowed_ips' => env('ALLOWED_IPS'), + 'content_width' => env('CONTENT_WIDTH', '7xl'), 'prune_results_older_than' => (int) env('PRUNE_RESULTS_OLDER_THAN', 0),