Well, after a few check & changes on my side I was able to run ZM Linux the same way as ZM Android.
from the Apache logs I have non authenticated "tries" from the zmNinja devices on the followings:
GET /zm/api/monitors.json HTTP/1.1" 401 756
GET /zm/index.php?view=watch&mid=1 HTTP/1.1" 401 756
GET /zm/cgi-bin/nph-zms?mode=single&monitor=1&scale=50&rand=40908 HTTP/1.1" 401 756
a curl works fine, and requires login. Seems some accesses are forgetting the user:pass
$ curl -I
https://user:pass@xxx.yyy.ch/zm/api/monitors.json
HTTP/1.1 200 OK
Date: Wed, 20 Jan 2016 14:29:07 GMT
Server: Apache/2.4.7 (Ubuntu)
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Powered-By: PHP/5.5.9-1ubuntu4.14
Content-Length: 5316
Content-Type: application/json; charset=UTF-8
Set-Cookie: ZMSESSID=hmfkt282939k9qb2fm7cei6al0; expires=Wed, 20-Jan-2016 18:29:07 GMT; Max-Age=14400; path=/; HttpOnly
X-Content-Type-Options: nosniff
X-Frame-Options: sameorigin
$ curl -I
https://xxx.yyy.ch/zm/api/monitors.json
HTTP/1.1 401 Unauthorized
Date: Wed, 20 Jan 2016 14:40:45 GMT
Server: Apache
Strict-Transport-Security: max-age=31536000; includeSubDomains
WWW-Authenticate: Basic realm="ZoneMinder Login"
Content-Type: text/html; charset=iso-8859-1
Checking the logs. But DEV logs from the linux App aren't anonymized...
Regards,
Arnaud