Why the Heck does HA run on port 8123

If the goal is to make HA more accessible, then changing the default port to 80/443 would really help. I can say first hand trying to explain to someone why they have to add a “:” to a URL when they’ve never done it before can be frustrating.

If there is a technical reason for it to be on 8123, then having a default redirect running on hassio would work to improve this experience.

For me I am happy it is not running on 80 due to the fact emulated hue for alexa wouldn’t work then. Ut nevertheless I agree and voted (shoot in foot).

1 Like

@sender That makes complete sense. Ideally it should still default to port 80, and be configurable through the recently added Network Manager.

1 Like

Well historically HA just ran on a computer in a venv in python. As such your system may have been running apache or another web server on 80/443. And indeed many people still run in a venv.

Now that the majority of people run a dedicated haos or supervised install, it might make sense to put it on a standard port, but confusion would reign.

Leave it on 8123 by default I say, not forgetting you can change it if you want to.

7 Likes

you can make it whatever port you want, whats the issue here?

6 Likes

Thanks for the link sparkydave! I get that anything can be edited, but what really makes a better default?

If you flipped the question around and the current default was port 80, would there be any reason to switch it to 8123?

Where would I find this Network Manger? Did I overlook this feature in the last updates? Is it sceduled for a future one? I would be so happy to alter wifi credentials through a nice integrated interface :slight_smile:

I don’t know anything more that what I see here. I’m assuming this will be in the next release.

2 Likes

Sounds cool, thanks!

What is so difficult about adding :8123 to an address in a browser? Just change it for them to 80 and then you don’t need to explain anymore. Changing it now to 80 would lead to confusion, inconsistent docs etc.

I agree with that.
This can’t be changed to 80 as default. This would be a massive breaking change.

There is an option to set the port, no need to add UI for it.
How often do you change the port?

This could be added to onboarding or added somewhere in settings, but for me, this feature is “nice to have”, but not “I can’t live without it”

2 Likes

So if changing the default port is to much, why not at least have a simple redirect. All of the documentation that mention 8123 would still work as expected, and for anyone not defining the port it would also just work. Literally the best of both worlds.

3 Likes

i don’t think that’s a good solution. The best would be to be able to choose the port during onboarding and then to be able to configure it through the UI after onboarding. Setting a default redirect would mean that people running any other service on port 80, would need to disable the redirect first.
Yes the docs would still be correct, but imagine the following situation, you are a newbie (and that’s the audience you want to reach with this change) you configure HA to have port 80 instead of 8123. Now you want to configure some external app that needs access to Home Assistant, e.g. AppDaemon and im the docs it says “put IP of Home Assistant and port 8123 in the config”. Do you expect this user (who doesn’t understand why he needs to put :8123 after the IP) to know now that he needs to change this to 80 instead of 8123?

4 Likes

Great idea to make your HA easier to attack by using the standard port…

10 Likes

You mean no one knows it’s 8123? :slight_smile:

I think it’s good/better to have an option to have multiple interfaces/ip addresses that can be used this way there is always a “master” interface which keeps 8123 (to keep everything up until now working) and optionally one can add a port/ip with any port/service one likes.

I know it sounds easy but might be hard to make. Although I would love it an definitely use it that way.

1 Like

That only applies to the host network, not how Home Assistant is running.

A traditional approach for an app server is to use a basic front-end, such as Apache, nginx, etc., on port 80 and do a reverse proxy to your app server on the high-numbered ports. Typically, when you attach a process to 80 or 443, you want it to be pretty bullet-proof, and focused on managing HTTP, SSL, etc.

2 Likes

I mean 80 would be the first port on the list to scan…

1 Like

It is likely due to processes using ports below 1024 requiring root privileges on linux based systems. And running with root privileges presents a lot of security concerns. So it is easier to run on a non-standard port, usually 8080 or 8443 depending on protocol, but that is just a rule of thumb.

6 Likes

I’m just gonna throw this out there: if you can’t handle adding :8123 onto a url/ip address you have no business messing with HA. HA isn’t a Samsung Smarthings or Wink or . I’d put my tech acumen in the 90%+ range and it was, at times, maddening for me. I can tell you it isn’t something I’d recommend for any of my family and they aren’t luddites by any means. I set my parents up with a Smarthings hub because it is much more basic and intuitive and frankly they won’t need or do any of the advanced automations we can do with HA.

5 Likes