﻿---
title: Configure Kibana
description: The Kibana server reads properties from the kibana.yml file on startup. The location of this file differs depending on how you installed Kibana: Archive...
url: https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/deploy/self-managed/configure-kibana
products:
  - Elastic Documentation
  - Kibana
applies_to:
  - Self-managed Elastic deployments: Generally available
---

# Configure Kibana
The Kibana server reads properties from the `kibana.yml` file on startup.
The location of this file differs depending on how you installed Kibana:
- **Archive distributions (`.tar.gz` or `.zip`)**: Default location is `$KIBANA_HOME/config`
- **Package distributions (Debian or RPM)**: Default location is `/etc/kibana`

The config directory can be changed using the `KBN_PATH_CONF` environment variable:
```text
KBN_PATH_CONF=/home/kibana/config ./bin/kibana
```

The default host and port settings configure Kibana to run on `localhost:5601`. To change this behavior and allow remote users to connect, you need to update your [`server.host`](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/4300/reference/kibana/configuration-reference/general-settings#server-host) and [`server.port`](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/4300/reference/kibana/configuration-reference/general-settings#server-port) settings in the `kibana.yml` file.
In this file, you can also enable SSL and set a variety of other options.
Environment variables can be injected into configuration using `${MY_ENV_VAR}` syntax. By default, configuration validation will fail if an environment variable used in the config file is not present when Kibana starts. This behavior can be changed by using a default value for the environment variable, using the `${MY_ENV_VAR:defaultValue}` syntax.

## Available settings

For a complete list of settings that you can apply to Kibana, refer to [Kibana configuration reference](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/4300/reference/kibana/configuration-reference).

## Reload configuration without restarting

Most Kibana settings are read only at startup, so changing them requires a restart. However, you can update some settings without restarting Kibana by sending a `SIGHUP` signal to the running process. The settings described in this section support this type of reload on Unix-like systems. On Windows, you must restart Kibana to apply changes made in `kibana.yml`.
<important>
  If Kibana cannot parse the updated `kibana.yml` or validate the settings being reloaded, it shuts down. Check your changes before sending `SIGHUP`.
</important>


### Reload logging settings

You can reload [Kibana logging settings](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/monitor/logging-configuration/kibana-logging) without restarting Kibana. This is useful when you need to temporarily increase logging verbosity while troubleshooting. You can change `logging.root.level`, configure a [dedicated logger](/elastic/docs-builder/docs/4300/deploy-manage/monitor/logging-configuration/kib-advanced-logging#dedicated-loggers), or increase verbosity for log records that match specific metadata. Reload the configuration and collect the detailed logs you need. When you finish, restore the original settings and reload the configuration.
For all available logging settings, refer to the [Kibana logging configuration reference](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/4300/reference/kibana/configuration-reference/logging-settings).
To reload the logging configuration:
1. Update the `logging` settings in `kibana.yml` to configure the log levels, output, or filtering you need.
2. Send a `SIGHUP` signal to the running Kibana process to reload the configuration:
   ```sh
   kill -HUP <kibana_pid>
   ```
   On [Docker](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/deploy/self-managed/install-kibana-with-docker), signal the container instead:
   ```sh
   docker kill --signal=HUP <container_id>
   ```
   If you run Kibana with multiple worker processes, send the signal to each process.
3. Confirm the reload in the Kibana logs. A successful reload produces a message similar to:
   ```text
   Reloaded Kibana configuration (reason: SIGHUP signal received).
   ```
4. Verify that the updated logging settings produce the expected output.
5. If the logging changes are temporary, restore the original settings and send another `SIGHUP` signal to reload the configuration.


## Additional topics

Refer to the following documentation to learn how to perform key configuration tasks for Kibana:
- [Configure SSL certificates](/elastic/docs-builder/docs/4300/deploy-manage/security/set-up-basic-security-plus-https#encrypt-kibana-browser) to encrypt traffic between client browsers and Kibana
- [Enable authentication providers](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/users-roles/cluster-or-deployment-auth/kibana-authentication) for Kibana
- Configure the Kibana [reporting feature](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/kibana-reporting-configuration)
- Use [Spaces](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/manage-spaces) to organize content in Kibana, and restrict access to this content to specific users
- Use [Connectors](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/manage-connectors) to manage connection information between Elasticsearch, Kibana, and third-party systems
- Present a [user access agreement](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/users-roles/cluster-or-deployment-auth/access-agreement) when logging on to Kibana
- Review [considerations for using Kibana in production](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/production-guidance/kibana-in-production-environments), including using load balancers
- [Monitor events inside and outside of Kibana](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/monitor)
- [Configure logging](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/monitor/logging-configuration)
- [Secure](https://www.elastic.co/elastic/docs-builder/docs/4300/deploy-manage/security) Kibana communications and resources