zoneminder & zmNinja

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
buddy67
Beiträge: 169
Registriert: 30.06.2016 22:52:15

zoneminder & zmNinja

Beitrag von buddy67 » 05.09.2022 22:56:13

moin,

ich habe zoneminder in einer virtuellen box (debian 11) installiert, der zugriff über die lokale ip klappt. dann habe ich die app (android) zmninja installiert, auch hier klappt der lokale zugriff problemlos. jetzt wollte ich den zugriff über das internet freigeben und zum test habe ich die ip der virtuellen box in der fritzbox freigeben (http, port 80, nur zum test). per webbrowser kann ich dann zm erreichen und mich einloggen (internet.ip/zm), nur nicht über die app, hier kommt die fehlermeldung "authorisation erfolgreich / api failed" stelle ich bei der app (im wlanheimnetz eingeloggt) als server wieder die lokale ip ein geht alles wieder in der app..... die app habe ich mehrmals neu gestartet und den api cache gelöscht, hat aber nichts gebracht. auch komplett deinstalliert und neu installiert. auch mit diversen dyndns-adressen hab ich es versucht, immer das gleiche: im browser gehts, in der app nicht... die pfade in der app habe ich zigmal geprüft, sollte alles passen... im netz konnte ich nicht wirklich was brauchbares finden....

vielleicht hat ja jemand eine idee? :)

gruß
buddy

Benutzeravatar
TRex
Moderator
Beiträge: 8069
Registriert: 23.11.2006 12:23:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: KA

Re: zoneminder & zmNinja

Beitrag von TRex » 06.09.2022 07:54:29

Brauchst du evt. weitere Ports? Du könntest auch mit tcpdump oder wireshark schauen, was im LAN-Fall passiert, um sicherzugehen.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

buddy67
Beiträge: 169
Registriert: 30.06.2016 22:52:15

Re: zoneminder & zmNinja

Beitrag von buddy67 » 06.09.2022 19:02:00

...ich habe auf mehreren seiten gelesen, dass ein einfaches weiterleiten z.b. von port 80 reichen sollte...
aber ich glaube, ich bin etwas weiter gekommen, wenn ich die url

http://LOCAL-IP/zm/cache/js_logger-base-1611509356.js
aufrufe sehe ich den quellcode des scripts

bei:
http://INTERNET-IP/zm/cache/js_logger-b ... 1509356.js
kommt: forbidden - You don't have permission to access this resource.

insgesamt fehlen dem admin-menue aufgerufen über die internet-ip auch zahlreiche sachen, das hab ich erst nicht bemerkt... scheint also eher ein apache oder rechte-problem zu sein? ... also mal wieder bastelstunde :)
Zuletzt geändert von buddy67 am 06.09.2022 22:34:45, insgesamt 1-mal geändert.

buddy67
Beiträge: 169
Registriert: 30.06.2016 22:52:15

Re: zoneminder & zmNinja

Beitrag von buddy67 » 06.09.2022 22:33:54

... es war letzlich lediglich ein problem der richtigen pfade in der apache2-config für zoneminder. nach vielen versuchen funktioniert nun alles, mit webzugriff und zmninja-app (android).

wie gesagt, ich habe in einer virtuellen box debian (netinstall) installiert, nur shh-zugriff und die cinnamom-oberfläche aktiviert, eine feste ip vergeben und bin dann nach dem tutorial: https://zoneminder.readthedocs.io/en/la ... ebian.html vorgegangen. ich musste lediglich die apache-config für zoneminder (/etc/apache2/conf-enabled/zoneminder.conf) nur wie folgt anpassen:

WICHTIG: die reihenfolge in der config muss beibehalten werden, sonst klappt das NICHT!

Code: Alles auswählen

#
# ZoneMinder Apache configuration file
# With SSLRequire and HTTPS auto redirect
# Modify this configuration to suit your requirements
#

# Auto Redirect HTTP requests to HTTPS
#RewriteEngine On
#RewriteCond %{HTTPS} !=on
#RewriteRule ^/?(zm)(.*) https://%{SERVER_NAME}/$1$2 [R,L]

ScriptAlias /zm/cgi-bin "/usr/lib/zoneminder/cgi-bin"
<Directory "/usr/lib/zoneminder/cgi-bin">
#    SSLRequireSSL
    AllowOverride All
    Options +ExecCGI +FollowSymLinks
    <IfModule mod_authz_core.c>
       # Apache 2.4
       Require all granted
    </IfModule>
    <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order deny,allow
        Allow from all
    </IfModule>
</Directory>


Alias /zm "/usr/share/zoneminder/www"
<Directory "/usr/share/zoneminder/www">
    # explicitly set index.php as the only directoryindex
    DirectoryIndex disabled
    DirectoryIndex index.php
#    SSLRequireSSL
    Options -Indexes +MultiViews +FollowSymLinks
    AllowOverride None
    <IfModule mod_authz_core.c>
       # Apache 2.4
       Require all granted
    </IfModule>
    <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order deny,allow
        Allow from all
    </IfModule>
</Directory>


# For better visibility, the following directives have been migrated from the
# default .htaccess files included with the CakePHP project.
# Parameters not set here are inherited from the parent directive above.
<Directory "/usr/share/zoneminder/www/api">
   RewriteEngine on
 RewriteRule ^$ app/webroot/ [L]
   RewriteRule (.*) app/webroot/$1 [L]
   RewriteBase /zm/api
</Directory>

<Directory "/usr/share/zoneminder/www/api/app">
   RewriteEngine on
   RewriteRule ^$ webroot/ [L]
   RewriteRule (.*) webroot/$1 [L]
   RewriteBase /zm/api
</Directory>

<Directory "/usr/share/zoneminder/www/api/app/webroot">
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
    RewriteBase /zm/api
</Directory>
dyndns-ip (ich hab no-ip) auf der fritzbox eingerichtet, port 80 auf die zoneminder-lokale-ip freigeben
-> nun klappt der zugriff per web und app lokal und aus dem internet :)))

.. ssl und weitere absicherungen kommen später, bin erstmal froh, dass alle funktioniert :) vielleicht hilft es ja jemandem...

bybye
buddy

Antworten