Você está na página 1de 7

Documentao do ZoneMinder-1.2.22 Slackware-10.

2


1. Introduo

O PoP-GO com a inteno de implementar uma soluo para monitoramento em
tempo real de todas as suas dependncias, resolve implantar o software ZoneMinder.
O ZoneMinder uma soluo Open Source Linux Video Camera Security, que
est sob a licena GPL.
O core do ZoneMinder a captao e anlise das imagens com uma gama de
parmetros configurveis que permite assegurar a eliminao de falso-positivos, e
de capturar tudo que seja necessrio. O ZoneMinder permite definir "zonas" para
cada cmera, variando a sensibilidade e a funcionalidade nas anlises; permitindo a
eliminao das regies que no sejam necessrias anlises minuciosas ou reas que
sejam de suma importncia para o monitoramento. O software permite capturar,
analisar, gravar e monitorar qualquer cmera conectada a uma mquina baseada
em Linux ou cmeras IP.
Alguns requisitos do ZoneMinder: PHP, Apache, MySQL, ffmpeg, libjpeg.a,
libpcre.a, netpbm, cambozola java applet e alguns mdulos perl.
O presente documento visa descrever (how-to) a instalao do ZoneMinder,
abordando tambm a instalao dos requisitos.

2. Instalando o APACHE

O source do Apache-1.3.37 pode ser baixado da seguinte URL (Apache-1.3.37).
A compilao foi padro. Recomendo o uso do apache.Slackbuild para instalao.

# . / conf i gur e \
- - wi t h- l ayout =Sl ackwar e \
- - enabl e- modul e=most \
- - enabl e- shar ed=max \
- - manual di r =/ var / www/ ht docs/ manual \

# make - j 3

# checki nst al l

Fazer as seguintes alteraes no arquivo de configurao httpd.conf:
Em DirectoryIndex colocar:

<I f Modul e mod_di r . c>
Di r ect or yI ndex i ndex. ht ml i ndex. php
</ I f Modul e>

Retire o comentrio das linhas (final do arquivo):

I ncl ude / et c/ apache/ mod_php. conf
I ncl ude / et c/ apache/ mod_ssl . conf

Outros parmetros de configurao no sero abordados neste documento, pois
este tem a inteno de se voltar para operao do ZoneMinder.

3. Instalando o PHP com mdulo para suporte no Apache

O source do PHP-4.4.4 pode ser baixado do seguinte link (PHP-4.4.4). A
compilao foi padro. Recomendo o uso do php.Slackbuild. necessrio ter o
mdulo com suporte ao Apache, jpeg e MySQL.

# . / conf i gur e - - pr ef i x=/ usr \
- - sysconf di r =/ et c \
- - enabl e- di scar d- pat h \
- - wi t h- conf i g- f i l e- pat h=/ et c/ apache \
- - enabl e- saf e- mode \
- - wi t h- openssl \
- - wi t h- mhash \
- - enabl e- bcmat h \
- - wi t h- bz2 \
- - wi t h- pi c \
- - enabl e- cal endar \
- - enabl e- ct ype \
- - wi t h- gdbm\
- - wi t h- db3 \
- - wi t h- i map- ssl =$I MAPLI BDI R \
- - wi t h- i map=$I MAPLI BDI R \
- - enabl e- f t p \
- - wi t h- i conv \
- - wi t h- dom\
- - wi t h- exi f \
- - enabl e- exi f \
- - wi t h- gd \
- - enabl e- gd- nat i ve- t t f \
- - wi t h- j peg- di r =/ usr \
- - wi t h- png \
- - wi t h- gmp \
- - wi t h- pcr e- r egex=/ usr \
- - wi t h- mysql =shar ed, / usr \
- - wi t h- get t ext =shar ed, / usr \
- - wi t h- expat - di r =/ usr \
- - wi t h- xml \
- - enabl e- wddx \
- - wi t h- mm=/ usr \
- - enabl e- t r ans- si d \
- - enabl e- shmop \
- - enabl e- socket s \
- - wi t h- r egex=php \
- - enabl e- yp \
- - enabl e- memor y- l i mi t \
- - wi t h- t sr m- pt hr eads \
- - enabl e- shar ed \
- - di sabl e- debug \
- - enabl e- f ast cgi \
- - enabl e- f or ce- cgi - r edi r ect \
- - di sabl e- st at i c \
- - wi t h- apxs=/ usr / sbi n/ apxs \
- - wi t h- zl i b=/ usr

# make j 3

# checki nst al l


Aps a compilao, cria uma pgina de teste para ver se est tudo OK. Crie um
arquivo index.php, no seu DocumentRoot, com o seguinte contedo:

<? phpi nf o( ) ; ?>

