Journal [Tuto/HowTo] mettre en place ZoneMinder sur Ubuntu 16.04

Posté par  . Licence CC By‑SA.
11
18
oct.
2016

Sommaire

Description

Ce tuto est une copie de ce tutoriel (l'orignel continuera d'être mis à jours)

  • ZoneMinder est un logiciel libre de central de vidéos surveillance. Il peut accéder et contrôler un certain nombre de caméras de divers types et interagir en fonction d'évènement. Il offre toute une panoplie d'options et paramètres intéressants comme le système de zone, l'export de données, les alertes par notification (mail), les alames, le multi-users. Il sert aussi de proxy entre toutes les caméras et les clients. On regrettera néanmoins son aspect visuel un peu austère et le fait qu'il lag un peu (malgré que la consommation de ressources ne semble pas importante) et l'aberration qu'est l’inexistence d'une application mobile. Attention que ZoneMinder server consomme "beaucoup" de ressources réseaux (plus de 500ko/s pour une camera 640*480). La WEBUI de zoneminder a aussi tendance à faire lagger firefox côté client (malgré que le processeur et la Ram n'en ont pas l'air).

Les tutos sur l'installation de caméra se trouve sur le forum 0rion dans Techno => Hardware => installation

Installation de ZoneMinder

Systeme et fichiers

  • Passez en admin/root

    • sudo su
  • Mettez à jour le système

    • apt-get update apt-get upgrade apt-get dist-upgrade
  • Installez zoneminder, php-gd php-mysql et mysql-server

    • apt-get install zoneminder php-gd mysql-server php-mysql
  • Créez un user et ajoutez le au groupe vidéo

    • sudo adduser www-data video
  • Accordez les bonnes permissions au fichier de config de zoneminder

    • chmod 740 /etc/zm/zm.conf
  • Accordez les bons propriétaires au fichier de config de zoneminder

    • chown root:www-data /etc/zm/zm.conf
  • Fixez les permissions des fichiers de zoneminder

    • chown -R www-data:www-data /usr/share/zoneminder/
  • Éditez la timezone dans le php.ini
    sudo nano /etc/php/7.0/apache2/php.ini

    • Cherchez (CTRL+W) date.timezone et adaptez la comme suit en plaçant votre timezone (liste ici). N'oubliez pas de supprimer le ";" en début de ligne.
    • date.timezone = "Europe/Brussels"

Configuration de MySQL

  • Supprimez le lien symbolique du fichier de config de MySQL (vérifier les répercutions sur les autres logiciels)

    • rm /etc/mysql/my.cnf
  • Remplacez le lien supprimé précédemment par une copie du fichier de config de MySQL

    • cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/my.cnf
  • Éditez le fichier de config de mysql

    • nano /etc/mysql/my.cnf
  • Ajoutez dedans

    • sql_mode = NO_ENGINE_SUBSTITUTION
  • Redémarrez le service MySQL

    • systemctl restart mysql
  • Lancez la création de la BDD et de son user

    • mysql -uroot -p < /usr/share/zoneminder/db/zm_create.sql
  • Accordez tous les droits à l'user "zmuser" sur la base de données de zoneminder

    • mysql -uroot -p -e "grant all on zm.* to 'zmuser'@localhost identified by 'zmpass';"
  • Rechargez MySQL

    • mysqladmin -uroot -p reload

Configuration apache2

  • Activez les modules apache2 nécessaire

    • a2enmod cgi a2enmod rewrite
  • Activez la configuration apache2 de zoneminder

    • a2enconf zoneminder
  • Éditez le fichier de config d'apache2 (CTRL+X pour sauver&quitter)

    • nano /etc/apache2/apache2.conf
  • Changez de None en All aux deux emplacements comme suit

    • <Directory /usr/share> AllowOverride All Require all granted </Directory>
  • et

    • <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
  • Lancez le service

    • systemctl enable zoneminder service zoneminder start
  • Redémarrez apache2

    • service apache2 reload
  • Créez le dossier sound

    • mkdir /usr/share/zoneminder/www/sounds
  • Accordez le bon propriétaire au dossier sound

    • sudo chown www-data:www-data -R /usr/share/zoneminder/www/sounds
  • Accordez les bonnes permissions au dossier sound

    • sudo chmod 774 -R /usr/share/zoneminder/www/sounds
  • Rendez-vous sur la WEBUI (http://hostnameZoneMinder/zm) afin de finaliser l'installation en plaçant un mot de passe fort sur l'accès root (dépêchez-vous si vous êtes en ligne, les bots d'attaques sont rapides)

Gérer Zoneminder

Commandes

  • Stopper zoneminder

    • sudo service zoneminder stop
  • Démarrer zoneminder

    • sudo service zoneminder start
  • Relancer zoneminder

    • sudo service zoneminder restart
  • Afficher le status de zoneminder

    • sudo service zoneminder status
  • Afficher des infos système à propos du processsus de zoneminder (zmc)

    • ps -aux | grep "zmc"

Changer l'emplacement du stockage de zoneminder

On va partir du principe qu'on veut placer les fichiers de zoneminder (photos, vidéos, sons, etc) dans /media/raidSSD/zoneminder. Adaptez le PATH a ce que vous souhaitez. Si vous ne savez pas comment monter vos disques/ressources distantes, voyez la section du forum intitulée Operating System => Memory

  • On change le PATH et sauvegarde le dossier de zoneminder au cas ou

    • sudo mv /var/cache/zoneminder /var/cache/zoneminderOLD
  • On copie les dossiers et leurs éventuels contenu vers notre montage dédié

    • sudo cp /var/cache/zoneminderOLD /media/raidSSD/zoneminder -R
  • On crée le lien symbolique

    • sudo ln -s /media/raidSSD/zoneminder /var/cache/zoneminder

Ajouter une camera à zoneminder

  • Rendez-vous sur la WEBUI de zoneminder avec votre navigateur web
  • Cliquez sur "Ajouter camera"
  • Dans la fenêtre qui s'ouvre :
    • onglet Général
    • Nom : l'identifiant que vous souhaitez donner à votre camera
    • Type de source : pour une webcam sélectionnez "Local", pour une camera IP choisissez "Distant"
    • Cochez "Activé"
    • onglet Source
    • Nom d'hôte" : entrez l'HOSTNAME pour joindre votre camera
    • Port : le port pour joindre votre camera
    • Chemin : entrez les paramètres d'url pour joindre votre camera (par exemple pour une fi8910w c'est "/videostream.cgi?user=&pwd=")
    • Largeur (nb pixels) : entrez la largeur maximal disponible pour votre camera
    • Hauteur (nb pixels) : entrez la longueur maximal disponible pour votre camera
  • Sauvegardez

Captures d'écran

screenshot_17-10-2016_zoneminder_WEBUI_Demo.png
screenshot_17-10-2016_zoneminder_WEBUI_Demo2.png
screenshot_17-10-2016_zoneminder_WEBUI_Demo3.png
screenshot_17-10-2016_zoneminder_WEBUI_Demo4.png

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.