Categories
exacqVision Webservice Products

WFE Logs Growing Unexpectedly Large

Description 

The WFE log file was]observed to be 30 GB and was filling the OS partition

Product 

exacqVision Web Server v21.06

Solution

For reference the WFE Log File Locations are:

Linux

/var/log/webservice/wfe.log

Windows

C:\ProgramData\Webservice\logs\wfe.log
  • Fully purge the exacqVision Web Server software
  • Verify the exacqVision Web Server install folder has been removed
  • Reinstall exacqVision Web Server
  • WFE file sizes should then return and remain normal

NOTE:  See AES-13 for additional information

Categories
Knowledge Support Support Categories exacqVision Webservice

ExacqVision Web Server 22.09.0 Searches Return Black Screen

Description 

Web Service running 22.09.0 can experience an issue where searches from the web can return a black screen and then become stuck in that state. The web service must be restarted to clear the issue, but it will likely reoccur.

Product 

  • ExacqWebService 22.09.0

Solution

Update to exacqVision Web Server 22.09.1 or higher

See exacqVision Web Server release history here

10/06/2022 v22.09.1 * Bug Fix – Fix search tick plant deadlock.

Categories
exacqVision Webservice Products

Let’s Encrypt Auto Renewal Fails with Redirect Enabled

Title

Let’s Encrypt Auto Renewal Fails with Redirect Enabled

Description 

If you are using Let’s Encrypt with HTTPS Redirect enabled the auto renewal can provide random internal IP addresses that fail to renew.

Product 

WebService 20.06.2.0 to current 22.03.02.0

Steps to Reproduce 

Engineering was able to Reproduce this behavior and determined that Redirect should be disabled until this is resolved.

Expected Results 

Renewal should work with HTTPS redirect enabled.

Actual Results 

Auto Renewal Fails.

Solution

If Auto Redirect is enabled then disabled it. Make sure to apply this and restart the services.
A fix will be available in the 22.06 release

See trac ticket 23194 or Jira ticket AESW-75 for additional details.

Categories
Knowledge Support Support exacqVision Webservice Products

exacqVision Web Server HTTP Policy “Redirect to HTTP” Broken

Description 

HTTP to HTTPS redirect implementation is broken and always supplies and internal IP address for the redirect, leading to any and all redirect from outside of the local network to fail.  

Product 

  • exacqVision Web Server 22.03

Steps to Reproduce 

  • Configure HTTPS on the web service, either external or ACME
  • Enable “Redirect to HTTPS” in the configuration
  • Attempt to connect to the web service via HTTP, e.g., `curl -v /login.web”>http://<url>/login.web`

Expected Results 

HTTP requests are redirected to HTTPS  

Actual Results 

Fails to connect  

Solution

Update exacqVision Web Service to 22.06 or above.

<br> 

See AESW-620 for additional information. 

<br>

Categories
Knowledge Support Support exacqVision Webservice Products

Web Service – Services do not show up on install

When installing the web service the Service’s do not show up. The install seems if it completed successfully but does not create a service.

After installing the latest version of the Webservice the control panel and service page looks like this: You can see the application installed but the services do not.


Check to see if nvrg.exe is installed in the BIN folder.
Run the Command Prompt as ADMIN: Note: You have to be in the bin directory or use full path.
Type the following in CMD:
cd C: \Program Files (x86) or (x64)\exacqVision\WebService\bin
Then run:
wfe.exe -k install
IF you get the follow error we need to Make Sure that this error shows before moving to correcting the registry. If this does not give an error then do not move to the registry and escalate the case.

ERROR: If you get the above error: “this registry key already exists” seen as the return from the command follow the steps below to correct the install.

Run RegEdit as ADMIN and navigate to:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\webservice

You will delete the whole webservice key seen above. Delete the Folder in the left panel only.

Once that is done you can re run the command above and if it runs successfully you can validate the service shows up in the services. If it does start the service and in a browser browse to 127.0.0.1 (list port intended).