Reinicie os servios e acesse no seu browser a URL, se estiver OK, vo aparecer
s informaes do seu sistema:

ht t p: / / l ocal host /

4. Configurando o MySQL-4.1.21

Baixe o arquivo pr-compilado do seguinte link (MySQL-4.1.21) e instale. Aps
isso faa o login com o usurio mysql:

# su mysql

$ mysql _i nst al l _db / *I nst al a a base de dados MySQL

$ exi t

# mysql d_saf e - - user =mysql & / *I ni ci a o MySQL comusur i o mysql
# mysql _secur e_i nst al l at i on / * Real i za os aj ust es necessr i os

Vo aparecer vrias perguntas, como setar a senha de root, opo para remover
usurios annimos do banco dados e base de dados de teste. Neste ponto prefiro que
deixe a base de teste, pois na hora da instalao do mdulo perl DBD::Mysql, ele
far um teste de conexo nesta tabela. Aps isso a tabela e o usurio podero ser
removidos. Caso seja removido agora no tem nenhum problema, basta se conectar
como root na instalao do mdulo.
O arquivo my.cnf que eu usei foi a seguinte:

[ mysql . ser ver ]
dat adi r =/ var / l i b/ mysql
socket =/ var / r un/ mysql / mysql . sock

[ mysql admi n]
socket =/ var / r un/ mysql / mysql . sock

[ mysql d]
dat adi r =/ var / l i b/ mysql
socket =/ var / r un/ mysql / mysql . sock
l anguage=/ usr / shar e/ mysql / engl i sh/
l og=/ var / l og/ mysql / mysql d. l og

[ mysql ]
socket =/ var / r un/ mysql / mysql . sock

Crie o diretrio /var/log/mysql e d permisso para o usurio mysql. Reinicie o
MySQL.

5. Compilando ffmpeg e netpbm

FFmpeg uma soluo completa para gravar, converter e fazer stream de udio
e vdeo. O source pode ser encontrado no seguinte link (ffmpeg-0.4.9-pre1).
Netpbm um kit de ferramentas para manipulao de imagens, incluindo a
converso de imagens entre vrios outros formatos. O source pode ser encontrado
no seguinte link (netpbm-10.26.31).
Compilando o ffmpeg:

# . / conf i gur e enabl e- shar ed enabl e- mp3l ame
# make
# checki nst al l

Compilando o netpbm:

# . / conf i gur e
# make
# make package
# i nst al l net pbm

Copie o diretrio netpbm para onde achar melhor (/usr/local).

6. Instalando JAVA J2SDK, apache-ant e cambozola


Baixe o j2sdk1.4.2_12 no site http://java.sun.com/j2se/1.4.2/download.html e
instale. Crie um arquivo j2sdk.sh no diretrio /etc/profile.d:

#! / bi n/ sh
expor t J AVA_HOME=/ usr / l i b/ j 2sdk / * Di r et r i o de i nst al ao
expor t MANPATH=" $MANPATH: / usr / l i b/ j 2sdk/ man"
expor t PATH=" $PATH: / usr / l i b/ j 2sdk/ bi n: / usr / l i b/ j 2sdk/ j r e/ bi n"

Baixe o apache-ant.
Descompacte-o e crie um arquivo ant.sh no diretrio /etc/profile.d:

#! / bi n/ sh
ANT_HOME=/ usr / l ocal / ant / * Di r et r i o de I nst al ao
PATH=$PATH: $ANT_HOME/ bi n
expor t ANT_HOME PATH

Baixe o cambozola no link (cambozola-0.68). Descompacte-o e instale:

# ant

Esse comando vai criar dois arquivos no diretrio dist/:

cambozola-server.jar Servidor de teste que mostra repetidamente algumas imagens
cambozola.jar O cliente que dever ser usado no diretrio do Apache.

7. Instalando os mdulos PERL

Recomendo utilizar o shell CPAN para instalao dos mdulos necessrios. Na
linha de comando digite:

#perl -MCPAN -e shell

Ir aparecer uma tela para que se configure o CPAN, na maioria das vezes o
automatic resolve.
Terminado o procedimento de configurao, basta digitar 'install nome_do_modulo',
ele j checa as dependncias de cada mdulo. Os mdulos necessrios para o
ZoneMinder podem ser verificados na execuo do ./configure do ZoneMinder. Os
mdulos so: Bundle::CPAN, Bundle::LWP, DBI, DBD::Mysql, Archive::Zip,
Mail::Mailer, Date::Manip, MIME::Entity, MIME::Lite, Device::SerialPort e
X10::ActiveHome.
Na instalao do mdulo DBD::Mysql poder aparecer uns erros de conexo com o
MySQL. Isso acontece porque o usurio, senha e a tabela podem ser diferentes do banco
de dados MySQL ou se voc excluiu a tabela test na instalao. Caso d erro na
instalao pelo CPAN, proceda com a instalao manualmente. Baixe o arquivo DBD-
mysql-3.0007.tar.gz, descompacte-o e instale.

