User Tools

Site Tools


opensearch:osd_std_ports

Let OpenSearch Dashboards (debian) run on standard ports (HTTP :80 or HTTPS :443)

Without changing the default configuration, OpenSearch Dashboards (OS-D) is listening at port 5601 for either HTTP or HTTPS.
In /etc/opensearch-dashboards/opensearch_dashboards.yml the line server.port: 5601 is setting this explicit.

When the standard port for HTTP (:443) is configured for OS-D in opensearch_dashboards.yml
server.port: 443
OS-D fails to start the next time with:
FATAL Error: listen EACCES: permission denied 0.0.0.0:443

When running this as root, the service starts.
The problem is that OS-D is lacking the permissions to bind to the standard ports by default.

NOTE: The following solution needs to be repeated when OS-D is updated by apt.

Solution

As root or with sudo run:

systemctl edit opensearch-dashboards.service

Between the lines on top

### Anything between here and the comment below will become the contents of the drop-in file

and

### Edits below this comment will be discarded

insert the code to allow the use of ports below 1024:

### Editing /etc/systemd/system/opensearch-dashboards.service.d/override.conf
### Anything between here and the comment below will become the contents of the drop-in file
 
[Service]
# Grant capability to use ports below 1024 
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
AmbientCapabilities=CAP_NET_BIND_SERVICE
 
# Disable PrivateUsers otherwise capability won't work 
PrivateUsers=false
 
 
### Edits below this comment will be discarded

Then restart the daemon:

systemctl daemon-reexec
systemctl daemon-reload

and then the service:

systemctl restart opensearch-dashboards.service


OpenSearch-Dashboards should now be available on the desired port.

opensearch/osd_std_ports.txt · Last modified: by olaf