Beruflich Dokumente
Kultur Dokumente
VERSO PROVISRIA
ii
Resumo
iii
iv
Abstract
The increasing energy consumption in our homes and office, justified by the enormous
quantity of electrical equipment that we use in a daily bases, show us that is imperative to
start using energy in a rational way. Saving energy limits the negative impact caused in
nature.
The amount of electric equipment in our homes, always on, or in standby, is rising the
electric consumption, makes wondered where we spent all that energy. To determine power
consumption, it is necessary the use of simple tools and equipments, that allow identified,
clearly, which equipments are spending more energy and when. An easy way to do this is
using a website, where the user could visualize the past and present consumption.
This dissertation aims to develop and improve a communication system and a web service,
applied to energy efficiency services. For this, it was develop a system that allow the
communication between the measure equipments, that makes consumption readings in one
place, and a database, situated in a distinct location. Also, it was created a website to allow
data visualization, and an alert system by e-mail or sms, to warn about system failures.
vi
NDICE
INTRODUO ..............................................................................................1
1.1
MOTIVAO .......................................................................................1
1.2
PROBLEMA.........................................................................................3
1.3
1.4
2.2
EQUIPAMENTOS ....................................................................................8
2.2.1
2.2.2
CONVERSORES ............................................................................... 12
2.3
COMUNICAES ................................................................................. 14
2.3.1
2.3.2
2.4
2.4.1
VPN ............................................................................................ 19
SSL VPN .................................................................................... 20
2.5
SCADA........................................................................................... 23
2.6
CONCLUSO ..................................................................................... 27
IMPLEMENTAO ....................................................................................... 29
3.1
3.2
JAMOD .......................................................................................... 32
3.3
ENCAMINHAMENTOS ............................................................................. 39
3.4
3.5
3.6
ALARMES ........................................................................................ 44
5.2
REFERNCIAS ............................................................................................ 65
vii
viii
Lista de figuras
ix
Lista de tabelas
xi
xii
VPN
M2M
Machine-to-Machine
LAN
SGCIE
LCD
QGBT
OSI
PDU
ADU
CRC
HEX
Hexadecimal
SSL
TLS
IETF
AES
DES
3DES
Triple DES
CA
Certificate Authority
SO
Sistema Operativo
SCADA
DNS
DMZ
DeMilitarized Zone
P2P
Point-To-Point
GPRS
UMTS
3G
Terceira Gerao
CMPB
xiii
Captulo 1
Introduo
1.1
Motivao
Introduo
Introduo
software de gesto e suporte de comunicao entre os dois. Isto nem sempre realizvel ou
efectuado de forma intuitiva.
1.2
Problema
Introduo
Situaes como pretender usar a base de dados dessa aplicao para outra no permitido.
Como exemplo, caso exista um equipamento a armazenar dados nas instalaes da empresa
certificadora, e outro como cpia de segurana nas instalaes do cliente, em caso de falha
de comunicao, como falha na internet, p.e., obriga-nos a importar toda a base de dados do
cliente para a empresa certificadora, onde apenas seria necessrio obter os dados em falta.
As aplicaes que os fabricantes fornecem tm as normais limitaes de uma aplicao
genrica, e como so fechadas, no permitem o acrscimo de funes a essa mesma
aplicao. Isso faz com que a actualizao da mesma no seja possvel, tendo sempre que ser
o fabricante a incluir novas caractersticas, o que no uma soluo vivel.
Assim, necessrio obter uma soluo que permita uma fcil e transparente forma de
comunicao para o envio de dados entre os sistemas que efectuam medies, e o local onde
os dados sero armazenados para posterior anlise, sem que para tal seja necessrio fazer
alteraes nas redes dos locais onde os equipamentos sero instalados.
1.3
Objectivos e Estratgia
Introduo
1.4
Estrutura da dissertao
Introduo
Captulo 2
Estado da Arte
Neste captulo realizada uma breve discrio sobre os equipamentos, servios fornecidos
e o protocolo usado para a comunicao, estudados para a realizao do presente trabalho.
2.1
Estado da Arte
[4] e [5]. Como os dados podem ser visualizados quase instantaneamente, as empresas podem
conseguir fazer alteraes imediatas no funcionamento das mesmas, e verificar se essas
alteraes permitem melhorias no sistema energtico.
Estes sistemas tambm podem permitir, segundo [6], criar relatrios de acordo com as
necessidades dos diferentes utilizadores, e poder estar ligado a um sistema que permita
controlar e monitorizar os parmetros de qualidade do ar interior, permitindo desta forma
fazer uma gesto global e centralizada de todos os parmetros.
Para que estes sistemas funcionem correctamente em ambientes com vrios edifcios ou
contadores elctricos separados, necessrio recorrer tambm s facturas elctricas, para
verificar inicialmente quais os pontos onde o consumo energtico maior, e comear a partir
desse ponto.,
Num caso prtico, para situar a funcionalidade de uma aplicao deste gnero, a Cmara
Municipal de Ponte da Barca, CMPB, tem ao seu encargo 187 instalaes de consumo (ano
2007). Estas instalaes esto agrupadas consoante o seu nvel de tenso:
Relativamente s instalaes de BTN estas esto divididas de acordo com funo que
desempenham:
Como qualquer cmara, existe um consumo elevado com a iluminao pblica, consumo
este que se deve, em geral, ao tipo de desenho da iluminao e antiguidade de muitas
instalaes. Isto origina um aproveitamento pouco eficiente da energia luminosa produzida
pelos elementos e sistemas de iluminao e a elevados nveis de poluio luminosa. Por isso,
e em muitos casos tambm devido ao aumento do consumo com o crescimento urbano e a
ampliao de pontos de luz na rede, um sistema destes permite aos Municpios realizar
diagnsticos s suas instalaes de iluminao com o fim de reduzir o seu consumo, diminuir o
seu custo econmico, facilitar a sua manuteno e dar melhores servios aos seus cidados.
2.2
Equipamentos
A recolha de dados energticos j no pode ser realizada apenas pelos actuais contadores
de consumo que estamos habituados a ver nas entradas das nossas habitaes, Figura 3.
Estado da Arte
10
Estado da Arte
aps pedidos de valores de medio por tramas Modbus provenientes do computador ao qual
esto conectados, retornam uma trama com a resposta ao pedido.
Estado da Arte
11
1200m, permitindo ter estes medidores em pontos distantes do ponto onde colocamos o
computador com o software que ir, atravs de Modbus, efectuar os pedidos aos mesmos.
Para distinguir cada um dos equipamentos, atribudo, um endereo entre 1 at 255. Como
as portas RS485 que existem nos computadores, ou os conversores, referidos no ponto
seguinte, no permitem este nmero de equipamentos ligados mesma porta/conversor, no
h o risco de esgotar a pool de endereos que possam ser atribudos, sendo por isso
necessria uma nova porta ou conversor.
Alm deste tipo de analisadores, que habitualmente so utilizados para medir circuitos,
que poder ser um circuito geral, ou um parcial, existem equipamentos especficos para
medir consumos em tomadas elctricas, como o da Figura 6. Estes equipamentos permitem o
conhecimento do consumo de um equipamento elctrico especfico, ou conjunto de
equipamentos, que estejam ligados directamente neste medidor. Tal como os anteriores,
medem alm dos consumos, valores de tenso, corrente, potncia, frequncia e ngulo de
fase.
12
Estado da Arte
2.2.2 Conversores
Para facilitar a colocao dos equipamentos de medio em instalaes mais complexas,
normalmente utiliza-se conversores Ethernet<->RS485, ver [11] [12]. Estes, Figura 7,
permitem o uso da actual rede informtica para ligao dos medidores a um computador que
se encontrem em localizaes diferentes.
Estado da Arte
13
14
Estado da Arte
2.3
Comunicaes
Estado da Arte
15
16
Estado da Arte
Estado da Arte
17
Cliente
Servidor
Inicia Pedido
Recebe Resposta
Acesso
Descrio
01
Leitura
02
Leitura/Escrita
03
Leitura
04
Leitura/Escrita
Estas funes permitem o acesso aos registos de memria dos equipamentos com que
estamos a comunicar, memria essa que pode ser de leitura e/ou escrita, e que pode conter
apenas informao booleana, para o caso de querermos saber se uma sada est activa ou
no, p.e., ou dados concretos, como uma leitura de um valor.
A trama contm diversos parmetros, que so preenchidos com bits, bytes (8 bits) ou
words (16 bits), em sistema hexadecimal. Estes parmetros so, no caso da trama enviada do
cliente para o servidor, 1 byte com o endereo do equipamento com o qual estamos a tentar
comunicar, outro com a funo que pretendemos, Tabela 1, 2 bytes, ou uma word, com o
valor do primeiro registo que pretendemos, outra word com a quantidade de registos
pretendidos e, finalmente, o campo de CRC, para controlo de erros.
Um exemplo de uma situao pergunta/resposta pode ser verificada na Tabela 2 e Tabela
3Error! Reference source not found., respectivamente.
18
Estado da Arte
Funo
64
03
Registo Inicial
00
Quantidade Registos
0A
00
CRC Checksum
03
2C
3C
Neste pedido, tudo em valores hexadecimais, pretendido que o equipamento que est
configurado com o nmero 64 nos informe dos valores que tem nos registos de memria,
funo 03, comeando no registo 000A. Os registos de memria, definidos por esta funo,
iniciam no nmero 40 000, mas como a funo vai na trama, a referncia 4xxxx implcita.
A quantidade de registos, tal como o nome indica, informa o equipamento da quantidade
de registos de que pretendemos obter informao, neste caso, 3 registos, desde o 00 0A at
ao 00 0C. O CRC permite testar se no houve corrupo de dados durante o transporte.
Tabela 3 - Trama de resposta Modbus.
Endereo
Funo
N Bytes
64
03
06
Registo 1
Registo 2
Registo 3
2E
2E
2F
CE
E8
13
CRC Checksum
0D
58
Estado da Arte
19
2.4
VPN
Para estabelecermos ligaes entre dois pontos geograficamente distintos, p.e., uma
empresa que tenha sede no Porto e uma sucursal em Lisboa, mas que se pretende que
estejam numa rede de computadores comum, recorre-se a ligaes VPN. Estas ligaes
permitem que os pontos comuniquem entre si, como se da mesma rede fsica se tratasse,
Figura 15.
Com
uso
de
VPNs,
alm
do
referido
anteriormente,
garante-se
tambm
20
Estado da Arte
Estado da Arte
21
Utiliza-se o uso de SSL nos sites de internet que habitualmente usamos, como e-banking,
o e-mail, entre outros, em que o endereo se inicia com https. O princpio o mesmo, ou
seja, troca e dados confidenciais mas que, em vez de ser utilizado em aplicaes, como o
browser, aplicada a redes. A ligao estabelecida entre dois computadores, que
funcionam como gateways, e todo o trfego direccionado por esses pontos.
Segundo Charlie Hosner, em [18], OpenVPN uma VPN que funciona em user-space, e
que actualmente conhecida tambm por TLS ou TLS/SSL, desde que o IETF reclamou para si
o desenvolvimento e gesto do SSL. TLS/SSL, conforme apresentado na Figura 16 e descrito
em [19], pertence camada transporte, o que permite fornecer segurana indirectamente s
aplicaes, ou seja, como as aplicaes correm sob a camada de transporte, todos os dados
que passam para a camada de rede provenientes da camada de aplicao, encontram-se
automaticamente encriptados, desde que a aplicao esteja devidamente configurada para
utilizar TLS/SSL.
22
Estado da Arte
Estado da Arte
23
habitualmente, listas de certificados revogados, ou seja, certificados que, por algum motivo,
foram considerados invlidos. Este motivo , normalmente, por pedido do dono do mesmo,
que pretende utilizar um novo certificado e, como tal, pretende deixar de utilizar o j
existente. Os certificados emitidos pela CA contm a chave pblica e a identidade do dono do
certificado. Assim, o CA garante ao utilizador, que est a usar a chave pblica de outra
pessoa, que aquela chave mesmo dessa pessoa, e no de outra se est a fazer passar por
ela, tendo ento garantia de autenticidade da chave.
Chaves simtricas ou assimtricas so usadas com bastante rapidez e so criadas usando
algoritmos slidos, como AES, DES ou 3DES.
Conforme referido anteriormente, TLS/SSL VPNs operam em user-space. Desta forma, no
necessitam de ligaes complexas com o kernel do SO sobre o qual esto a operar.
Normalmente, para usar encriptao na camada de rede, necessrio recurso ao kernel, mas
neste caso esta questo foi resolvida de forma mais simples, atravs do uso de interfaces
virtuais. Estas interfaces funcionam de forma transparente para o utilizador, ou seja, como
se fosse uma interface de rede fsica. Assim, todo o trfego redireccionado por essa porta
virtual, e encriptado e s depois segue para a camada fsica do kernel.
Com esta soluo, basta configurar um servidor de VPN num determinado local, e instalar
os clientes nas mquinas que se querem ligar rede que esse servidor se encontra a partilhar.
Esses clientes podem ser fixos ou mveis, tambm conhecidos por road warriors.
2.5
Scada
24
Estado da Arte
Estado da Arte
25
26
Estado da Arte
Estado da Arte
2.6
27
Concluso
28
Captulo 3
Implementao
Neste captulo apresentada a soluo pensada para o problema do ponto 1.2 desta
dissertao.
3.1
OpenVPN e Webmin
Para a criao de do tnel VPN, Figura 24, entre o ponto onde colocado o medidor, e a
rede onde se encontra um servidor para armazenamento de dados, recorreu-se aplicao
OpenVPN,em [23].
Foi instalada a verso servidor da aplicao no servidor de VPN, a correr Ubuntu, e
configurado para permitir o acesso ao servidor que ir armazenar os dados provenientes dos
medidores.
VPN Tunnel
Internet
Base de
Dados
Servidor VPN
Energy
Sensor
Cliente VPN
29
30
Implementao
Figura 25 Webmin.
Depois de instalado o Webmin e a OpenVPN, comea-se por configurar um CA, para
posteriormente gerar as respectivas chaves, quer para o servidor, quer para os clientes que
iro permitir comunicar com os medidores.
Para configurar um CA, preenche-se os dados indicados na Figura 26. Escolhe-se o tipo de
encriptao pretendida, tendo em ateno que quanto maior, no caso apresentado est 2048
bits, mais lenta a gerao da chave, mas tambm mais difcil de decifrar.
Implementao
31
Aps gerar o CA, necessrio criar uma chave para o servidor que ficar do lado da
empresa que presta o servio. Como se v pela Figura 27, basta escolher no key server a
opo servidor, e gerar a chave. Esta chave nica, independentemente da quantidade de
clientes que possam estar na VPN.
Desta forma, permitimos que os equipamentos que esto ligados na VPN, possam usar um
servidor interno de DNS para resolver os pedidos, principalmente quando so usados nomes
em vez de IPs na rede interna.
32
Implementao
3.2
Jamod
Implementao
33
Foram desenvolvidas diversas funes que utilizam esta biblioteca, permitindo assim
obter os dados dos registos pretendidos dos medidores, que se encontram no outro extremo
do tnel VPN, e, atravs de funes criadas para armazenamento na base de dados, descritas
posteriormente, armazenar os mesmos.
Um diagrama com a estrutura de funes criadas apresentado na Figura 30, sendo que
as funes dividem-se em dois grupos, as que funcionam com a base de dados, apresentadas a
verde, e as que comunicam com o equipamento de medio, a azul.
connection()
efectua a ligao ao medidor atravs do
conversor
database_connect()
Estabelece a ligao BD
get_interval()
Obtm o intervalo de tempo da BD com que se
pretende gravar os dados
query_registers()
Obtm da BD quais os registos que se pretende
obter os dados
getRegister()
Obtm os valores do medidor para os registos
pretendidos
guardaDB()
Guarda na BD os dados obtidos
disconnect()
Fecha a ligao BD
34
Implementao
Implementao
35
36
Implementao
Implementao
37
38
Implementao
} catch (ModbusSlaveException e) {
e.printStackTrace();
} catch (ModbusException e) {
e.printStackTrace();
}
try {
//obter a resposta
ReadInputRegistersResponse res = (ReadInputRegistersResponse) trans.getResponse();
if (res.getRegisterValue(0)<0){
valor_reg=Math.abs(res.getRegisterValue(1));
}
else{
valor_reg=res.getRegisterValue(0)*65536+res.getRegisterValue(1);
}
return valor_reg;
} catch (ClassCastException e) {
trans.getResponse();
return -1;
}
}
Implementao
39
sql
"INSERT
INTO
"+tipo+"(data,name,valor,units)
VALUES('"+data_hora_local+"','"+name+"','"+valor+"','"+units+"')";
try {
Statement data = connect.createStatement();
int answer = data.executeUpdate(sql);
data.close();
connect.close();
} catch (SQLException e) {
e.printStackTrace();
}
disconnect(connect);
}
3.3
Encaminhamentos
Para que o servidor permita o acesso sua rede interna a partir da VPN, necessrio
adicionar regras de encaminhamento do trfego IPv4 no SO. Basta para isso fazer na consola,
ou terminal, o seguinte:
>>nano /etc/sysctl.conf
net.ipv4.ip_forward = 1
>>sysctl -p /etc/sysctl.conf
Nos clientes Windows onde queremos encaminhar a rede interna, ou seja, queremos que
seja possvel chegar rede interna do cliente a partir do tnel VPN, modificado uma chave
de registo, HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters, e
acrescentar o valor "IPEnableRouter=1. Com isto, permitimos que o trfego TCP/IP seja
encaminhado entre a placa de rede fsica, que nos fornece a rede local, e a placa de rede
virtual, que nos fornece a rede proveniente da VPN.
Com isto, j conseguimos atingir o conversor do lado do servidor para recolher dados.
40
3.4
Implementao
Base de Dados
A base de dados usada uma base de dados MySQL, pois opensource e muito fivel,
permitindo desta forma que os dados armazenados possam tambm ser usados por aplicaes
de terceiros ou futuras aplicaes, alm de tambm permitir efectuar alguma anlise de
dados directamente da base de dados.
Utilizou-se ento no servidor Linux a base de dados MySQL, e para administrar a base de
dados, instalou-se tambm o phpmyadmin, que uma ferramenta Web para gesto de base
de dados.
Para a ligao entre a base de dados e a aplicao desenvolvida em java, foi utilizado o
mysql-connector-java, em [26] . Esta ferramenta o driver oficial para ligaes entre
aplicaes java e base de dados MySQL.
Um exemplo de uma base de dados criada, tendo as tabelas principais, apresentado na
Figura 31, onde alm da tabela que contem as configuraes relevantes, acresce a tabela
registers, que contem todos os registos de memria dos equipamentos de medio utilizados.
3.5
Interface Grfica
Para a interface grfica, foi instalado no servidor a correr Ubuntu, um servidor de html,
Apache2 e de php, o php5, alm da j referida base de dados MySQL, onde esto
armazenados os dados medidos, os registos usados, parmetros das configuraes e as contas
de utilizador para efectuar o login na pgina Web.
Implementao
41
Alm do uso de html para desenvolver a interface visual da pgina Web, elementos
estticos, e do php para troca de dados entre o cliente e o servidor, elementos dinmicos,
foram usados parte de cdigo em javascript, para as animaes dos menus, mas
principalmente para a criao dos grficos usados.
A ferramenta que permitiu o desenho grfico dos valores obtidos dos equipamentos de
medio, designada de Flote pode ser encontrada em [27]. Este cdigo permite, alm de
criar grgicos. Interaco com o utilizador, permitindo-lhe, ao passar com o rato por cima do
mesmo, visualizar pontos especficos do grfico, Figura 32, fazer zoom no mesmo, entre
outras.
O script que cria o grfico com os valores guardados na base de dados em javascript
usando Flot, apresentado seguidamente, bastando depois no html colocar o grfico,
recorrendo a uma div com o tamanho que queremos o mesmo,
<div id="placeholder" style="width:800px;height:300px"></div>
42
Implementao
Implementao
43
44
3.6
Implementao
Alarmes
Implementao
45
Envio de e-mail:
fromaddr = 'ricardo.faria@fe.up.pt'
toaddrs = ["Ricardo Faria<ricardo.faria@fe.up.pt>"]
subject = 'ERRO gerar Previsoes'
####ir ao argumento buscar o erro e adicionar a mensagem
msg = 'Erro(s) encontrado(s): \r\n'+sys.argv[1] +erro_programa
# Credentials (if needed)
username = '###'
password = '###'
#
BODY = string.join((
"From: %s" % fromaddr,
"Subject: %s" % subject,
"",
msg
), "\r\n")
# The actual mail send
server = smtplib.SMTP('smtp.fe.up.pt:25')
#server.connect()
server.login(username,password)
server.sendmail(fromaddr, toaddrs, BODY)
server.quit()
46
Implementao
Envio de SMS:
#variaveis
ntlm = sys.argv[1] #obtem do arg1 o n telefone
msg = sys.argv[1]#obtem do arg2 a mensagema enviar
enter = '\r\n'
ctrlz = '\x1a\n'
#conf pserie
ser = serial.Serial()
ser.port='/dev/ttyUSB1' #unix
ser.port='com10' #windows
ser.baudrate=115200
ser.rtscts=1
ser.timeout=3
ser.open()
#configuracoes do modem
ser.write('AT'+ enter) # AT
ser.readline()
time.sleep(2)
#Registo e nivel de sinal
ser.write('AT+CREG?'+enter)
ser.readline()
reply = ser.readline()
if reply == '+CREG: 0,1'+enter:
print "Modem registado na rede..."
else:
print "Falha de registo..."
sys.exit
ser.write('AT+CMEE=1'+ enter)
time.sleep(2)
#enviar sms
print "Enviar SMS's"
ser.write('AT+CMGF=1'+ enter)
print "CMGF:",ser.read(0)
time.sleep(2)
ser.write('AT+CMGS="'+ntlm+'"'+ enter)
print "CMGS :",ser.read(0)
time.sleep(2)
ser.write('"'+ msg + '"' + ctrlz)
reply = ser.read(2)
print "final:",reply
Captulo 4
Caso Prtico
O sistema de contabilidade energtica municipal tem como principal objectivo fazer uma
gesto e controlo de energia nas instalaes municipais. Neste sistema armazenada
informao referente a todas as instalaes com consumo de energia elctrica facturado ao
municpio. efectuado o tratamento de dados que resultam em informaes sobre o consumo
e sugestes ao utilizador para reduzir a facturao energtica. Estas sugestes resultam da
comparao de valores de cada instalao com os valores parametrizados de consumo por
rea e por potncia contratada, permitindo identificar consumos energticos e potncias
contratadas acima dos valores normais para cada tipo de instalao.
Principais funes do sistema de contabilidade energtica:
Para permitir isto, foi configurado um sistema para interligar a rede da Cmara Municipal
de Ponte da Barca, CMPB, com as instalaes da Smartwatt - Positive Energy and Sustainable
Solutions, empresa onde foi desenvolvido o sistema.
Um esquema do sistema instalado apresentado na Figura 34, onde foi instalado um
servidor a correr Ubuntu, com OpenVPN, para criar a ligao VPN entre a CMPB e a
47
48
Caso Prtico
Smartwatt, base de dados MySQL para armazenar os dados recolhidos e servidor Web com a
pgina para visualizao dos dados recolhidos.
Smartwatt
WEB Server
SISTEM server
Storage
Internet
VPN Tunnel
Cliente
CMPB
Conversor
TCP<->RS-485
Energy
Sensor
Energy
Sensor
Energy
Sensor
Energy
Sensor
Do lado do cliente, CMPB, est instalado um computador com sistema Windows, onde foi
configurado a verso cliente de OpenVPN, para estabelecer o tnel VPN com a Smartwatt,
computador este que est fisicamente ligado na rede da CMPB. Nessa mesma rede, est um
conversor Ethernet<->RS485 ao qual os aparelhos de medio esto ligados.
Comeando pelas configuraes do servidor, para a OpenVPN, foi usado o mtodo descrito
no ponto 3.1, com o recurso aplicao Webmin. Os ficheiros criados para o servidor e para o
cliente apresentam-se seguidamente.
Caso Prtico
49
Server.ovpn
port Porto
proto udp
dev tun
ca keys/smartwatt_ge/ca.crt
cert keys/smartwatt_ge/server_ge.crt
key keys/smartwatt_ge/server_ge.key
dh keys/smartwatt_ge/dh1024.pem
server 10.0.1.0 255.255.255.0
crl-verify keys/smartwatt_ge/crl.pem
cipher AES-128-CBC
user nobody
group nogroup
status servers/server_ge/logs/openvpn-status.log
log-append servers/server_ge/logs/openvpn.log
verb 2
mute 20
max-clients 100
management 127.0.0.1 8500
keepalive 10 120
client-config-dir /etc/openvpn/servers/server_ge/ccd
client-to-client
comp-lzo
persist-key
persist-tun
ccd-exclusive
push "route 10.0.1.0 255.255.255.0"
push "route 192.168.1.30 255.255.255.255"
push "route 192.168.1.31 255.255.255.255"
push "route 192.168.1.215 255.255.255.255"
push "route 192.168.1.216 255.255.255.255"
push "route 192.168.101.20 255.255.255.255"
push "route 192.168.101.21 255.255.255.255"
push "route 192.168.104.200 255.255.255.255"
push "route 192.168.105.200 255.255.255.255"
route 192.168.1.30 255.255.255.255
route 192.168.1.31 255.255.255.255
route 192.168.1.215 255.255.255.255
route 192.168.1.216 255.255.255.255
route 192.168.101.20 255.255.255.255
route 192.168.101.21 255.255.255.255
route 192.168.104.200 255.255.255.255
route 192.168.105.200 255.255.255.255
Os push "route e os route servem para o servidor encaminhar e avisar os clientes das
redes se esto a ser partilhadas na VPN.
50
Caso Prtico
Tambm do lado do servidor, existe um ficheiro por cada cliente autorizado a ligar-se
VPN, designado ccd que, como exemplo, contm as seguintes informaes:
ifconfig-push 10.0.1.10 10.0.1.9
iroute 192.168.101.20 255.255.255.255
iroute 192.168.101.21 255.255.255.255
iroute 192.168.104.200 255.255.255.255
iroute 192.168.105.200 255.255.255.255
iroute 192.168.106.200 255.255.255.255
A primeira linha indica ao cliente qual o seu IP na VPN, e qual a gateway que deve usar
para comunicar com a VPN. As restantes linhas indicam quais as redes que este cliente
partilha com a VPN, com os restantes clientes e com o servidor.
client.ovpn
client
proto udp
dev tun
ca ca.crt
dh dh1024.pem
cert ge_pc.crt
key ge_pc.key
remote IP Port
cipher AES-128-CBC
verb 2
mute 20
keepalive 10 120
comp-lzo
persist-key
persist-tun
float
resolv-retry infinite
nobind
route-method exe
route-delay 2
Caso Prtico
51
Junto com este ficheiro, so colocados os ficheiros dos certificados criados, que, por
questes de segurana, no so apresentados neste ponto.
Para criao no cliente do tnel VPN, como referido anteriormente, foi instalado a verso
cliente de OpenVPN, OpenVPN GUI for Windows, disponvel em [28]. Por questes de
compatibilidade com a verso Vista do Windows, foi utilizada uma verso beta do cliente,
apesar de ser uma verso bastante estvel. A ligao do cliente VPN pode ser vista na Figura
35.
52
Caso Prtico
Para a base de dados MySQL, foram criadas tabelas segundo o esquema da Figura 36.
Caso Prtico
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
53
54
Caso Prtico
Caso Prtico
55
56
Caso Prtico
A aplicao Web desenvolvida serve para uma breve anlise dos dados recolhidos, e
configuraes bsicas, desde criar, apagar e alterar registos de memria, dos quais
pretendemos obter dados. Segue-se imagens da plataforma desenvolvida.
Inicialmente, pedido ao utilizador que efectue o login na pgina, Figura 37.
Caso Prtico
57
Na pgina Registos, o utilizador pode consultar os registos de memria dos quais pretende
obter medies, Figura 39.
58
Caso Prtico
Para visualizao dos dados obtidos das medies, existem duas hipteses no menu Dados,
Figura 41, Grficos e Tabelas.
Caso Prtico
59
60
Caso Prtico
Como o nome indica, em Tabelas, possvel consultar os dados adquiridos sob a forma de
tabela, Figura 46.
Caso Prtico
61
Por fim, no menu Grficos, os dados so apresentados sob forma de grficos interactivos
descritos no ponto 3.5, como elucidam as seguintes figuras.
62
Caso Prtico
Captulo 5
Concluses
Este ltimo captulo apresenta uma sntese do trabalho reportado neste documento,
referindo
as
concluses
retidas.
So
tambm
apresentadas
as
perspectivas
de
desenvolvimento futuro.
5.1
Resultados obtidos
63
64
Concluses
falha do sistema pode levar falta de dados, o que pode implicar uma anlise dos dados
medidos no to completa.
5.2
Desenvolvimento futuro
Aplicao dos sistemas de alarme a mais situaes, como valores fora do habitual;
...
Referncias
Lammertbies.
RS-485.
RS-485.
[Online]
[Citao:
10
de
01
de
2010.]
http://www.lammertbies.nl/comm/info/RS-485.html.
10. ISA - Intelligent Sensing Anywhere. iMeterPlug. [Online] [Citao: 10 de 10 de 2009.]
http://www.isalabs.com/products/products.htm.
11. Circutor. Conversor RS-485 MODBUS/TCP. [Online] [Citao: 10 de 11 de 2009.]
http://www.circutor.com/m-measuring/m5-electrical-power-analyzers-cvm-
65
66
Referncias
family/accessories-for-analyzers/tcp2rs-modbus-tcp-modbus-tcp-converterm54032_R_134_5295.aspx.
12.
ISA.
iMeterLogger.
Isalabs.
[Online]
[Citao:
10
de
11
de
2009.]
http://www.isalabs.com/products/imeterlogger.htm.
13. ISA - Intelligent Sensing Anywhere. Bridge Ethernet RS485. ISALabs. [Online]
[Citao:
10
de
11
de
2009.]
http://www.isalabs.com/products/docs/Bridge%20TCP%20IP%20RS485%20PB%20r.pdf.
14. Modbus.org. Modbus Specs. Modbus.org. [Online] [Citao: 20 de 01 de 2010.]
http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b.pdf.
15. IntelliCom. Modbus TCP overview. IntelliCom. [Online] [Citao: 20 de 01 de 2010.]
http://www.intellicom.se/solutions_ModbusTCP_overview.cfm.
16. Joseph Steinberg, Tim Speed, et.al. Understanding SSL VPN. s.l. : Packt, 2005.
17. Rede Nacional de Ensino e Pesquisa. Rede Nacional de Ensino e Pesquisa. Rede
Nacional
de
Ensino
Pesquisa.
[Online]
[Citao:
22
de
01
de
2010.]
http://www.rnp.br/newsgen/9811/vpn.html.
18. Hosner, Charlie. "OpenVPN and the SSL VPN Revolution". 2004.
19. Dahl, Olr Mstyin. Limitations and Differences if using IPsec, TLS/SSL or SSH as VPNsolution. 29/10/2004.
20. Stallings, William. Cryptography and Network Security. 2006.
21. Schneider Electric. Dilogo Homem-Mquina, Documento tcnico n4 . s.l. :
Schneider Electric, 2009.
22. Circutor. Energy management Software.
23.
OpenVPN.
OpenVPN.
OpenVPN.
[Online]
[Citao:
22
de
01
de
2010.]
de
2010.]
http://openvpn.net/.
24.
Webmin.
Webmin.
Webmin.
[Online]
[Citao:
22
de
01
http://www.webmin.com/.
25. team, Jamod development. Jamod. Jamod. [Online] [Citao: 10 de 11 de 2009.]
http://jamod.sourceforge.net.
Referncias
67