Configurando o FreeBSD e PyKota para receber o JPyKotaGUI

Neste artigo, ensino como configurar o FreeBSD e PyKota para que o JPyKotaGUI rode na plataforma com as funcionalidades necessárias para a administração do PyKota. Este tutorial tem relação com outro artigo minha autoria, que versa sobre Configuração do Servidor de Impressão com Cotas utilizando o PyKota (link na 1ª página). Desde já, boa sorte na implementação!

[ Hits: 7.442 ]

Por: Ricardo Xerfan em 21/02/2019


Configuração do DB do PyKota



Instale o "pgAdmin III" (pode ser em uma máquina Windows), esta ferramenta pode ser baixada gratuitamente da Internet.

Configure uma conexão com o DB do PyKota no FreeBSD. Na página inicial do "pgAdmin III", clique no botão "add a connection to a server" (ícone que parece uma tomada).

No campo "Name", coloque o nome da conexão. Ex.: ConnPykotaFreeBSD

No campo "Host", coloque o endereço IP do servidor FreeBSD (onde está localizado o DB do PyKota). Ex.: 192.168.1.5

Obs.: não mude nada nos outros campos e deixe o campo "Username" com o nome de usuário que está (pgsql).

No campo "Password", coloque a senha que foi definida na hora da configuração do PostgreSQL no tutorial de Instalação e configuração do PyKota citado na 1ª página.

Clique no botão "OK".

Feito isto, a conexão com o DB dentro de "Servers (1)". Ex.: +|_|ConnPykotaFreeBSD (192.168.1.5:5432)

A partir de agora, vamos configurar o DB do PyKota para que consiga trabalhar com os usuários e senhas do JPyKotaGUI.

Extenda a conexão com o DB que foi criada (aperte no +):
  • Em "Databases (3)", selecione e expanda o DB "pykota".
  • Expanda "Schemas (1)", depois expanda também "public".
  • Expanda "Tables (11)".

Perceba que temos várias tabelas, dentre elas a tabela "users" que será com a qual iremos trabalhar a partir de agora.

Expanda a tabela "users", depois expanda "Columns (8)" para vermos as colunas/atributos da mesma.

Perceba que temos os atributos: id, username, email, balance, lifetimepaid, limitby, description, overcharge. Contudo, não temos os atributos (colunas) "passwd" e "admin", que são os necessários para que os usuários façam login no JPyKotaGUI e sejam ou não administradores.

Vamos criar então os atributos citados acima.

Ainda no "pgAdmin III", COM A COLUNA/ATRIBUTO "users" SELECIONADA, clique no botão "Execute arbitrary SQL queries" (ícone que parece uma lupa com a palavra 'SQL' dentro):

Na janela de "Query" que apareceu, dentro da aba "SQL Editor", cole o código abaixo, selecione-o e depois clique no botão "Execute query" (ícone que parece um botão de play verde):

--
-- Alterando tabela users adicionando coluna para manter a senha e
-- adicionando coluna para manter o estado de administrador
--
ALTER TABLE users ADD COLUMN passwd TEXT;
ALTER TABLE users ADD COLUMN admin BOOLEAN;

Obs.: depois de executado os comandos acima, na janela de "Query", no painel "Output pane", dentro da aba "Messages", deverá ser exibida uma mensagem parecida com a abaixo:

Query returned successfully with no result in 31 ms

Se aconteceu tudo certo como acima, você perceberá que foram criadas as colunas/atributos "passwd" e "admin" foram criadas dentro da tabela "users". Caso não tenha visualizado no "pgAdmin III", basta clicar no botão "Refresh the selected object.", ícone com duas setas, uma vermelha e outra verde, formando um círculo.

Agora, vamos ajustar as permissões do usuário "pykotaadmin" nas colunas/atributos recém criadas.

Na janela de "Query", dentro da aba "SQL Editor", cole o código abaixo, selecione-o e depois clique no botão "Execute query" (ícone que parece um botão de play verde):

--
-- Ajustando permissoes
--
GRANT SELECT, INSERT, UPDATE, DELETE ON users TO pykotaadmin;

Obs.: depois de executado os comandos acima, na janela de "Query", no painel "Output pane", dentro da aba "Messages" deverá ser exibida uma mensagem parecida com a abaixo:

Query returned successfully with no result in 32 ms

Atenção: agora vem a parte mais delicada do procedimento, VOCÊ DEVERÁ PRESTAR BASTANTE ATENÇÃO E TER CUIDADO DE FAZER EXATAMENTE IGUAL AOS PASSOS A SEGUIR, caso contrário, poderá acontecer de você NÃO conseguir logar no JPyKotaGUI. Vamos aos passos:

Obs.: se você está seguindo o Tutorial de Instalação e configuração do PyKota citado na 1ª página, já deverá existir um usuário chamado "root" na sua base de dados do PyKota, se for este o caso, pode pular para o passo "Altera-Senha02". Caso contrário, siga normalmente com o passo "Altera-Senha01".

PASSO: Altera-Senha01

Caso você tenha uma base de dados populada do PyKota, você vai precisar verificar quais usuários estão cadastrados e quais seus respectivos ID, para então poder realizar o update na tabela com a senha inicial no usuário que você quiser logar como administrador no JPyKotaGUI. Para isso, basta rodar o comando abaixo na janela de "Query", dentro da aba "SQL Editor":

