I’m trying to expose Nextcloud via HTTPS to the internet so I can access it from my mobile and the Windows app in a secure manner. But so far, all I got was blood sweat and tears.
I’ll ping @louneskmt on this - I’m not sure if there’s a way to do this right now since everything is routed over tor, but I personally haven’t tried it yet.
@kerumirembora I added both lines to “~/umbrel/apps/nextcloud/docker-compose.yml” file, with no luck.
Still no https on nextcloud.
That is the only thing I need to do? If the case is not, could you please explain how u got it working step by step (sorry am a noob).
Thanx!!
Could somebody write a step by step guide on how to enable HTTPS on Nextcloud please?
I tried following what this post says, but I can’t seem to get it working.
Another new user, looking for simple plain english steps.
Fresh install of Umbrel & Nextcloud, working fine.
Own domain, routed & working fine.
Only http.
Want https.
Any pointers? Looked in the rest of this forum, but unfortunately no one seems to provide a decent guide for newbies.
Thanks in advance.
I resigned looking for https problem since almost 2 years ago. At last i gave a suggestion that you can use today. It wasnt my intention to use big techs but its better than nothing in my opinion. Cheers.
( This is ancient but I guess this might be helpful for someone )
I was able to enable HTTP using Nginx Proxy Manager, this should work for Nextcloud or any other app.
This is what I did:
Got a fixed IP address from my internet provider. (This cost like 1€/month for me).
Go to my DNS provider and add A record so mydomain points to my home IP.
Access to my home router and make external port 443 point towards internal ip 192.168.0.33 (my umbrel machine), port 40443 (Nginx Proxy Manager listens to 40480 and 40433).
Login to my Umbrel and install Nginx Proxy Manager App.
Open Nginx Proxy Manager, go to SSL Certificates and add a Let’s Encrypt certificate for mydomain. I personally use a DNS challenge, that required to get API access from my DNS provider.
In Nginx Proxy Manager, add a Proxy Host. Choose your domain name mydomain, scheme: http, Forward Hostname / IP: umbrel.local, Forward Port: 8081. In SSL tab pick your certificate. (I also marked Force SSL and Block common exploits)
Test. At this point you should be able to access to https://mydomain.com and Nextcloud should tell you “Access through untrusted domain”.
Go to Umbrel advanced settings, open terminal for nextcloud app.
Simply run ./occ, it will tell you If running with ‘docker exec’ try adding the option ‘-u XXX’, where that XXX is the user id.
Close this terminal.
Again open a terminal, but this time for Umbrel OS. Then:
$ sudo -i
(type your umbrel password)
# docker ps | grep next | grep apache
(copy container id)
# docker exec -it -u XXX CONTAINER_ID /bin/bash
(Where CONTAINER_ID just comes from the command before, and user id XXX comes from step 9)
(Now you should be inside the nextcloud container with the right user)
$ ./occ config:system:set trusted_domains $(./occ config:system:get trusted_domains | wc -l) --value="mydomain"
Test, now it should work.
(Notice mydomain should be something like nextcloud.mydomain.com, but the forum doesn’t want me to post to many “links”)
Alternatively, you can use a Cloudflare Tunnel.
It seems to work fine with the advantage of not having any port open in your home router. On the other hand, I assume Cloudflare itself can see all your traffic. Also not sure about the limitations of the free Cloudflare plan.