================================================================================ MxRemotePreview-Installationsanweisung ================================================================================ -------------------------------------------------------------------------------- Informationen zum Dokument -------------------------------------------------------------------------------- Veröffentlicht von: MOBOTIX AG Verfasser: Bernd Wilhelm Thilo Schüller Datum: 2010-03-26 Vertraulichkeit: Öffentlich -------------------------------------------------------------------------------- Inhalt ------ (0) Einleitung (1) Systemvoraussetzungen (2) Installationsgrundlagen (3) Installation auf einem Apache-Webserver (4) Installation auf einem Microsoft Internet Information Server 7 (5) Testen der Webserver-Installation (6) Testen des CGIs (7) Sicherheitshinweise ================================================================================ (0) Einleitung ================================================================================ "MxRemotePreview" ist eine Softwarekomponente, die den direkten Dateiserver- Zugriff von MxControlCenter über schmalbandige Verbindungen (z. B. über das Internet und einen VPN-Tunnel) ermöglichen soll. MxRemotePreview wird als CGI-Modul in einer Webserver-Umgebung installiert. MxControlCenter holt dann nicht mehr die originalen Video-/Audiodaten direkt vom Dateiserver, sondern sendet eine Anfrage an den Webserver, der seinerseits für bestimmte Dateitypen MxRemotePreview aufruft. MxRemotePreview liest die originalen großen Dateien, REDUZIERT sie, indem der Videoinhalt mit reduzierter Bildrate, Auflösung und/oder JPEG-Qualität umkodiert wird und schickt die reduzierten Dateien zum MxControlCenter zurück. => Anstelle der großen Originaldaten müssen also nur die viel kleineren reduzierten Daten über das Netzwerk übertragen werden. Dadurch bekommt das MxControlCenter die Daten schnell genug, um eine Ereignisliste aufzubauen bzw. die Filmsequenzen wiederzugeben. Für MxRemotePreview wird ein Windows-Dateiserver mit einem zusätzlich installierten Webserver (Apache oder IIS) benötigt. Die Aufzeichnungen können auf diesem Server selbst liegen (d. h. die Kameras verwenden diesen Server als Dateiserver) oder auf einem anderen Dateiserver bzw. NAS-System. Werden zwei unterschiedliche Server verwendet, benötigt der MxRemotePreview-Webserver einen Zugang mit möglichst hoher Bandbreite zum Dateiserver bzw. NAS mit den Aufzeichnungen der Kameras. Falls Sie MxRemotePreview für ein anderes Betriebssystem benötigen, senden Sie bitte eine E-Mail an software-feedback@mobotix.com, und beschreiben Sie das gewünschte Betriebssystem. ================================================================================ (1) Systemvoraussetzungen ================================================================================ * Die Taktrate des Prozessors sollte größer als 1 GHz sein. * Diese Version läuft nur auf Windows XP SP3 oder höher. ================================================================================ (2) Installationsgrundlagen ================================================================================ Die grundlegende Idee hinter den Installationsvarianten ist: (a) Das CGI so installieren, wie vom jeweiligen Webserver vorgesehen. (b) Einstellen, dass das CGI entweder für alle oder nur für bestimmte JPEG- Dateien aufgerufen wird. Als regulärer Ausdruck kann "[MEAPC][0-9]+\.jpg$" benutzt werden. Für andere Dateitypen soll und darf das CGI nicht aufgerufen werden. (c) Die Dokument-Wurzel des Webservers auf den Aufzeichnungspfad setzen. Diese als "http:///" verfügbar machen. (d) Optional können Standardwerte für die Umkodierung mittels folgender Umgebungsvariablen übergeben werden: MXRECODER_FRAMERATE - gewünschte Bildrate (sonst: 1 Bild pro Sekunde) MXRECODER_WIDTH - Bildgröße, Seitenverhältnis wird beibehalten MXRECODER_HEIGHT Bild wird innerhalb dieser Dimensionen bleiben MXRECODER_QUALITY gewünschte JPEG-Qualität in Prozent MXRECODER_AUDIO - Audio aktivieren (1) oder deaktivieren (0), deaktivieren spart 64 kBit/s ================================================================================ (3) Installation auf einem Apache-Webserver ================================================================================ (3a) Apache-Webserver installieren -------------------------------------------------------------------------------- Wenn Sie nicht schon einen Apache-Webserver betreiben: * Laden Sie sich ein passendes Binärpaket von apache.org herunter. * Starten Sie den Installer (z. B. apache_xxx-win32-xxx.msi). * Folgen Sie den Anweisungen. * Installieren Sie Apache als Windows-Dienst auf Port 80 (Standardeinstellung). (Hinweis: Sie können auch einen anderen Port als 80 verwenden. Denken Sie jedoch daran, diesen Port auch in der MxControlCenter-Installation anzugeben.) (3b) MxRemotePreview.cgi installieren -------------------------------------------------------------------------------- * Kopieren Sie MxRemotePreview.cgi.exe in das Apache-Verzeichnis: C:/Program Files/Apache.../cgi-bin (3c) Apache konfigurieren -------------------------------------------------------------------------------- * Öffnen Sie httpd.conf aus C:/Program Files/Apache.../conf und ändern Sie die folgenden Zeilen: ----------------------------------------------------------------------------- DocumentRoot "C:/" ScriptAlias /cgi-bin/ "C://cgi-bin/" Action mxremotepreview /cgi-bin/MxRemotePreview.cgi.exe "> SetHandler mxremotepreview ----------------------------------------------------------------------------- * Fügen Sie die gewünschten MxRemotePreview-Standardeinstellungen hinzu: (Anmerkung: Diese werden normalerweise durch MxCC überladen) # Gewünschte Bildrate (Standard: 1 Bild pro Sekunde) SetEnv MXRECODER_FRAMERATE 1 # Auflösung, Seitenverhältnis wird beibehalten SetEnv MXRECODER_WIDTH 320 SetEnv MXRECODER_HEIGHT 240 # JPEG-Qualität [1..100] SetEnv MXRECODER_QUALITY 40 # Audio aktivieren, 0 zum Deaktivieren SetEnv MXRECODER_AUDIO 1 * Die restliche Apache-Konfiguration kann wie gewünscht angepasst werden. Siehe http://httpd.apache.org/docs/2.2/ * Starten Sie den Apache-Dienst neu. ================================================================================ (4) Installation auf einem Microsoft Internet Information Server 7 ================================================================================ (4a) IIS installieren -------------------------------------------------------------------------------- * Öffnen Sie den Server-Manager und wählen Sie "Rollen hinzufügen". * Markieren Sie "Webserver (IIS)" in der Liste und klicken Sie auf den Button "Weiter", bis das Auswahlfenster "Rollendienste" erscheint. * Wenn die Auswahl im Fenster "Rollendienste" angezeigt wird, führen Sie die folgenden Schritte durch (ändern Sie keine der bereits aktivierten Optionen: (1) Aktivieren Sie "CGI" unter "Anwendungsentwicklung". (2) Stellen Sie sicher, dass die "IIS-Verwaltungskonsole" ebenfalls akti- viert ist. (Auf Windows 7 ist sie nicht aktiviert, auf Windows Server 2008 ist sie aktiviert.) Klicken Sie auf den Button "Weiter", bis die Installation abgeschlossen ist. * Öffnen Sie einen Webbrowser und geben Sie "http://localhost" ein, um die den Webserver zu testen. (4b) MxRemotePreview.cgi installieren -------------------------------------------------------------------------------- * Erstellen Sie im Ordner C:\inetpub das Verzeichnis "cgi-bin". * Kopieren Sie die Datei "MxRemotePreview.cgi.exe" in diesen Ordner. (4c) IIS konfigurieren -------------------------------------------------------------------------------- * Offnen Sie "Systemsteuerung > Verwaltung" und doppelklicken Sie auf "Internetinformationsdienste-Manager". * Wechseln Sie im Bereich "Verbindungen" zur "Standardwebsite" und markieren Sie diese. * Klicken Sie im rechten Bereich auf "Erweiterte Einstellungen...". * Tragen Sie im Dialog "Erweiterte Einstellungen" unter "Physikalischer Pfad" den Pfad zum freigegebenen Ordner ein, in dem die Kameras ihre aufgezeichne- ten Daten speichern. Klicken Sie anschließend auf den Button "OK". * Doppelklicken Sie auf das Symbol "Verzeichnis durchsuchen" im mittleren Bereich. Wenn sich das Verzeichnis öffnet, klicken Sie im rechten Bereich unter "Aktionen" auf "Aktivieren". * Klicken Sie im Bereich "Verbindungen" erneut auf "Standardwebsite". * Doppelklicken Sie im mittleren Bereich auf das Symbol "Handlerzuordnungen". Sobald dieser Dialog geöffnet ist, klicken Sie unter "Aktionen" auf "Modulzuordnung hinzufügen...". * Wenn der Dialog "Modulzuordnung hinzufügen" im mittleren Bereich erscheint, tragen Sie in den unten aufgeführten Feldern die folgenden Werte ein: - Anforderungspfad: *.jpg - Modul: CgiModule - Ausführbare Datei (optional): C:\inetpub\cgi-bin\MxRemotePreview.cgi.exe - Name: MxRemotePreview service Klicken Sie anschließend Sie auf den Button "OK". * Wenn Sie im Dialog "Modulzuordnung hinzufügen" die Frage "Möchten Sie diese ISAPI-Erweiterung zulassen?" gestellt bekommen, klicken Sie auf den Button "Ja". * Rechtsklicken Sie im Bereich "Verbindungen" auf "Standardwebsite" und wählen Sie "Virtuelles Verzeichnis hinzufügen". * Wenn der Dialog "Virtuelles Verzeichnis hinzufügen" erscheint, tragen Sie in den unten aufgeführten Feldern die folgenden Werte ein: - Physikalischer Pfad: (der physikalische Pfad kann sich auch auf einer Freigabe eines anderen Computers/NAS befinden, wenn diese Freigabe auf dem lokalen Computer als Netzlaufwerk verbunden wurde). Klicken Sie anschließend auf den Button "OK". * Klicken Sie im Bereich "Verbindungen" auf den Namen des Servers. * Doppelklicken Sie im mittleren Bereich auf das Symbol "MIME-Typen" und anschließend unter "Aktionen" im rechten Bereich auf "Hinzufügen..." Hinweis: Obwohl die gleiche Aktion im Dialog "Standardwebsite" durchgeführt werden kann, führt das Laden der folgenden Adresse zu einem http-Fehler 500.19: http:////.erdinfo Aus diesem Grund muss der MIME-Typ der Datei ".erdinfo" global (also für den gesamten Webserver) definiert werden (s. u.). * Wenn der Dialog "MIME-Typ hinzufügen" erscheint, tragen Sie in den unten aufgeführten Feldern die folgenden Werte ein: - Dateinamenerweiterung: erdinfo - MIME-Typ: application/octet-stream Klicken Sie anschließend Sie auf den Button "OK". ================================================================================ (5) Testen der Webserver-Installation ================================================================================ * Öffnen Sie einen Web-Browser. * Geben Sie "http://127.0.0.1/" als Zieladresse ein. Die Webseite sollte die verfügbaren Kameraverzeichnisse auf dem Dateiserver anzeigen. * Navigieren Sie in die Verzeichnisse, und beachten Sie dabei, wie .JPG-Dateien angezeigt werden. * Hängen Sie "?previewsize=320x240&quality=20" an die URL eines JPEGs an. Wenn Sie jetzt sehen, wie sich das angezeigte Bild entsprechend ändert, dann haben Sie alles richtig konfiguriert, und das CGI funktioniert. ================================================================================ (6) Testen des CGIs ================================================================================ Das CGI kann über den Webserver getestet werden. Die Parameter für das Umkodieren werden in der URL angegeben: * previewsize=x : Maximale Ausdehnung in Pixeln ("320x240" = 320px horizontal x 240px vertikal) * framerate= : Bilder pro Sekunde, Dezimalzahlen erlaubt, z. B. 1.5 (Punkt statt Komma!) * quality= : Qualität der JPEG-Kodierung, 1..100 * noaudio : Kein Audio im Stream übertragen Beispiel: http://mxcam.meinefirma.net/10_0_0_1/000/000/E00001.jpg?previewsize=320x240 &framerate=1.0&quality=20&noaudio Hinweis: Diesen Befehl in eine Zeile in der Adressleiste des Browsers kopieren (die Reihenfolge der Parameter ist beliebig). Stellen Sie sicher, dass sich in der Adresszeile keine Leerzeichen befinden! ================================================================================ (7) Sicherheitshinweise ================================================================================ Beachten Sie bitte die folgenden Sicherheitshinweise: * Stellen Sie sicher, dass Sie den Windows-Computer und insbesondere freigegebene Ordner durch speziell angelegte Benutzernamen für die Kameras schützen. Für die Aufzeichnung benötigen die Kameras Vollzugriff im freigegebenen Ordner. Andere Benutzer sollten auf diese Ordner überhaupt keine oder höchstens Leserechte besitzen. * Schützen Sie Ihre Webserver-Installation und die Aufzeichnungen, indem Sie für den Zugriff auf die aufgezeichneten Daten einen Benutzernamen und ein Kennwort festlegen. Evtl. ist auch die Verschlüsselung der Daten über SSL (Zugriff über "https://...") erforderlich. Informationen zu diesen Einstellungen finden Sie in der Apache-Dokumentation auf Ihrem Computer unter "http://localhost/manual/" bzw. online unter "http://httpd.apache.org/docs-project/". ================================================================================ 26. März 2010 MOBOTIX AG http://www.mobotix.com