Hi folks,
Some time ago lots of Node-RED home automation systems have been hacked. There were a number of good initiatives in the community to help people to improve their security. But it were all bits and pieces, but I didn't find a tutorial with a full solution.
I needed a lot of things:
- Limit unauthorized clients to access my flow editor and dashboard.
- Access Node-RED when not being at home, but without port forwarding on my modem/router.
- Https connections with LetsEncrypt certificates all over the place, even withint my LAN. Because that solves a lot of issues with modern browsers.
- Public tunnels that allow me to access Node-RED from external systems (e.g. for speach commands from my Google home devices).
- And so on...
So I started reading about how I could secure my system, without loosing any features. I came across very nice solutions, but there was always something missing. Or perhaps my brain was too small to understand how I could do it.
Finally I came across Tailscale which has (nearly) everything I needed. Must be me, but I found it very hard to translate their well-written documentation into a working setup. So I started writing my own tutorial, in order to help others doing the same. Here it finally is
Tailscale for Node-RED tutorial
I have to admit that I completely underestimated writing such a tutorial! Took me an awfull large part of my free time, so I hope it is a bit understandable for a major part of our community. Although I tried to visualize evertything using pictures, I can imagine that it will still be difficult for a lot of people to understand it. But yes, security is not an easy task unfortunately...
All kind of contributions are welcome, e.g. via pull requests. It is not about code, only plain text.
So everybody reading this now, will be able to contribute
And please keep in mind that I am not a security expert, and that I have not enough free time to answer all questions and solve all problems...
Hope you find it useful,
Bart