Categories
User Guides Knowledge Support Documentation Support exacqVision Webservice Products

Validating Certificate Permissions for SSL and HTTPS on Linux for WebService

In this example using Letsencrypt SSL certificates. The webservice is behind HAProxy and was not been able to successfully configure HAProxy to update Letsencrypt certificates over HTTP. Therefore, I manually updated the certificate.
/etc/webservice/tls/server.crt _> /etc/letsencrypt/live/site.com/cert.pem

/etc/webservice/tls/server.key -> /etc/letsencrypt/live/site.com/privkey.pem.

After updating the certificates, I linked the original to the new certificates in the Letencrypt folder:
When I try to connect to the webservice, I get this error message sent an invalid response. ERR_SSL_PROTOCOL_ERROR’.


The destination of his symlink, not the symlink itself, needs to be readable by the nvrweb user. In this example the directory that the symlink did not have permissions to allow the link to work correctly.

The best way to be sure would be to run terminal command
sudo -i
to root and then run
su nvrweb -s /bin/bash
and try to view the files (e.g., cat the paths listed in the config file).
This should give you an out put.

{
“service”: {
“name”: “Customer Name”,
“url”: “https://site.com”,
“loginTokenExpiration”: 30,
“discoverable”: true,
“inactivityTimeout”: 0,
“enableAutocomplete”: false,
“enableRelay”: false
},
“webserver”: {
“listen”: 80,
“tls”: {
“listen”: 443,
“cert”: “/etc/webservice/tls/server.crt”,
“key”: “/etc/webservice/tls/server.key”,
“type”: “external”
}
},
“log”: {
“duration”: 1,
“interval”: “W”,
“level”: “debug”,
“retain”: 1
},
“servers”: [
{
“host”: “site.com”,
“port”: 22609,
“passthrough”: {
“enabled”: false
},
“poweruser”: {
“enabled”: true,
“username”: “INFO”,
“password”: ” INFO”
}
}
],
“nvrg”: {
“port”: 22717,
“remote”: {
“enabled”: false,
“port”: 35111
}
},
“updates”: {
“fileInfo”: “https://www.exacq.com/downloads/evFileInfo.txt”,
“downloadTimeout”: 10
},
“auth”: {
“type”: “none”

We also need to make sure nvrweb can read the cert files
/etc/webservice/tls/server.crt and .key
The output will show the certs.

nvrweb@sunstone:/root$ cd /etc/webservice
nvrweb@sunstone:/etc/webservice$ cat tls/server.crt
—–BEGIN CERTIFICATE—–
Contents of cert will be displayed here.
—–END CERTIFICATE—–

nvrweb@sunstone:/etc/webservice$ cat tls/server.key
—–BEGIN PRIVATE KEY—–
Contents of Cert will be displayed here
—–END PRIVATE KEY—–

These certs were in the TLS directory and being linked to the Letsencrypt folder, which we found having permissions issues.

To check try the following:
Try the same thing with su to nvrweb and see if nvrweb can access the certs in the let’s encrypt folder, before changes WS config.
Important to note that it’s not just the permissions of the target file that matter, but all the directories in between. In this case the target file was fine but the directory was LetsEncrypt and that did not have permissions. Since we were pointing the link to another file, that file needs to be accessible to nvrweb.

ls -ld for each directory – /etc/letsencrypt, /etc/letsencrypt/live, /etc/letsencrypt/site.com

Without -d it will show the contents, if you want to look at the directory like /etc/letsencrypt it’s necessary to do ls -ld /etc/letsencrypt

The site.com directory is fine. We need to check the live or letsencrypt directories.
letsencrypt live directory’s permissions are rwx—- which means only root can enter or read the directory.

In the above photo we can see that the Permission is denied for the letsencrypt/live folder.

Configuration this way in not the normal process and it is possible the next time I run letsencrypt again to update certs it might error due to perms or reset them. The process might need to be done each time.

Categories
Knowledge Support Support Categories exacqVision Webservice Products

Manually Enabling Remote Web Service Configuration

THIS ARTICLE HAS BEEN DEPRECATED

By default, exacqVision Web Service restricts configuration to the browser on the local machine. Through the configuration, a user can disable this restriction to enable remote configuration. However, there could be a need to manually remove this restriction (such as when installing the Web Service in a virtual environment, such as exacqVision Virtual).

<br>

To manually enable remote configuration, complete the following steps:

<br>

NOTE: These instructions assume that the file to edit does not contain any text. If it has previously been changed, merge the changes specified here into the existing file.

  1. With administrator credentials, open the file .evws-login for editing. By default, this file is found in Windows at C:\Program Files (x86)\exacqVision\WebService\bin\.evws-login, or in Linux at /etc/.evws-login.
  2. Add the following into the file:

    [Settings]
    restricttolocalhost = 0
  3. Save the file.
  4. Restart the Web Service.

<br>

After restarting, the Web Service will have remote administration enabled.

<br>

You can also use the Web Service Configuration page to deselect the Enable Localhost Restriction option.

Categories
Knowledge Support Support exacqVision Webservice Categories Products

Native Streaming in the Web Client

Affected platforms

exacqVision 7.2 or later

<br>

Description

exacqVision 7.2 introduces native h.264 video streaming to the web client. When a browser session connects to the web service, the browser and web service negotiate whether transcoding or native streaming will be used. The following logic describes how this is negotiated:

  1. If the browser does not support web sockets, fall back to polling (traditional method).
    • This includes IE8 and 9.
    • Since IE8 does not support the HTML5 element, it plays back by displaying the image element directly.
  2. If the user has disabled software decoding on the client configuration page, use web sockets JPEG.
    • This method is similar to traditional polling, but the delivery mechanism causes frames to be sent as they are generated.
  3. If the camera is not native H.264, use web sockets JPEG.
    • This includes digital PTZ “cameras” whose parent camera may be h.264, but as a virtual camera, they are not.
  4. If the camera’s resolution is 167% larger than the panel, use web sockets JPEG.
    • There is very little gain in rendering native h.264 on small panels.

At this point, the camera will attempt native h.264 decoding. If it succeeds, it will play back using software decoding. Otherwise, it will fall back to web sockets JPEG.

Categories
Knowledge Support Support Categories exacqVision Webservice Products

Permissions are incorrect for LDAP users logging in via web service

Affected platforms

  • exacqVision web service 3.6.0 – 7.1.10
  • evAPI 1.21.1 – 1.26.6

<br>

Symptom

When logging into the web service with a user queried against LDAP, either through the client or the mobile app, the user is logged in but the exacqVision admin access permissions set for the user are incorrectly disabled. In this situation, even if the user has permissions to configure the server, the options to do so are not displayed.

<br>

Workaround

Downgrade to prior version of the web service or evAPI

<br>

Resolution

  • Update to web service 7.1.11 or later
  • Update to evAPI 1.26.7 or later
Categories
Knowledge Support Support Categories exacqVision Webservice Products

Update web service for Apache httpoxy vulnerabilities

Description

The version of Apache embedded in the web service has been found to expose a security vulnerability, known as “httpoxy” (technical details: ​CVE-2016-5387). This vulnerability can be avoided by changing the configuration of Apache.

<br>

Version Introduced

2.3.9

<br>

Platform

Web Service / All

<br>

Work Around

  1. Open the evApache httpd.conffile for editing

    Windows: C:\Program Files\exacqVision\WebService\evApache\conf\httpd.conf
    Linux: /etc/evapache/httpd.conf
  2. Find and change the line #LoadModule headers_module modules/mod_headers.so to LoadModule headers_module modules/mod_headers.so. (Remove the ‘#’)
  3. Add the following line to the end of the file: RequestHeader unset Proxy early
  4. Save the file.
  5. Restart the web service.