Pesquisa de site

Instale ZoneMinder - software de vigilância por vídeo no Debian 9


Seja em casa ou na empresa, a segurança física é sempre um componente fundamental de uma política de segurança abrangente. O uso de câmeras de segurança tende a ser a base de uma solução de monitoramento de segurança física.

Um dos maiores desafios com câmeras tende a ser o gerenciamento e o armazenamento de feeds/imagens de vídeo. Uma das soluções de código aberto mais conhecidas para resolver esta tarefa é o Zone Minder.

Zone Minder apresenta aos usuários um grande número de soluções para monitorar, gerenciar e analisar feeds de vídeo de câmeras de segurança. Alguns dos destaques do Zone Minder incluem:

  • Gratuito, de código aberto e em constante atualização.
  • Funciona com a maioria das câmeras IP (mesmo aquelas com funcionalidades especiais como PTZ, visão noturna e resoluções 4k).
  • Console de gerenciamento baseado na Web.
  • Aplicativos Android e iOS para monitoramento de qualquer lugar.

Para ver mais recursos do Zone Minder visite a página inicial do projeto em: https://zoneminder.com/features/

Este artigo abordará a instalação do Zone Minder no Debian 9 Stretch e outro artigo abordará a configuração do Zone Minder para monitorar feeds de câmeras de segurança.

Diagrama de configuração do laboratório Zone Minder

Embora esta seja uma simplificação da maioria das instalações de câmeras IP, os conceitos ainda funcionarão assumindo que as câmeras tenham conectividade de rede com o servidor Zone Minder.

Este artigo assumirá que o leitor já possui uma instalação básica mínima do Debian 9 Stretch instalada e funcionando. Uma instalação simples com conectividade SSH é tudo o que se presume.

Não é necessário um ambiente gráfico no servidor, pois tudo será servido através do servidor web Apache para os clientes que se conectam à interface web do Zone Minder.

Por favor, consulte este artigo no Tecmint para instalar o Debian 9: https://linux-console.net/installation-of-debian-9-minimal-server/.

Especificações do servidor:

Como o Zone Minder potencialmente salvará muitos vídeos/imagens, os maiores componentes necessários para este servidor serão a rede e a capacidade de armazenamento. Outros itens a serem levados em consideração são o número de câmeras, a qualidade das imagens/vídeo enviadas ao servidor, o número de usuários conectados ao sistema Zone Minder e a visualização das transmissões ao vivo através do sistema Zone Minder.

Importante: O servidor usado neste guia, embora antigo, não é o típico sistema de usuário doméstico. Certifique-se de avaliar cuidadosamente os requisitos de uso antes de configurar um sistema Zone Minder.

Artigo wiki do Zone Minder para especificações: https://wiki.zoneminder.com/How_Many_Cameras

Especificações do sistema:

  • 1 HP DL585 G1 (4 x CPUs Dual Core)
  • RAM: 18 GB
  • 1 conexão de rede de 1 Gbps para câmeras IP
  • 1 conexão de rede de 1 Gbps para gerenciamento
  • Armazenamento local: 4 x 72 GB em RAID 10 (somente SO; imagens/vídeos ZM serão descarregados posteriormente)
  • 1 x 1,2 TB HP MSA20 (armazenamento de imagens/vídeos)

Instalação do Zone Minder

A instalação do Zone Minder é muito simples e pressupõe acesso root ou sudo no servidor específico onde o Zone Minder está sendo instalado.

O Debian Stretch não possui o Zone Minder 1.30.4 nos repositórios por padrão. Felizmente, uma versão mais recente do Zone Minder está disponível nos backports do Debian Stretch.

Para habilitar backports em uma instalação limpa do Debian, emita o seguinte comando:

echo -e “\n\rdeb http://ftp.debian.org/debian stretch-backports main” >> /etc/apt/sources.list

Depois que os backports forem habilitados, o sistema provavelmente terá uma série de atualizações que precisarão ocorrer. Execute os comandos a seguir para atualizar os pacotes em preparação para o restante deste artigo.

apt-get update
apt-get upgrade
apt-get dist-upgrade

O primeiro passo para a instalação e configuração do Zone Minder é instalar as dependências necessárias com os seguintes comandos:

