In diesem Leitfaden werde ich Ihnen einige Ideen geben, wie Sie die Shieldon Firewall in Ihrer Yii-Anwendung implementieren können.
Verwenden Sie PHP Composer:
composer require shieldon/shieldon
Dies installiert auch die für Shieldon erforderlichen Abhängigkeiten:
In Ihrer public/index.php
Datei, vor dieser Zeile:
require __DIR__ . '/../vendor/yiisoft/yii2/Yii.php';
fügen Sie den folgenden Code hinzu:
Beispiel:
/*
|--------------------------------------------------------------------------
| Führen Sie die Shieldon Firewall aus
|--------------------------------------------------------------------------
|
| Die Shieldon Firewall überwacht alle HTTP-Anfragen, die zu Ihrer Website kommen.
| Das Ausführen der Shieldon Firewall vor der Initialisierung von Yii vermeidet mögliche Konflikte mit den integrierten Funktionen von Yii.
*/
if (isset($_SERVER['REQUEST_URI'])) {
$storage = __DIR__ . '/../runtime/shieldon';
$firewall = new \Shieldon\Firewall\Firewall();
$firewall->configure($storage);
// Die Basis-URL für das Kontrollpanel.
$firewall->controlPanel('/firewall/panel/');
$response = $firewall->run();
if ($response->getStatusCode() !== 200) {
$httpResolver = new \Shieldon\Firewall\HttpResolver();
$httpResolver($response);
}
}
Erstellen Sie einen Controller namens FirewallPanelController
.
Beispiel:
<?php
namespace app\controllers;
use yii\web\Controller;
class FirewallController extends Controller
{
public function beforeAction($action)
{
$this->enableCsrfValidation = false;
return parent::beforeAction($action);
}
/**
* Der Einstiegspunkt des Firewall-Panels.
*
* @return string
*/
public function actionPanel()
{
$panel = new \Shieldon\Firewall\Panel();
$panel->entry();
}
}
Stellen Sie sicher, dass enablePrettyUrl
in Ihrer Datei config/web.php
auf true gesetzt ist.
Beispiel:
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
'firewall/panel/' => 'firewall/panel',
'firewall/panel/<slug:.*>' => 'firewall/panel',
],
],
Das ist alles.
Sie können auf das Firewall-Panel zugreifen, indem Sie /firewall-panel
in Ihrem Browser besuchen.
https://yourwebsite.com/firewall-panel
Der Standard-Login ist shieldon_user
und das Passwort ist shieldon_pass
. Nachdem Sie sich im Firewall-Panel angemeldet haben, sollten Sie als erstes den Login und das Passwort ändern.
Wenn die Shieldon Firewall in den Einstellungen des Daemon
aktiviert ist, beginnt sie mit der Überwachung Ihrer Website. Stellen Sie sicher, dass Sie die Einstellungen korrekt konfiguriert haben.