select * from users order by id;

Feito isto, vai aparecer na janela de "Query", no painel "Output pane", dentro da aba "Data Output" a lista de usuários cadastrados no DB do PyKota com seus respectivos IDs. Basta você verificar qual usuário você vai querer que seja administrador do JPyKotaGUI e anotar o ID (da coluna/atributo id) do mesmo, partindo então para o passo "Altera-Senha02".

Caso não queira nenhum, dos usuário apresentados na consulta, como administrador do JPyKotaGUI, basta inserir um usuário na tabela "users". Para isso, rode o comando abaixo na janela de "Query", dentro da aba "SQL Editor":

insert into users (username) values ('administrador');

Feito isto, deverá retornar o resultado abaixo na janela de "Query", no painel "Output pane", dentro da aba "Messages":

Query returned successfully: one row affected, 12 ms execution time.

Para saber qual ID foi atribuído ao usuário recém criado, basta fazer a consulta citada no começo deste passo "Altera-Senha01" (select * from users order by id;), ou simplesmente:

select * from users where username='administrador';

Feito isto, vai aparecer na janela de "Query", no painel "Output pane", dentro da aba "Data Output" o usuário recém cadastrado.

Obs.: a partir de agora, não vou mais citar os nomes das janelas, painels e abas, senão vai ficar muito repetitivo.

ATENÇÃO: se você é um usuário avançado, vai saber que eu poderia ter adicionado a senha na hora da criação do "user" acima e deve estar se perguntando o por quê de eu não ter feito isto. A resposta é simples, a senha é criptografada "com um hash de 160 bits, equivalente a 40 caracteres", dentro do projeto do JPyKotaGUI com uma função específica para isso e, alguns usuários, têm dificuldades de gerar a mesma. Então, para não deixar dúvidas, faz-se necessário ser um pouco mais detalhado e deixar para criar a senha em um passo separado. Siga agora para o passo abaixo.

PASSO: Altera-Senha02

Agora, vamos criar a senha criptografada do usuário que vai ser administrador do JPyKotaGUI e torná-lo administrador. Para isso, você vai precisar saber o ID que foi atribuído a ele na hora da criação do mesmo dentro do DB PyKota (foi explicado no passo "Altera-Senha01").

Na janela de "Query", dentro da aba "SQL Editor", cole o código abaixo, selecione-o e depois clique no botão "Execute query" (ícone que parece um botão de play verde):

--
-- Alterando senha do usuario criado com script de instalaca
-- Senha: 123 é igual a 40bd001563085fc35165329ea1ff5c5ecbdbbeef
--
UPDATE users
SET passwd='40bd001563085fc35165329ea1ff5c5ecbdbbeef',admin=TRUE
WHERE id=1;

Feito isto, você pode executar a instrução de consulta citada no passo "Altera-Senha01" (select * from users order by id;) e na saída do comando, você vai perceber que o usuário ficou com o campo "senha" e campo "admin" modificado conforme a instrução realizada acima.

Obs.1: você pode alterar essa senha depois no frontend do JPyKotaGUI.

Obs.2: excluídas as instruções contidas no passo "Altera-Senha01", todas as outras instruções SQL foram tiradas do script de atualização do DB PyKota escrito por Rogerio Tomassoni. Como usuários com menos experiências teriam dificuldades em realizar o procedimento, preferi destrinchar o script nas explicações acima que foram um pouco mais detalhadas.

Segue abaixo o referido script:

- Nome do script: updatePostgres-0.0.2.sql
- Autor: Rogerio Tomassoni

--
-- Alterando tabela users adicionando coluna para manter a senha e
-- adicionando coluna para manter o estado de administrador
--
ALTER TABLE users ADD COLUMN passwd TEXT;
ALTER TABLE users ADD COLUMN admin BOOLEAN;
--
-- Ajustando permissoes
--
GRANT SELECT, INSERT, UPDATE, DELETE ON users TO pykotaadmin;
--
-- Alterando senha do usuario criado com script de instalaca
-- Senha: 123 é igual a 40bd001563085fc35165329ea1ff5c5ecbdbbeef
--
UPDATE users
SET passwd='40bd001563085fc35165329ea1ff5c5ecbdbbeef',admin=TRUE
WHERE id=1;

Pronto! Realizadas as configurações do DB PyKota. Vamos agora configurar o Apache-Tomcat.

Página anterior     Próxima página

Páginas do artigo
   1. Observação Inicial
   2. Configuração do DB do PyKota
   3. Configurando arquivo "apache-tomcat-6.0"
   4. Considerações sobre os LOGs do JPyKotaGUI e sobre o modo de inicialização do Tomcat
   5. Considerações sobre as configurações relativas ao projeto do JPyKotaGUI
Outros artigos deste autor

Servidor de impressão com cotas no FreeBSD (CUPS + PostgreSQL + PyKota)

Leitura recomendada

Introdução ao PC-BSD

Configurando rede wireless com wpa_supplicant

O Mascote do FreeBSD é um demônio?

Apache2 com SSL - Configuração para forçar uso de HTTPS ao invés de HTTP

Instalação de Aplicativos no FreeBSD

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts