Nginx Proxy Manager Tutorial - Easy SSL Certificates

Поділитися
Вставка
  • Опубліковано 23 жов 2024

КОМЕНТАРІ • 71

  • @YofuMedia
    @YofuMedia 5 місяців тому +2

    Awesome !! I will do this right away!!! thanks for sharing...

  • @ostadomid3355
    @ostadomid3355 7 днів тому +1

    Superb.

  • @CMfly
    @CMfly 4 місяці тому +1

    Great video this is exactly what I needed to get unstuck! Could you also have used cloudflared tunnels instead of opening the port in your firewall? Then you could throw access rules in front of it for added security.

    • @distrodomain
      @distrodomain  4 місяці тому +1

      Yes exactly that would make the setup even more secure! thank you for watching :)

  • @jayjarrett732
    @jayjarrett732 11 днів тому +2

    The issue I had with doing this is that jellyfin/plex will want to transcode the movie because it thinks it’s coming from outside the network. And if you have a slow upload speed, you are limited to that.

    • @distrodomain
      @distrodomain  10 днів тому

      Yes for local access I still use just the ip of my server instead of the domain

  •  3 місяці тому +1

    Thanks for tutorial, in case if we also use pihole as DNS we can add a or cname record right into pihole dns settings right and use that one?

    • @distrodomain
      @distrodomain  3 місяці тому

      Yes exactly, you setup a canme in piehole that all your local devices will resolve to the local ip, thank you for watching!

  • @Occel0t575
    @Occel0t575 Місяць тому +1

    Hi! Thanks a lot for the tutorial :) I followed all the steps, but I'm encountering a 'Connection timed out (code 552)' error and I'm not sure how to resolve it :-(. Do you have any idea what might be causing this?

    • @distrodomain
      @distrodomain  Місяць тому

      what type of service are you putting behind the proxy is it a regular web server?, thank you for watching!

  • @RealAct
    @RealAct 2 місяці тому +1

    Great video. Can you create a tutorial on how to update Ngnix Proxy Manager to the latest version? Thank you.

    • @distrodomain
      @distrodomain  2 місяці тому +1

      To update you only need to change the tag in the docker compose with the new version and then do a docker compose down, then docker compose up -d, and it will pull the new version, you can get the version tags directly from the npm github, thank you for watching!

    • @RealAct
      @RealAct 2 місяці тому

      @@distrodomain thanks for your reply. As a matter of fact, I was able to update it using Portainer after posting my comment above. However, I still think it would be a great tutorial to have and one that would bring you more views, as I'm sure many people would find it useful. I wasn't able to find much info when I was trying to do this. Even your comment above is not very clear to me, lol, so an actual video guide would be awesome. BTW Awesome channel. Liked and subscribed.

  • @KrispKiwi
    @KrispKiwi 3 місяці тому +1

    How does this work if you're using your domain for home assistant public access via the cloudflared add on? Would I need a second domain?

    • @distrodomain
      @distrodomain  3 місяці тому

      You can create a subdomain like home.yourdomain.com and generate a certificate for it, and point it to your puclic ip, thank you for watching!

  • @jloo001
    @jloo001 2 місяці тому +1

    Great video! I've followed all the steps to setup my local home assistant, however I'm getting a 400 error. I can ping successfully my npm but the forwarding part is not working. Any tips?

    • @distrodomain
      @distrodomain  2 місяці тому +1

      try http on the forwarding rule, what ports and protocol is the home assistant container using, thank you for watching

    • @jloo001
      @jloo001 2 місяці тому

      @@distrodomain thanks for replying to my comment. I was able to figure it out at the end. I needed to add the npm as part of HA config as a trusted proxy, after doing that, it started working.

    • @distrodomain
      @distrodomain  Місяць тому

      Awesome! I'm glad it works now

  • @MikeDeVincentis
    @MikeDeVincentis 2 місяці тому +1

    Why use the challenge dns with Cloudflare instead of the normal letsencrypt option for SSL? Is that because you're proxying the dns on Cloudflare?

    • @distrodomain
      @distrodomain  2 місяці тому

      It's just a different way, and it's more secure too. You don't need to keep port 80 open in your firewall. Some ISPs don't allow you to open port 80. Thank you for watching!

    • @MikeDeVincentis
      @MikeDeVincentis 2 місяці тому

      @@distrodomain Does that mean all traffic gets tunneled through their connection, or is that something different? I run a Jellyfin server from home and didn't think I could send all that traffic through their connection.

    • @distrodomain
      @distrodomain  2 місяці тому

      @@MikeDeVincentis Everything gets proxied through them yes, at home I have a dns sever and a dns record that points to my local server to avoid pulling/pushing to cloudflare for home use, on the go and outside of my local netwok it will pull from cloudflare, it even caches some pictures and other things for faster load.

    • @MikeDeVincentis
      @MikeDeVincentis 2 місяці тому

      @@distrodomain Gotcha. I do the same thing but without the proxy from Cloudflare. I share my Jellyfin with my family and it's external using NPM because my understanding was proxying that content was not allowed with Cloudflare. It's a lot of data.

  • @salvadorfajardo234
    @salvadorfajardo234 4 місяці тому +1

    so, you also need a PUBLIC STATIC ip? it cost money to have one. Can we use noip?

    • @distrodomain
      @distrodomain  3 місяці тому

      you can use your current public ip, if it changes a lot then you can use a setup with something like dynamic dns, or ducky dns, thank you for watching!

  • @heftigcool
    @heftigcool Місяць тому +1

    Very nice tut!! Thank you - unfortunately I getting "502 Bad Gateway openresty" errors with google chrome. Does anyone have an idea to solve that problem?

    • @distrodomain
      @distrodomain  Місяць тому +1

      what service on the back end are you trying to secure with https?, thank you for watching!

    • @heftigcool
      @heftigcool Місяць тому

      Hi@@distrodomain
      thanks for replying.
      My setup:
      - udmp as router
      - Raspberry Pi with docker
      - Pihole+Unbound for DNS (as container)
      - NPM (as container)
      Both containers are on the same bridge network and can ping each other.
      My FQDN is hosted on cloudflare and the certificates are not a problem - I get them via DNS challange.

    • @distrodomain
      @distrodomain  Місяць тому +1

      maybe the service you trying to secure is using https as scheme, try changing from http to https, in the proxy host

    • @heftigcool
      @heftigcool Місяць тому

      @@distrodomain Good idea, but it was already on https for my portainer site. But I think I have a solution for now. I took out unbound as my DNS server and chose cloudflare instead. And voila, I couldn't reach my services.... But then I replace the forward host name (name of the Docker container) with the IP of the host and poof, it works. I don't know why the container name technique doesn't work for me, but I prefer IPs anyway.
      Now I need to clarify why my pihole/unbound config isn't working properly.
      Thanks again - like your work pretty much :)

  • @AbyssalSoda
    @AbyssalSoda 4 місяці тому +3

    This was so easy, if only it actually worked

    • @distrodomain
      @distrodomain  4 місяці тому

      What part is not working for you, I might be able to help, thank you for watching

    • @AbyssalSoda
      @AbyssalSoda 4 місяці тому

      @@distrodomain I actually have no clue what's truly wrong as I've tried so many things over the past couple days. I've followed several tutorials and utilized ChatGPT, but still can't figure it out.
      Essentially I was SSH'ing into the Docker on my NAS to set up a CloudDB data base and ran into issues; to determine if the database was the issue I tried it with Jellyfin and had the same experience. I confirmed my network can find all the associated dockers, I can also ping the Cloudflare server URL, local ips and their open ports, and I've ensured that the firewall on my PC, NAS, and router aren't blocking anything. Both Nginx and Cloudflare were configured as shown in the video. However, the associated domain URL still returns a "failed to connect to host" error.

    • @distrodomain
      @distrodomain  4 місяці тому

      @@AbyssalSoda are you running docker on bare linux or on something like proxmox, or unraid, are you able to generate a certificate, "failed to connect to host" you get that when you try to navigate to the url?, your firewall rule should be set on your nat connection and forward to the host local ip, from there docker takes over, what do you use for firewall.

    • @AbyssalSoda
      @AbyssalSoda 2 місяці тому

      @@distrodomain I'm running on UGOS which is a fork of debian used by Ugreen for their NAS lineup. The only difference I could find was the fact I need to use Sudo when pinging jelly.domainname - which could hint at a permissions issue, but I already cleared everything as admin.

    • @AbyssalSoda
      @AbyssalSoda 2 місяці тому

      @@distrodomain Not sure if you're getting my replies, but to recap again. I am using UGOS a fork of Debian for Ugreen NAS devices, and can generate a certificate just fine. I receive the failed to connect to host when clicking on the url. Firewall/ISP is Verizon.

  • @MIKA-rz9fq
    @MIKA-rz9fq 5 місяців тому +1

    Another helpful video, thanks man!!

    • @distrodomain
      @distrodomain  5 місяців тому +1

      No problem, thank you for watching!

  • @bcanylmz
    @bcanylmz Місяць тому +1

    The process for the proxy sub domain continues to give Internal Error error. However, I was able to get it on another subdomain, I just can't get it for the proxy.

    • @distrodomain
      @distrodomain  Місяць тому

      to secure the proxy itself?, thank you for watching! :)

  • @hprompt166
    @hprompt166 Місяць тому +1

    won't change to secure, maybe its my docker name for nginx which is nginxproxymanager.
    any ideas?
    thx for the video

    • @distrodomain
      @distrodomain  Місяць тому

      which service won't change, is the serivce you try to secure a regular web server on the backend, sometimes you need to clear chrome cache and relad for it to pick up the cert, thank you for watching!

    • @hprompt166
      @hprompt166 Місяць тому

      @@distrodomain nginx proxy manager web page won't show secure, after following your tutorial on either firefox or chrome

    • @distrodomain
      @distrodomain  Місяць тому

      are you using http as scheme and port 81 to redirect, what error do you get on chrome if you look at the certificate

  • @kristof9497
    @kristof9497 5 місяців тому +2

    thank you

  • @EricMarier-y3x
    @EricMarier-y3x 2 місяці тому +1

    Thanks!

    • @distrodomain
      @distrodomain  2 місяці тому

      I'm glad it was helpful! thank you for watching!

  • @vivahernando1
    @vivahernando1 2 місяці тому +1

    Is there a way to secure an exposed streamed tcp port?

    • @distrodomain
      @distrodomain  2 місяці тому

      I've looked into this but haven't found a concrete solution, you can use custom https ports and still use a cert, tho you will need to specify it on your browser like yoursite.com:8080, thank you for watching!

  • @sutthipongapaisuwan360
    @sutthipongapaisuwan360 4 місяці тому +1

    what about other network like other device that same subnet with host ? how to forward to that.

    • @distrodomain
      @distrodomain  4 місяці тому

      You can use the ip of that device instead and It will forward the requests, to that ip, Thank You for watching!

  • @dundydunker
    @dundydunker 5 місяців тому +2

    Great videos as usual

  • @riorgb4083
    @riorgb4083 Місяць тому +1

    can we insert API Token only one time ?

    • @distrodomain
      @distrodomain  Місяць тому

      At the moment, you need to input once per proxy host, the certs will renew after that.

  • @mediatechtube
    @mediatechtube 2 місяці тому +1

    ice video but why do u need nginx proxy manager if your using cloudflare

    • @jloo001
      @jloo001 2 місяці тому +1

      Its because nginx proxy manager is the only app that has been opened in the firewall, thus cloudflare can only reach nginx.

    • @distrodomain
      @distrodomain  2 місяці тому +1

      Good point, npm will encrypt cloudflare --> you server connections, but yes you could run all of from cloudflare, thank you for watching!

  • @ArtShpiller
    @ArtShpiller 5 місяців тому +2

    local ip on public dns... why?

    • @distrodomain
      @distrodomain  5 місяців тому +3

      It's simple solution for home use if you don't want to setup a local dns server, but if you are advanced you can setup something like Pi-Hole at home to resolve those ip, or alteratively you can edit your hosts file but it will only work on that device, thank you for watching! :)

    • @heftigcool
      @heftigcool Місяць тому

      and for ssl reasons

  • @academyonnet
    @academyonnet 18 днів тому +1

    I could not watch your video becasue the code on your screen is not readable.

    • @distrodomain
      @distrodomain  16 днів тому

      All the commands are in the description, thanks for the feedback I'll make sure the commands are more legible on the next videos, thank you for watching!

  • @ilgio80
    @ilgio80 16 днів тому +1

    I followed your whole explanation, but it gives me an error: certbot: error: unrecognized arguments: --dns-cloudflare-credentials /etc/letsencrypt/credentials/credentials-10

    • @distrodomain
      @distrodomain  16 днів тому

      Sometimes this happens on some of the docker builds, try changing the version of npm on the docker compose, thank you for watching!