# per l Makef i l e. PL - - t est db=<db> - - t est user =<user > - -
t est passwor d=<pwd>
# make
# make t est
# make i nst al l

8. Instalando o ZoneMinder

Primeiro vamos criar as tabelas no MySQL. Para isto vamos realizar os seguintes
procedimentos no diretrio do ZoneMinder:

$ . / conf i gur e - - wi t h- mysql =/ usr / bi n \
- - wi t h- webdi r =/ var / www/ ht docs/ zm\
- - wi t h- cgi di r =/ var / www/ cgi - bi n \
- - wi t h- webuser =nobody \
- - wi t h- webgr oup=nobody \
- - wi t h- f f mpeg=/ usr / l i b \
- - wi t h- l i bar ch=l i b \
- - enabl e- debug=yes \
- - enabl e- cr asht r ace=yes \
CFLAGS=- g - O3 - mar ch=pent i um4 CXXFLAGS=- g - O3 - mar ch=pent i um4
ZM_DB_PASS=zmuser \
ZM_PATH_CONF=/ et c

Acesse o diretrio db/ no diretrio do ZoneMinder e verifique se os arquivos *.sql
foram criados. Configurando as tabelas e setando as permisses.

# mysql u r oot p

mysql > sour ce / / db/ zm_cr eat e. sql ;
mysql > gr ant sel ect , i nser t , updat e, del et e on zm. * t o zmadmi n
i dent i f i ed by zmadmi n ;
mysql > gr ant sel ect on zm. * t o zmuser ;
mysql > updat e user set host = l ocal host wher e user l i ke zm% ;
mysql > f l ush pr i vi l eges;
mysql > qui t ;

Algumas alteraes precisam ser feitas nos arquivos fontes do ZoneMinder para
funcionar no Slackware. Faa as seguintes alteraes:

Arquivo /opt/Zoneminder-1.2.22/scripts/zmpkg.pl

Linha 265:
$pr ef i x = " su " . ZM_WEB_USER. " - - shel l =/ bi n/ sh - - command=' " ; i
Para
$pr ef i x = " su " . ZM_WEB_USER. " - c ' $command' " ; i

Execute o ./configure novamente com as opes acima.

# make
# checki nst al l

Outras alteraes precisam ser realizadas. O ZoneMinder aloca memria virtual para
funcionamento dos monitors. O clculo de memria virtual alocada se d seguinte
maneira:
ring buffer size x image width x image height x 3 (for 24 bits images) + a bit of
overhead.
Para no ocorrer erros na alocao da memria virtual necessrio alterar alguns
parmetros do sistema. Para ver as configuraes atuais:

# sysct l a

Verifique os valores do kernel.shmmax, kernel.shmall. Este valor no suficiente
para a alocao. Coloque no seu rc.local as seguintes alteraes:

#Set a al guns par met r os do si st ema
/ sbi n/ sysct l - w ker nel . shmmax=" 0x3000000"
/ sbi n/ sysct l - w ker nel . shmal l =" 0x3000000"
/ sbi n/ sysct l - w f s. f i l e- max=65536
/ sbi n/ sysct l - w ker nel . pani c=10

Copie o cambozola.jar para o diretrio web do ZoneMinder.
Pronto. Acesse pelo seu browser o front-end do ZoneMinder.

ht t p: / / l ocal host / zm/


9. Configurao cmera TRENDnet TV-IP300


Algumas alteraes so necessrias para o funcionamento desta cmera IP. So elas:

Na configurao de um novo monitor, colocar em Remote Host Path: /cgi-
bin/vdeo.jpg, Capture Width (pixels): 352 e Capture Height (pixels): 240.

Em ADMIN:
No guia PATHS:
ZM_PATH_ZMS: /cgi-bin/zms
ZM_PATH_LOGS: /var/log/zm (crie e d as permisses
necessrias)

No guia IMAGES:
ZM_CAN_STREAM: auto
ZM_STREAM_METHOD: jpeg
ZM_OPT_CAMBOZOLA: yes
ZM_PATH_CAMBOZOLA: cambozola.jar
ZM_PATH_FFMPEG: /usr/bin/ffmpeg

No guia NETWORK:
ZM_OPT_REMOTE_CAMERAS: yes
ZM_NETCAM_REGEXPS: yes
ZM_HTTP_VERSION: 1.0



Maiores informaes acesse o manual do ZoneMinder
(http://www.zoneminder.com/fileadmin/downloads/README.html) e o frum de
discusso (http://www.zoneminder.com/forums/).

Equipe POP-GO

Você também pode gostar