mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-06-01 15:56:49 +00:00

* Update sentence * Move warning up * Minor changes * Update warning * Update * Update * Update warning
82 lines
3.7 KiB
Markdown
82 lines
3.7 KiB
Markdown
---
|
|
layout: page
|
|
title: "HASS Configurator"
|
|
description: "Browser-based configuration file editor for Home Assistant."
|
|
date: 2017-09-25 14:00
|
|
sidebar: true
|
|
comments: false
|
|
sharing: true
|
|
footer: true
|
|
featured: true
|
|
og_image: /images/hassio/screenshots/addon-hass-configurator.png
|
|
---
|
|
|
|
You can use this add-on to add a browser-based file editor to your Hass.io installation. By default it will listen on port `3218` of the host Hass.io is running on.
|
|
|
|
More information and a standalone version for regular Home Assistant installations can be found in the [GitHub repository](https://github.com/danielperna84/hass-configurator).
|
|
|
|
<p class='img'>
|
|
<img src='/images/hassio/screenshots/addon-hass-configurator.png'>
|
|
Screenshot of the HASS Configurator.
|
|
</p>
|
|
|
|
### {% linkable_title Feature list %}
|
|
|
|
- Web-based editor to modify your files with syntax highlighting.
|
|
- Upload and download files.
|
|
- Stage and commit changes in Git repositories, create and switch between branches, push to remotes.
|
|
- Lists of available triggers, events, entities, conditions and services. The selected element gets inserted into the editor at the last cursor position.
|
|
- Restart Home Assistant directly with the click of a button. Reloading groups, automations, etc. can be done as well. An API password is required.
|
|
- SSL/TLS support.
|
|
- Optional authentication and IP filtering for added security.
|
|
- Direct links to Home Assistant documentation and icons.
|
|
- Execute shell commands within the add-on container.
|
|
- Editor settings are saved in your browser.
|
|
|
|
### {% linkable_title Add-on Configuration %}
|
|
|
|
```json
|
|
{
|
|
"username": "admin",
|
|
"password": "secret",
|
|
"certfile": "fullchain.pem",
|
|
"keyfile": "privkey.pem",
|
|
"ssl": false,
|
|
"allowed_networks": ["192.168.0.0/16"],
|
|
"banned_ips": ["8.8.8.8"],
|
|
"banlimit": 0,
|
|
"ignore_pattern": ["__pycache__"],
|
|
"dirsfirst": false,
|
|
"sesame": "somesecretnobodycanguess"
|
|
}
|
|
```
|
|
|
|
- **username** (*Optional*): Set a username to access your configuration is protected.
|
|
- **password** (*Required*): Set a password for access.
|
|
- **ssl** (*Optional*): Enable or Disable SSL/TLS for the editor.
|
|
- **allowed_networks** (*Optional*): Limit access to the configurator by adding allowed IP addresses/networks to the list.
|
|
- **banned_ips** (*Optional*): List of statically banned IP addresses.
|
|
- **banlimit** (*Optional*): Ban access from IPs after `banlimit` failed login attempts. The default value `0` disables this feature. Restart the add-on to clear the list of banned IP addresses.
|
|
- **ignore_pattern** (*Optional*): Files and folders to ignore in the UI.
|
|
- **dirsfirst** (*Optional*): List directories before files in the file browser.
|
|
- **sesame** (*Optional*): Secret token to dynamically allow access from the IP the request originates from. Open your bookmark https://hassio.yourdomain.com:8123/somesecretnobodycanguess while `allowed_networks` is set to `[]` and boom! Open Sesame! You can use the _Network status_ menu to revoke IP addresses for which access has been granted.
|
|
|
|
<p class='note warning'>
|
|
Be careful when setting up port forwarding to the configurator while embedding into Home Assistant. If you don't restrict access by requiring authentication and/or blocking based on client IP addresses, your configuration will be exposed to the internet!
|
|
</p>
|
|
|
|
### {% linkable_title Embedding into Home Assistant %}
|
|
|
|
Using the Home Assistant component [panel_iframe](/components/panel_iframe/) it is possible to embed the configurator directly into Home Assistant, allowing you to modify your configuration from within the Home Assistant frontend.
|
|
|
|
An example configuration would look like this:
|
|
|
|
```yaml
|
|
panel_iframe:
|
|
configurator:
|
|
title: Configurator
|
|
icon: mdi:wrench
|
|
url: http://hassio.local:3218
|
|
```
|
|
|