Skip to content

Kibana Installation Guide for Windows

TLDR

  • Kibana must use the kibana_system account to connect to Elasticsearch. If the password is lost, it can be reset via elasticsearch-reset-password -u kibana_system.
  • You must use an IP or Domain in the elasticsearch.hosts configuration; localhost is not allowed.
  • If SSL is enabled, you must place the CA certificate generated by Elasticsearch into the Kibana directory and configure elasticsearch.ssl.certificateAuthorities in kibana.yml.
  • Sensitive information (such as SSL passwords) should be managed using kibana-keystore rather than being written directly into configuration files.
  • Please use the elastic superuser account to log in to the Kibana management interface.

Download and Installation

Directory Structure Explanation

  • bin: Directory for executable files.
  • config: Directory for configuration files.
  • node: Contains the Node.js runtime environment.
  • node_modules: Stores Node.js packages.
  • packages: Core libraries and dependency packages.
  • plugins: Directory for plugins.
  • src: Kibana source code.
  • x-pack: Paid features of the Elastic Stack.
  • .i18nrc.json: Internationalization (i18n) configuration file.

YAML Configuration File (config/kibana.yml)

Network Settings

When to use: When you need to access Kibana from an external network or adjust the listening port.

yaml
# Network settings
network.host: 0.0.0.0 # Allow all connections
http.port: 5601       # Default port

Elasticsearch Connection Settings

When to use: When Kibana fails to establish a connection with Elasticsearch upon startup, or authentication fails.

  • Kibana must use the kibana_system account for the connection. If the password is lost, please execute the following in the Elasticsearch bin directory:
    bash
    elasticsearch-reset-password -u kibana_system
  • Configuration example:
    yaml
    # Must use IP or Domain, localhost is not allowed
    elasticsearch.hosts: ["https://127.0.0.1:9200"]
    elasticsearch.username: "kibana_system"
    elasticsearch.password: "pass"
    # If SSL is enabled, specify the CA certificate path
    elasticsearch.ssl.certificateAuthorities: [ "certs/kibana/elasticsearch-ca.pem" ]

Language Settings

yaml
i18n.locale: "zh-CN"

Configuring SSL Certificates

When to use: When Elasticsearch has HTTPS transport enabled and Kibana needs to connect securely via SSL.

  1. Copy the Elasticsearch http.p12 certificate to the Kibana directory.
  2. Enable SSL in kibana.yml:
    yaml
    server.ssl.enabled: true
    server.ssl.keystore.path: "certs/elasticsearch/http.p12"
  3. Use kibana-keystore to securely store the password:
    bash
    kibana-keystore create
    kibana-keystore add server.ssl.keystore.password

Starting the Service

When to use: After installation is complete, to verify that the system is operating normally.

  1. Open Command Prompt with administrator privileges.
  2. Navigate to the bin directory and execute kibana.bat.
  3. Open http://localhost:5601 or https://localhost:5601 in your browser.
  4. If the CMD displays Native global console methods have been overridden in production environment., the service has started.

Login and Permission Management

When to use: During the first login or when you need to create standard user accounts.

  • Please use the elastic superuser account to log in to Kibana. If you forget the password, execute elasticsearch-reset-password -u elastic to reset it.
  • Create new users: After entering the Kibana interface, go to Stack Management -> Security -> Users to configure them.

Change Log

  • 2025-03-18 Initial version created.