PFVManager beta – Geranciador de Vouchers

o PFVManager é um gerenciador de voucher desenvolvido para trabalhar em conjunto com o sistema de vouchers do pfSense. Esta é uma versão beta e qualquer sugestões ou informações de bugs são bem vindas. Abaixo o passo-a-passo para baixar e instalar o software.

pfvManager

Requisitos:

  • PHP 5.5 (ou mais recente)
  • Apache ou outro servidor Web que rode PHP
  • Módulo cURL no PHP
  • Git

Instalação:

  1. No seu servidor Web, crie uma pasta onde será instalado o software e baixa o mesmo via Git
    $ mkdir vouchers
    $ cd vouchers
    $ git clone https://git.jonis.com.br/pfvmanager.git .
    
  2. Copie o arquivo de configuração de exemplo
    $ cp config.php.example config.php
    
  3. Edite o arquivo config.php e personalizei conforme suas necessidades. Dois itens de maior importância nesse arquivo de configuração são: $cp_url e $cp_pwd. Essas variáveis definem o endereço do seu pfSense e a senha de acesso do arquivo ‘cp.php’.  No arquivo config.php você também define qual o tipo de autenticação será usado. No pacote padrão, existe o arquivo ‘basic_auth.php’ que é um sistema simples de autenticação. Esse arquivo utiliza uma array (também no arquivo config.php) para especificar os usuários e suas senhas. Veja mais abaixo como criar o seu sistema próprio de autenticação.
  4. Edite o arquivo ‘cp.php’, defina a constante ‘SECRET_KEY’ e envie esse arquivo para o seu servidor pfSense, salvando o mesmo na pasta /usr/local/www
  5. Pronto! Acesse seu servidor Web na pasta criada e você verá a tela de login. Utilize o login ‘123’ e senha ‘test123’ para testes iniciais.

Para reportar problemas ou sugestões de melhorias, acesso o site do projeto: https://projetos.jonis.com.br.

Algumas observações: o sistema todo funciona diretamente com o pfSense, sem utilizar banco de dados. O campo de expiração será utilizado futuramente por um script (que será publicado no site do projeto) que será o responsável por apagar os vouchers vencidos. Essa funcionalidade ainda não esta disponivel. O script foi desenvolvido em português, porém esta preparado para aceitar múltiplos idiomas. Na pasta ‘locale/en/LC_MESSAGES/’ existe o arquivo ‘pfvmanager.po’. Caso queira traduzir o sistema para o seu idioma, utiliza esse arquivo e me envie o arquivo traduzido que irei inserir o mesmo no repositório.

Caso você deseje desenvolver o seu próprio sistema de autenticação, é bem simples. Você deve criar um arquivo php com o seu código de autenticação/verificação e registrar as variáveis de sessão necessárias para o sistema. Assim que o usuário autenticar com sucesso, o seu arquivo PHP deve criar a variáveis de sessão chamada “$_SESSION[‘user][‘id’]” contendo o código (id, de preferencia numérico) do usuário. Quando o usuário é desligado do sistemas (logof), essa sessão é apagada. Outras variáveis de sessão utilizadas pelo sistema são:

  • $_SESSION[‘user’][‘name’] = Nome do usuário (string)
  • $_SESSION[‘user’][‘id]’ = ID do usuário (login) (integer)
  • $_SESSION[‘user’][‘admin’] = Se o usuário é admin ou não (boolean)
  • $_SESSION[‘user’][‘max_events’] = Número máximo de eventos que o usuário pode criar. Desconsiderado se for admin.
  • $_SESSION[‘user’][‘max_vouchers_event’] = Número máximo de vouchers por evento. Desconsiderado se for admin.

Você pode utilizar o arquivo ‘basic_auth.php’ como exemplo para desenvolver o seu sistema de autenticação. E por último: o software é de uso livre, desde que você mantenha os créditos no código-fonte e no rodapé 😉

 

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *