TLDR; Local control of my devices through Node Red doesn’t seem possible using SSL through DuckDNS/Let’s Encrypt. Am I an idiot? Please advise.
Let me preface this by saying I’m very much a novice. I’ve been using a Raspberry Pi and Hass.io for approximately 3 months, and I’m completely new to Node Red. I do control Hass.io externally through SSL using the Duckdns component with Let’s Encrypt. (https://mydomain.duckdns.org, and https://mydomain.duckdns.org/nodered)
I’m not 100% sure that’s the proper front end address to Node Red, because it’s currently uninstalled. I’m just going by memory, which may be incorrect.
Using the built-in automation editor and the resulting .yaml parsed versions has been a source of frustration for me since starting to use Hass.io approximately 3 months ago. I saw a Reddit post about Node Red, and thought that it looked like a system that was much easier for me to understand when it comes to creating/editing/troubleshooting my automations. I find it very difficult to wrap my head around the .yaml parsed automations that I’ve created with the built-in automation component if I need to make a quick edit from the .yaml file. I love the fact that you can easily test portions of your automations with NodeRed. It’s as easy as injecting a command or value at some point and seeing the result immediately using a debug node. Much easier than commenting out portions of the .yaml file and reloading the automation in Hass.io to test.
After installing Node Red, all was going great! I had replaced or consolidated several of my existing default automations using Node Red equivalents, and I was very happy using it instead of the default tools. Then I read a post on Reddit that someone was asking if Node Red really required internet access to run automations if you were using SSL… Wait, what? Since starting with Node Red, I had assumed that like Hass.io, I was externally connecting through SSL to access the front-end of the software, but all of the device control functionality was actually being executed locally on my network! Local control was one of the important factors that lead me to start using Home Assistant in the first place!
So I set up a simple automation in both Hass.io and Node Red that would turn on a switch if my phone disconnected from my WiFi network. Then I disconnected my router from the internet turned off WiFi on my phone. As expected, Hass.io was able to turn on the switch even though there was no internet access. Surprisingly, when attempting to run the same simple automation through Node Red, it failed without internet access…
So from you community experts to a novice such as myself, is it possible to still access the Node Red front-end through SSL, (using Duckdns/Let’s encrypt) yet have it execute automation locally? (Preferably without needing to install something like Dnsmasq, NGINX, or any complicated programming steps…)
I did uninstall Node Red out of frustration because local automation execution is a definite must as far as I’m concerned, so I wanted nothing to do with Node Red any more. Then after a few days of introspection, I decided I’m likely doing Node Red a disservice because I could very well have a flawed understanding of how it needs to be configured to do what I want it to do, so I decided to ask the community before I completely write it off as unusable to me.
I apologize for the long, possibly rambling post, and thanks in advance for any help. I really appreciate it!