I have elasticsearch 1.4 and kibana4 running on an Amazo EC2 instance running RHEL7.
Kibana4 is running as a standalone process and is not deployed in a web container such as nginx.It is listening on Port 5601.(the default port). I would like to have kibana listen on port 80.
Can this be achieved without using nginx? If yes how?
The default host and port settings configure Kibana to run on localhost:5601 . To change this behavior and allow remote users to connect, you'll need to update your kibana. yml file. You can also enable SSL and set a variety of other options.
By default, Elasticsearch will use port 9200 for requests and port 9300 for communication between nodes within the cluster.
Log on to the web applicationedit If you are using a self-managed deployment, access Kibana through the web application on port 5601. Point your web browser to the machine where you are running Kibana and specify the port number. For example, localhost:5601 or http://YOURDOMAIN.com:5601 .
You can use netstat command to view all the ports that are being used in the system. If not exists, install using sudo apt install net-tools . Type in netstat -tnlp . Provide sudo to get which ports are used by different programs.
You need to set capabilities CAP_NET_BIND_SERVICE
to bind non root process to a privileged port (<1024)
to make kibana listen on port 80 :
1- edit kibana port in /etc/kibana/kibana.yml
server.port : "80"
2- run the following commands :
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/bin/kibana
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/bin/kibana-plugin
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/bin/kibana-keystore
sudo setcap cap_net_bind_service=+epi /usr/share/kibana/node/bin/node
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With