O CakePHP é um framework web de código aberto amplamente utilizado que segue o padrão arquitetural MVC. Ele é muito respeitado na comunidade PHP e oferece uma variedade de recursos e ferramentas para construir aplicações web.
Este guia foi testado com sucesso na versão 3.8
do CakePHP. No entanto, também deve ser aplicável a versões mais antigas do framework.
Use o PHP Composer:
composer require shieldon/shieldon
Isso também instalará as dependências necessárias para o Shieldon:
As etapas 1 e 2 são aplicadas ao mesmo arquivo localizado em /config/route.php
.
As etapas 1 e 2 envolvem a modificação do mesmo arquivo localizado em /config/routes.php
. Portanto, você precisará realizar as seguintes etapas dentro desse arquivo:
/config/routes.php
./config/routes.php
.Seguindo essas etapas, você garantirá que ambas as modificações sejam feitas no arquivo apropriado.
Existe um middleware para CakePHP aqui. Basta registrá-lo na sua aplicação.
Exemplo:
/**
* Aplicar o Firewall Shieldon ao escopo da rota atual.
*/
$routes->registerMiddleware(
'firewall',
new \Shieldon\Firewall\Integration\CakePhp()
);
$routes->applyMiddleware('firewall');
Exemplo:
/**
* Definir a rota para o painel de firewall.
*/
$routes->connect('/firewall/panel/', [
'controller' => 'FirewallPanel',
'action' => 'entry'
]);
Crie um controlador chamado FirewallPanelController
e adicione o seguinte código a ele.
Exemplo:
$panel = new \Shieldon\Firewall\Panel();
$panel->entry();
exit;
Se você tiver o CSRF ativado, adicione estas linhas:
Exemplo:
$panel->csrf(
'_csrfToken',
$this->request->getParam('_csrfToken')
);
O exemplo completo ficará assim:
Exemplo:
<?php
namespace App\Controller;
class FirewallPanelController extends AppController
{
/**
* Esta é a entrada do nosso Painel de Firewall.
*/
public function entry()
{
// Acesse o Painel de Firewall.
$panel = new \Shieldon\Firewall\Panel();
$panel->csrf([
'_csrfToken' => $this->request->getParam('_csrfToken')
]);
$panel->entry();
exit;
}
}
É isso.
Você pode acessar o Painel de Firewall em /firewall/panel
. Para visualizar a página, abra esta URL no seu navegador.
https://for.example.com/firewall/panel
O login padrão é shieldon_user
e a senha é shieldon_pass
. Após fazer login no Painel de Firewall, a primeira coisa que você deve fazer é alterar o login e a senha.
Se o Firewall Shieldon estiver ativado na seção de configuração do "Daemon", ele começará a monitorar seu site. Certifique-se de ter configurado as configurações corretamente.