apt-get install php mariadb-server php-mysql libapache2-mod-php7.0 php7.0-gd zoneminder

Durante este processo de instalação, a instalação do servidor MariaDB pode solicitar que o usuário configure uma senha root para o banco de dados, **DO NÃO ESQUEÇA ESTA SENHA**.

Assim que a instalação for concluída, é altamente recomendável que o banco de dados seja protegido usando o seguinte comando:

mysql_secure_installation

O comando acima pode solicitar primeiro a senha root criada durante a instalação do MariaDB e, em seguida, fará ao usuário várias perguntas de segurança sobre como desabilitar um usuário de teste, login root remoto no banco de dados e remoção de bancos de dados de teste. É seguro e sugerido que 'Sim' seja a resposta para todas essas perguntas.

Agora o banco de dados precisa estar preparado e um usuário Zone Minder para o banco de dados. O pacote Zone Minder fornece o esquema necessário para importação. A importação criará o usuário 'zmuser', o banco de dados 'zm' e configurará uma senha padrão no sistema *Veja abaixo como alterar isso*.

Os comandos a seguir solicitarão ao usuário a senha do usuário root do banco de dados MariaDB.

mariadb -u root -p < /usr/share/zoneminder/db/zm_create.sql
mariadb -u root -p -e "grant all on zm.* to ‘zmuser’@localhost identified by ‘zmpass’;"

Esta parte só é necessária se o usuário quiser alterar o usuário/senha padrão do banco de dados! Pode ser desejável alterar o nome do banco de dados, o nome de usuário ou a senha do banco de dados.

Por exemplo, digamos que o administrador queira usar uma combinação diferente de usuário/senha:

User: zm_user_changed
Password: zmpass-test

Isso mudaria o comando do usuário MariaDB acima para:

mariadb -u root -p -e "grant all on zm.* to ‘zm_user_changed’@localhost identified by ‘zmpass-test’;"

Ao fazer isso, porém, o Zone Minder precisará ser informado sobre o banco de dados e o nome de usuário alterados. Faça as alterações adequadas no arquivo de configuração do ZM em ‘/etc/zm/zm.conf’.

Localize e altere as seguintes linhas:

  • ZM_DB_USER=zmuser ← Altere ‘zmuser’ para o novo usuário acima. ‘zm_user_changed
  • ZM_DB_PASS=zmpass ← Altere ‘zmpass’ para a nova senha usada acima. ‘teste zmpass

A próxima etapa é corrigir a propriedade do arquivo de configuração do Zone Minder para que ele possa ser lido pelo usuário apache (www-data) usando o seguinte comando:

chgrp www-data /etc/zm/zm.conf

O usuário www-data também precisa fazer parte do grupo ‘vídeo’ neste sistema. Para fazer isso o seguinte comando deve ser usado:

usermod -aG video www-data

Também é necessário definir o fuso horário adequado no arquivo php.ini localizado em ‘/etc/php/7.0/apache2/php.ini’. Encontre o fuso horário adequado e, em seguida, usando um editor de texto, localize a linha a seguir e anexe as informações do fuso horário.

nano /etc/php/7.0/apache2/php.ini

Altere a linha ‘;date.timezone =‘ para ‘date.timezone=America/New_York’.

Agora o Apache precisa ser configurado para servir a interface web do Zone Minder. A primeira etapa é desabilitar a página padrão do Apache e habilitar o arquivo de configuração do Zone Minder.

a2dissite 000-default.conf
a2enconf zoneminder

Existem também alguns módulos do Apache que precisam ser habilitados para que o Zone Minder funcione corretamente. Isso pode ser feito com os seguintes comandos:

a2enmod cgi
a2enmod rewrite

As etapas finais são ativar e iniciar o Zone Minder! Use os seguintes comandos para fazer isso:

systemctl enable zoneminder.service
systemctl restart apache2.service
systemctl start zoneminder.service

Agora, se tudo correr bem, navegar até o IP do servidor e o diretório Zone Minder deve gerar o console de gerenciamento do Zone Minder como tal:

http://10.0.0.10/zm

Parabéns! Zone Minder agora está instalado e rodando no Debian 9. Nos próximos artigos, examinaremos a configuração de armazenamento, câmeras e alertas no console do Zone Minder.