free up port 80
fredericrous opened this issue · 5 comments
I deactivated webserver (after changing it to port 81 just in case it would do something)
I changed admin panel ports to something else
I still have Qthttpd service running and bind to port 80.
I can stop the service
/etc/init.d/Qthttpd.sh stop
but after a reboot, the service is up again. I was wondering if you gkoerk or anyone else visiting this repo had the same issue
PS: Thank you for sharing setup and cookbook @gkoerk . Setting up a homelab with docker, and on QNAP, is a long journey. I used to bypass the port 80 issue by giving traefik container a static ip on a custom bridge network...but this is not a viable solution: I then have to maintain static ip for all containers managed by traefik. This is not scalable (ok I don't care about scalability atm). The containers can't be updated by ouroboros because it spawns a second container with the same static ip and this fails. That's why I would like to take the docker swarm road like you did. But now I need to free up that port 80
Hi fredericrous,
try turning on the Webserver again and leave it with port 81. Check again if it’s still listening on port 80. I think I remember, during my setup, when I turned it off that port 80 was blocked.
Best of luck
This is actually working @SirAdam2k I can't believe this 🤩
I also wrote a support ticket to QNAP support. Maybe they will fix this issue for good
I got an answer from QNAP, I think they are able to reproduce the issue but im not sure I understand the reply. I tried to ask for more information and if someone more technical could have a look. Here is there message
We changed this issue to a Feature Request so our product managers can study possibility to implement it in future release.
Because many people only input IP when connecting, if the Web Server is closed, these users will not be able to connect to the NAS.
Please note we do not provide the status or timetable for new features.
@fredericrous Yeah - they don’t understand the problem. This is actually a major bug you’ve discovered and several of us have but failed to document perhaps. I’d use something simple like this:
Summary
Bug: Cannot use port 80 unless Web Server is ENABLED but set to different port / Cannot truly disable the Web Server.
Description:
I run a Docker container as a reverse proxy which must bind to ports 80 and 443 and be port forwarded from the router. The problem is, I am unable to actually disable Qthttpd. It works only if I leave the Web Server feature enabled, but set to a different port. This raises two questions:
- Is Web Server required to be running? If so, this is at least a documentation bug to clarify as the UI is not clear. If it is needed to be running, the UI should only allow changing the port.
- If it’s not required and can be disabled (limiting security vectors), why does it not release port 80 for another app/Docker container to bind to?
- Obviously if I’m running my own web server(s), I don’t want extra unnecessary resource consumption for a feature I do not use.
That's point 3 that concernes me ^^. Taking a look at the script this service is not used only by the WebServer but also by at least one other applications: Qphoto. However I do not have Qphoto installed.