How to configure Umbrel BTCPay Server with NGINX reverse proxy

Moog,

Thanks so much for reaching out on this, however i’m not sure that it’s going to work for me… it seems that I need to pass this command to the raspi running umbrel, but how do i access the command line without being able to ssh to it?

I tried connecting mouse and keyboard direct to the pi but it was not giving me command line access… i’m stuck on this.

Thanks,
Mark

1 Like

found the solution lol- it’s a start-up thing anyway, so just reflash the SD.

I see. That’s a conundrum because you won’t get a commandline from simply starting up your umbrel node. Smolgrrr might be right in that you need to just simply reflash the UmrelOS.

Hi!

I used your guide (https://jorijn.com/installing-nginx-reverse-proxy-with-ssl-certificate-umbrel-btcpayserver/) and I must say it was amazing and worked so very well…until… I updated to Umbrel 0.5.

Now if I go to: https://btcpay.mydomain.com/ I get the error “You cannot login over an insecure connection. Please use HTTPS or Tor.”

I went through the steps again to no avail. The only thing I did notice (that I believe different) was when I run:

sudo nginx -t

I get:

nginx: [warn] conflicting server name “btcpay.mydomain.com” on 0.0.0.0:15080, ignored
nginx: [warn] conflicting server name “btcpay.mydomain.com” on [::]:15080, ignored
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

I’m sure there may be an easy solution to this, I’m just not that experienced.

Any help would be most welcome.

Thanks!

M

1 Like

Hi @originalmguy and others,

Upgrading to v0.5 will break this setup since they introduced a new component called umbrel/app-proxy. I created an issue about this on GitHub: https://github.com/getumbrel/umbrel/issues/1428

After this has been addressed I will update the guide if necessary. If you want to be kept in the loop you can subscribe to the issue on GitHub to be notified of changes.

Jorijn

5 Likes

Thanks so much @jorijn !

I’ll keep an eye out on GitHub.

Cheers!

1 Like

thanks- will monitor for an update. got scared when i got the ‘You cannot login over an insecure connection. Please use HTTPS or Tor’ warning all of a sudden lol

1 Like

Did anyone try the last guide of BTCPay to expose on the clearnet using cloudflare?

This is the guide: https://docs.btcpayserver.org/Docker/cloudflare-tunnel/

2 Likes

Thanks so much for the awesome guide. Made complete sense even to someone scarred of the CLI

I was just wondering It’s been a couple of months I wonder if there is any update on this. I am also on v5 and have discovered that it is broken

Actually just ended up reading the Github stuff and discovered an update to 5.1 fixed my issue with another little config change.

Also the last part of the guide could be a little clearer. I.e. login via your new btcpay.maindomain.com.au domain link to create the donate button script with the right code.

Thanks again where is the donate button to donate to you to say thanks

To @jorijn first of all thank you for putting together a great document for us newbs.

To anyone who may be getting stuck at step 6, and getting an error similar to that described by @noodle above. Here is my fix. I had this same error and for the life of me could not figure out what I was doing wrong. It turns out that my port forwarding settings were incorrect. I have a TP-Link router and instead of Source/Destination Port the TP-Link uses the verbiage Internal/External. I had erroneously assumed that Source=Internal and Destination=External. In fact in my case it needed to be switched. The Internal Port is the ‘Destination’ port on the Umbrel Device where the requests will be sent (15080 and 15443 in this case). The External Port is the ‘Source’ port (in this case 80 and 443). After much trial and error, and several Umbrel OS reflashes (due to other silly mistakes caused by troubleshooting), after i corrected the Port Forwarding information I now have successfully set up my BTCPay server. I hope that this helps someone.

-Mark

1 Like

@Filou I’m not able to use any 15443, 7433 (tried with every number :slight_smile: port, any suggestion for any alternative? Thanks! :slight_smile:

In theory you should be able to use any ports you choose, provided they are not already taken. The important part is that once you have forwarding setup and working correctly, to update the guide and replace the ports numbers given with the correct ones for your setup.

@Filou Any port still in the range of 433? As I tried 2433,3433,4433,5433,6433 etc and none of them is working. Or I can choose totally any different port? Im not that expert in IT so sorry if my questions sounds silly :slight_smile:

AFAIK you can choose any port number that is not already assigned. Some routers do not allow assigned ports above a certain number, so if the ones you have tried already are not working, my suggestion would be to try lower numbers?

1 Like

Hello, I wanted to thank you for your very useful tutorial. Thanks to you, I managed to access a first application, but now I have a problem when I try to access a second application via the same method.
The server returns the following error:
“nginx: [emerg] “proxy_buffer_size” directive is duplicate in /etc/nginx/sites-enabled/pw:1 nginx: configuration file /etc/nginx/nginx.conf test failed”.

pw is the first site.

Can you help me to correct this error? Thanks a lot

You cannot login over an insecure connection. Please use HTTPS or Tor.


any idea how to solve this issue when trying to open BTC pay as doesnt work even in Tor
is there a Https version ?

1 Like

I don’t quite get the last step. It says to add an additional server block at the end of the file but the server block defined in step 5 has the same server_name property which doesn’t work. When validating the configuration it gives a warning because there are 2 conflicting server_name properties. The server_name is the same in both blocks

EDIT: Ok works without step 7. I think certbot already added the redirects even though I chose option 1: no redirect as it said in the guide

Hi, I have the same issue. Everything is working, with a few adaptations regarding the HTTP to HTTPS redirection that was not working on my side.
I updated my BTCPayServer to the last version and my SSL certificate seems right but BTCPayServer always told me that I’m running on insecure connection. If you figure out let me know :slight_smile:

This helped me a lot - no ssl connection at all until Certbot ran successfully.

corrected command for newer installs.
sudo certbot --nginx -d btcpay.domain.com.au -m myemail@domain.com.au --agree-tos --https-port 15443 --http-01-port 15080

(Umbrel on ubuntu in virtualbox on macOS)
Thanks

1 Like