Zoneminder unter Ubuntu mit einer WansView IP-Camera
Prolog
Seit langem schwebte mir schon vor, eine IP-Kamera an die Haustüre zu bauen, doch das Projekt ist bis vor kurzem immer -aus Kostengründen- am Haushaltsausschuss gescheitert.
Dann der Tipp zu einem ebay-Schnäppchen.
(Das ebay-Schnäppchen, das einen mehr Zeit kostet als man denkt. Mal ehrlich! Wer kennt es nicht?)
Also kurz die ebay Beschreibung gelesen:
Wansview NC521/W – Multi-Function IP Camera
- IP-Cam mit LAN/WLAN -> Check
- Pan Tilt horiz 270° vert 90° -> Check
- Motion Detection -> Check
- Windows kompatibel -> von mir aus
- Night Vision -> Check
- Mit Webinterface -> Check
- Supports UPNP -> Who cares
- Unique Manufacturer ID -> (??) hab nichts anderes erwartet
- Alarming Record to mail or FTP -> prima noch mehr mails
- Build-in microphone -> Check (kann man zumindest Singstar damit spielen)
- 640×480 recording in MJPEG -> Check
- Supports several browsers -> Check
- Easy Management and Secure Life -> Check
- Professionaly manufactured by WansView -> Who the fuck is Wa…?
- 69 Euro -> Check -> Check -> Check -> Check -> Check (Schwabe halt)
Nach gründlicher Überlegung zu den Key-Features (Auflösung, WLAN und 69 Euro) habe ich natürlich nach zwei Sekunden den Sofort-Kauf getätigt.
Einrichten der Kamera
Also Kabel rein und los gehts.
Im Lieferzustand hat die Kamera folgende Einstellungen:
- IP: 192.168.0.178
- http port 80
- Username: admin
- Password: 123456
Wenn man jetzt nicht den Rechner um konfigurieren will, um an die Kamera Einstellungen zu kommen, kann man von der CD das Programm BSearch_en.exe aufrufen und die IP auf „Set IP automatically“ stellen. 30 Sek warten und die Kamera ist im gleichen Netzwerk-Segment wie der Router.
Die Kamera kann jetzt direkt über den Browser benutzt werden.
Ach ja, eine Besonderheit hat die Cam noch: Wenn das Netzwerkkabel steckt geht das WLAN nicht.
Zoneminder installieren und konfigurieren
Unter Ubuntu einfach das Paket Zoneminder installieren:
- sudo synaptic
- Paket zoneminder suchen und installieren.
Das Zoneminder Paket beinhaltet eine ganze Menge Dateien, von denen aber vor allem folgende interessant sind:
Die Verzeichnisse:
/etc/zm /usr/lib/cgi-bin /usr/share/zoneminder/cgi-bin /var/cache/zoneminder /var/log/zm
Die Dateien:
/etc/zm/apache.conf /etc/zm/zm.conf /usr/lib/cgi-bin/nph-zms
Wichtig: Zoneminder speichert alle Aufnahmen nach /var/cache/zoneminder, das Verzeichnis sollte also ausreichend groß sein. Ansonsten das Verzeichnis auf eine Datenplatte symlinken. Sonst kann vor allem während der Testphase die Rootplatte (auf der /var normalerweise liegt) sehr schnell voll laufen.
Apache auf Zoneminder vorbereiten
Zoneminder benötigt für den vollen Funktionsumfang ein cgi-bin Verzeichnis, das auf /cgi-bin/ eingehängt sein muss. Das führt natürlich bei einem bestehenden und genutzten /cgi-bin Verzeichnis zu Problemen. Man kann natürlich einfach die Dateien nph-zms und zms unter /usr/lib/cgi-bin einfach in das bestehende /cgi-bin/ Verzeichnis kopieren oder linken. Quick, dirty and working.
Die saubere Lösung ist einen neuen virtuellen Host für Zoneminder anzulegen, denn man einfach auf einen freien Port legt. Damit geht man sämtlichen Problemen aus dem Weg.
Damit Apache auf einem weiteren Port lauscht muss /etc/apache2/ports.conf erweitert werden:
Listen 80 # sollte schon drinstehen
Listen 82 # neuer Zoneminder vhost
Danach muss man eine neue vhost Datei anlegen und aktivieren:
touch /etc/apache2/sites-available/zoneminder.conf ln -s /etc/apache2/sites-available/zoneminder.conf /etc/apache2/sites-enabled/ vi /etc/apache2/sites-available/zoneminder.conf
# ____________________________________________________ zoneminder <VirtualHost 192.168.4.1:82> DocumentRoot "/usr/share/zoneminder" ServerName zoneminder ServerAlias zm ErrorLog /var/log/apache2/zoneminder_error.log CustomLog /var/log/apache2/zoneminder_access.log combined Alias /zm /usr/share/zoneminder <Directory /usr/share/zoneminder> php_flag register_globals off Options Indexes FollowSymLinks <IfModule mod_dir.c> DirectoryIndex index.php </IfModule> </Directory> ScriptAlias /cgi-bin/ /usr/share/zoneminder/cgi-bin/ <Directory /usr/share/zoneminder/cgi-bin > AllowOverride All AddHandler cgi-script .cgi .pl .html Options +ExecCGI Includes FollowSymlinks Order Allow,Deny Allow from All </Directory> </VirtualHost>
Nach dem Anlegen der Konfiguration muss der Apache neu gestartet werden.
/etc/init.d/apache2 restart
- Nach dem Neustart sollte im Browser nach der Eingabe von localhost:82/zm die Zoneminder Startseite angezeigt werden.
- localhost:82/cgi-bin/nph-zms muss einen leeren Screen ohne Fehlermeldung anzeigen.
Falls einer der beiden Punkte nicht funktioniert: Fehlersuche
Einbinden der WansView IP-Kamera
Als nächstes werden die ersten beiden Konfigurationsreiter wie in den Bildern ausgefüllt. Die IP, der Name und das Passwort muss natürlich ersetzt werden.
Die restlichen Reiter, die hier nicht abgebildet sind, verbleiben einfach auf den standard Werten.
Ab jetzt sollte Zoneminder unter Ubuntu problemlos laufen und aufzeichnen.
Für Bastler
Wer sich etwas mit Elektronik und Löten auskennt, kann mit dem Relais und dem zum Teil störenden automatischen Nachtsicht Modus ein wenig experimentieren.
Mein Freund Stephan hat dazu eine gute Bastelanleitung geschrieben:
http://tech.blog.dg4sfw.de/single.php?date=1303996800
Nach dem Umbau kann der Nachtsicht Modus mit dem eingebauten Relais ferngesteuert werden.
Zu guter Letzt noch der Link zum Hersteller: WansView
Update:
Die Anleitung hat in einigen Foren Anklang gefunden. Leider hatten User Probleme mit dem Apache Webserver.
Die Fehlermeldung beim Start des Webservers:
Fehler bei der Zeile: Options +ExecCGI Includes FollowSymlinks
Das liegt daran, dass das Modul CGI das Zoneminder benötigt nicht aktiviert ist. Das lässt sich aber ganz leicht beheben. CGI Modul aktivieren und danach den Apachen einfach neu starten
sudo a2enmod cgi service apache2 restart oder alternativ auf älteren Systemen sudo /etc/init.d/apache2 restart
PS: Falls man keine Lust hat die Zoneminder Knofig von Hand einzutragen kann man auch die Zoneminder Conf genauso aktivieren.
sudo a2enconf zoneminder
Mit der aktuellen Raspberry Version wird anscheinend kein Zoneminder mehr mitgeliefert (nicht getestet – bei mir funktioniert es ja).
Eine Lösung bietet: https://wiki.zoneminder.com/Raspbian
Wie sieht es mit der Integration der PTZ Funktionalität in Zoneminder aus?
Ich habe eine NCM625GA von Wansview, die Integration des Videostreams war einfach: Die Kamera habe ichüber ffmpeg eingebunden -> rtp/rtsp -> rtsp://admin:[email protected]/live/ch0
Zur PTZ Funktion finde ich nichts brauchbares. (es gibt ein wanscamPT script, aber wanscam ist nicht gleich wansview)
Manche Anleitungen emfehlen über http://admin:[email protected]:99 die Kamera zu steuern, doch meine Kamera hört nicht auf diesem Port.
Hallo Dominic,
diese Frage gehört mEn in das Zoneminder Forum.
Ich habe mit der Kamera nicht mehr weiter herumgespielt als (endlich) alles gelaufen ist.
Hallo Hagen, ich bin begeisterter Neuleser Deines Blogs, auf den ich aufgrund einiger Widrigkeiten bei Win10 gestoßen bin. Jetzt habe ich zufällig noch Deinen Beitrag zu obiger Kamera gefunden, die ich ebenfalls besitze (eingefleischter Sparfuchs). Da ich gesehen habe, daß Du auch mit ioBroker hantierst, mal eine Frage bzw. Bitte: Kannst Du vielleicht mal eine Anleitung dazu schreiben, wie man ein Kamerabild in ioBroker einbinden kann? Mir schwebt in etwa vor, daß im VIS ein kleines Bild dargestellt wird, das man antippen und dadurch auch im Vollbild-Modus betrachten kann. Alternativ wäre auch ein separater Tab innerhalb von VIS interessant.
Hallo danke für das Feedback.
Ich bin gerade dabei die Haussteuerung und damit auch die Kameras in ioBroker umzuziehen. Dazu wird es dann sicher das ein oder andere HowTo geben.