bdsa/wafy
Composer 安装命令:
composer require bdsa/wafy
包简介
Un package Laravel pour bannir les adresses IP automatiquement et détecter les requêtes malveillantes.
README 文档
README
Wafy est un package Laravel développé par Bdsa pour bannir automatiquement les adresses IP et détecter les requêtes malveillantes telles que les tentatives d'injection SQL.
Résumé
Ce fichier README.md explique les étapes pour installer, configurer et utiliser le package wafy dans un projet Laravel. Il inclut des instructions pour :
- Ajouter le package via Composer.
- Publier la configuration et la migration.
- Appliquer la migration.
- Utiliser les middlewares et les commandes artisan.
- Configurer les patterns de détection des requêtes malveillantes.
Installation
1. Ajouter le package à votre projet
Dans le fichier composer.json de votre projet Laravel, ajoutez ce package :
"repositories": [ { "type": "vcs", "url": "https://github.com/tomakakwark/wafy" } ],
"require": { "bdsa/wafy": "dev-main" }
composer update
php artisan vendor:publish --provider="Bdsa\Wafy\WafyServiceProvider"
php artisan migrate
Middlewares
Le package fournit deux middlewares principaux :
BlockBannedIp : Bloque l'accès des IP bannies à l'application. DetectMaliciousRequests : Détecte les requêtes malveillantes (comme les tentatives d'injection SQL) et bannit automatiquement les adresses IP correspondantes. Pour les utiliser, ajoutez-les dans le fichier app/Http/Kernel.php de votre projet Laravel, dans la section $middleware ou $routeMiddleware :
protected $middleware = [ \Bdsa\Wafy\Middleware\BlockBannedIp::class, \Bdsa\Wafy\Middleware\DetectMaliciousRequests::class, ];
Commands Artisan
Le package fournit également trois commandes artisan pour gérer les IP bannies :
Bannir une IP :
php artisan waf:ban {adresse_ip}
Déban une IP :
php artisan waf:unban {adresse_ip}
Afficher les IP bannies :
php artisan wafy:list
Exemple de configuration :
return [ 'patterns' => [ '/(select\s.*from|union\s.*select|information_schema|concat|0x)/i', '/(\*.*from|where.*=.*\d)/i', ], ];
Exemple d'intégration dans les routes
Voici un exemple d'intégration des middlewares dans un groupe de routes :
Route::group(['middleware' => ['block.banned.ip', 'detect.malicious.requests']], function () { Route::get('/', function () { return view('welcome'); }); // Autres routes ici });
统计信息
- 总下载量: 24
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-09-25