-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
port 80 in use for another 24/7 running adapter #17
Comments
As for node.js has simple proxies, but of course it will be the problem with sockets. |
I have made some more detailed notes on HTTP-01 usage: https://github.com/iobroker-community-adapters/ioBroker.acme#http-01 I would suggest using DNS-01 challenge, or yes, trying a named HTTP proxy of your choice. |
Sounds all very effortful compared to the past. |
In what way? The port configuration required for HTTP-01 challenges is identical. Adapters can now actually share certificates rather than having to configure each adapter separately so that is actually easier. DNS-01 challenges... well... depends if you find getting an API from your host easier than port forwarding, but that could actually be easier too.
If you want a proper (not self-signed) cert on web.0 then yes, you should use ACME.
So use self-signed of regular HTTP.
So every 3 months you do some manual port changes to let LE renew your cert? How is that easy? FWIW, you can still do this with ACME. Set the port stuff up, run ACME, put the port stuff back how it was. Sounds to me that we could help you by having ACME execute a script to setup/teardown port forwarding when needed. You would have to write your own script that it would execute though. And if the script fails then chance your external service stops working. Not sure this is a good idea TBH. What domain is your host you require a certificate on? If it's your own domain then I would strongly suggest using DNS-01 challenge. |
I have noted in the ACME readme how you can achieve the same result (scenario 3/solution iv): https://github.com/iobroker-community-adapters/ioBroker.acme#http-01
No. The renewal is done with ACME 7 days before a certificate expires. Moreover, even if you renew manually using the steps I describe in the readme, you do not need to restart your web instance as new/renewed certificates are picked up automatically and instantly by any adapter that needs a certificate. Part of why this new process is so much better.
Yes, old LE method needed port 80 for order & renewal. As does ACME. No difference there as they both use HTTP-01 challenge. In order to use DNS-01 challenge you need to demonstrate control of the domain. Unless you actually own a domain (and I'm assuming you do not have your own domain or otherwise you would not be using myfritz.net) you cannot do this. I can still only guess at your use case, but it sounds to me like you have 1 server running on port 80 of your domain xxx.myfritz.net then a second server running on port 443 of xxx.myfritz.net for which you need a certificate. I would suggest:
If you do this then you can have both your current service on port 80 and IoB secure web service constantly running and the secure service will be able to obtain/renew certificates automatically without the current manual intervention you are performing. Much better all round!
Do not worry, as described in the readme, the same result as you have now can be achieved. However, I would strongly recommend a better fully automated setup. |
Many thanks for your in-depth answers. Beside the currently used xyz.myfritz.net domains, I own an own domain with DNS service. So, it should be possible to use such as CNAME to be able to use the best practice methode with DNS challenge and no need to edit/change every 3 months port forwarding rules in router. |
Yes, DNS-01 challenge should work if you own a domain and it is hosted with one of the supported providers. Is your ISP in the supported list here: https://www.npmjs.com/package/acme |
My own domain, usually used only for email but provider offers DNS/CNAME config, is from German provider/hoster goneo.de. |
No, goneo.de is not on the supported list. However, you could move to use Cloudflare free DNS which is supported. Or use the name based proxy solution. Either way, seems you are happy with the answer so closing this issue. |
How do I have to setup acme if port 80 is only open in router (port forwarding) for the moment I will renew the letsencrypt cert every 3 months. The rest of the time port 80 has a forwarding rule for another device at home (nothing in iobroker context).
Furthermore the plenticore adapter has a setting to retrieve data from photovoltaic inverter (local IP:80). This seams to be another issue for acme adapter.
I can't change the port in plenticore settings because the device delivers its data only over this port.
acme Log:
The text was updated successfully, but these errors were encountered: