Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Selfhosted
  3. Moving from Cloudflare tunnels for media streaming, first plan didn't work out due to double NAT

Moving from Cloudflare tunnels for media streaming, first plan didn't work out due to double NAT

Scheduled Pinned Locked Moved Selfhosted
selfhosted
30 Posts 21 Posters 175 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S [email protected]

    Do not. I repeat do not expose Jellyfin to the internet. It has too many security issues to be direct accessible from the internet.

    I use Jellyfin and only access it over WireGuard. I have a mesh setup between the routers at a few family members houses.

    If you have absolutely no other way then to expose it to the internet you need to make sure that you whitelist only the approved IPs in your VPS firewall and block everything else.

    L This user is from outside of this forum
    L This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #12

    you can add authentic/authelia with keys for login and it should be fine

    1 Reply Last reply
    0
    • K [email protected]

      I don't really agree with you here. If you take the time to set things up properly. And prepaid for IF something would happen. Your fine. Been running a exposed jellyfin server for years now. Never hat a security issue. And even if I would not much harm could be done anyway due to how it is setup.

      S This user is from outside of this forum
      S This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #13

      https://github.com/jellyfin/jellyfin/issues/5415

      A 1 Reply Last reply
      0
      • max_p@lemmy.max-p.meM [email protected]

        I keep hearing claims that it's not secure enough to be exposed on the Internet, but I can't seem to find anything about unauthenticated vulnerabilities. It's got a fair amount of CVEs but they all seem to affect when you're an already authenticated user, mainly to XSS an admin as a regular user or the likes.

        It's written in C#, and publicly all you can do is pretty much attempt to log in, this feels like it should be pretty sane compared to some other PHP crap I run.

        Do you have any examples of previous exploits or anything else to be concerned about?

        S This user is from outside of this forum
        S This user is from outside of this forum
        [email protected]
        wrote on last edited by
        #14

        https://github.com/jellyfin/jellyfin/issues/5415

        strit@lemmy.linuxuserspace.showS 1 Reply Last reply
        0
        • S [email protected]

          https://github.com/jellyfin/jellyfin/issues/5415

          strit@lemmy.linuxuserspace.showS This user is from outside of this forum
          strit@lemmy.linuxuserspace.showS This user is from outside of this forum
          [email protected]
          wrote on last edited by
          #15

          Most of the relevant issues they link to has been closed and/or dealt with.

          C 1 Reply Last reply
          0
          • dan@upvote.auD [email protected]

            There's no reason your media server needs to be directly exposed to the public internet. Use Tailscale. Get everyone that uses it to sign up for a Tailscale account, and add them all to your Tailnet.

            Tailscale will perform better than any tunnel because it's a direct connection between the two peers - it's not relaying through an intermediary server like a Cloudflare tunnel would.

            A This user is from outside of this forum
            A This user is from outside of this forum
            [email protected]
            wrote on last edited by
            #16

            Really no reason. Hmm how do I get a Roku to watch? Or get other people to watch stuff on it.

            1 Reply Last reply
            0
            • S [email protected]

              https://github.com/jellyfin/jellyfin/issues/5415

              A This user is from outside of this forum
              A This user is from outside of this forum
              [email protected]
              wrote on last edited by
              #17

              Have you even looked at what you are posting? Most of those are fixed. And most are who cares.

              1 Reply Last reply
              0
              • O [email protected]

                Wasn't it brought up last week ina thread about Plex charging that it is NOT against cloudflare TOS anymore?

                darkassassin07@lemmy.caD This user is from outside of this forum
                darkassassin07@lemmy.caD This user is from outside of this forum
                [email protected]
                wrote on last edited by
                #18

                https://blog.cloudflare.com/updated-tos/

                1 Reply Last reply
                0
                • C [email protected]

                  I have several services on my home server, most of which I access using Tailscale, and it works great. I had a couple services on Cloudflare tunnels in order to access them from devices that I can't put Tailscale on.

                  Plex is going to start charging for remote access. So I figured now would be the time to migrate to Jellyfin. But using Jellyfin on Cloudflare tunnels is against their TOS. I have a Roku TV at a remote location that I use to watch Plex. I won't be able to do that anymore. And I can't put Tailscale on it to serve Jellyfin that way.

                  I was going to set up Nginx Proxy Manager to use my domain name for Jellyfin so I didn't have to use Cloudflare tunnels. But in setting that up I found out that my ISP is double NATting me, and I haven't been able to find a way around it.

                  So I'm left with two options: 1) buy Plex Pass so I can continue to stream remotely; or 2) get a VPS, run Tailscale and NPM on it and switch to Jellyfin.

                  I'm looking for a sanity check to make sure the VPS thing would work the way I think it would. If it's running Tailscale then the double NAT would be a non-issue, correct? Is there another option that I haven't thought of yet? Which of the two options would you choose?

                  C This user is from outside of this forum
                  C This user is from outside of this forum
                  [email protected]
                  wrote on last edited by
                  #19

                  I was just in you exact Situation with my jellyfin homeserver. I was using Tailscale for a while, but ran into a problem: my new server is really bad at encoding so I can only use directplay, which uses more bandwith than the tailscale relay servers can give.

                  The problem with tailscale is, I basically only ever use the relay servers because my home is cgnat and most of the time when I want to stream outside of home I am on mobile data with cgnat or at college (restrictive firewall).

                  My solution which I implemented last weekend was to buy the cheapest vps I could get from my trusted provider and harden it and install nginx proxy manager and tailscale. With that I can make a direct (no relay server) connection to my homeserver and proxy jellyfin to a piblic domain.

                  I am still figuring out how to secure jellyfin, but I have also seen some comments that jellyfin is secure by default and therefore ok to have exposed.

                  1 Reply Last reply
                  0
                  • dan@upvote.auD [email protected]

                    There's no reason your media server needs to be directly exposed to the public internet. Use Tailscale. Get everyone that uses it to sign up for a Tailscale account, and add them all to your Tailnet.

                    Tailscale will perform better than any tunnel because it's a direct connection between the two peers - it's not relaying through an intermediary server like a Cloudflare tunnel would.

                    C This user is from outside of this forum
                    C This user is from outside of this forum
                    [email protected]
                    wrote on last edited by
                    #20

                    I love Tailscale as well and it works flawlessly for everything I've ever used it for. However, I can't install Tailscale on the Roku TV that sits remotely from my server. That's the whole reason I'm looking for a different way.

                    H 1 Reply Last reply
                    0
                    • dan@upvote.auD [email protected]

                      There's no reason your media server needs to be directly exposed to the public internet. Use Tailscale. Get everyone that uses it to sign up for a Tailscale account, and add them all to your Tailnet.

                      Tailscale will perform better than any tunnel because it's a direct connection between the two peers - it's not relaying through an intermediary server like a Cloudflare tunnel would.

                      O This user is from outside of this forum
                      O This user is from outside of this forum
                      [email protected]
                      wrote on last edited by
                      #21

                      Can tail scale be setup on tvs and game consoles and such? Or maybe on routers?

                      1 Reply Last reply
                      0
                      • C [email protected]

                        Thanks for mentioning that. I'll have to look into it. If I could install Tailscale on a RokuTV I'd absolutely run it that way.

                        ladfrombrad@lemdro.idL This user is from outside of this forum
                        ladfrombrad@lemdro.idL This user is from outside of this forum
                        [email protected]
                        wrote on last edited by
                        #22

                        I haven't seen no one mention it yet but you could simply buy a Rasp Pi and use it as a subnet router for your Tailnet.

                        It's how I set up a family members Jellyfin/NAS/etc which I can access all their devices by local IP address, and you could do for your Roku too?

                        1 Reply Last reply
                        0
                        • C [email protected]

                          I have several services on my home server, most of which I access using Tailscale, and it works great. I had a couple services on Cloudflare tunnels in order to access them from devices that I can't put Tailscale on.

                          Plex is going to start charging for remote access. So I figured now would be the time to migrate to Jellyfin. But using Jellyfin on Cloudflare tunnels is against their TOS. I have a Roku TV at a remote location that I use to watch Plex. I won't be able to do that anymore. And I can't put Tailscale on it to serve Jellyfin that way.

                          I was going to set up Nginx Proxy Manager to use my domain name for Jellyfin so I didn't have to use Cloudflare tunnels. But in setting that up I found out that my ISP is double NATting me, and I haven't been able to find a way around it.

                          So I'm left with two options: 1) buy Plex Pass so I can continue to stream remotely; or 2) get a VPS, run Tailscale and NPM on it and switch to Jellyfin.

                          I'm looking for a sanity check to make sure the VPS thing would work the way I think it would. If it's running Tailscale then the double NAT would be a non-issue, correct? Is there another option that I haven't thought of yet? Which of the two options would you choose?

                          N This user is from outside of this forum
                          N This user is from outside of this forum
                          [email protected]
                          wrote on last edited by
                          #23

                          Maybe something worth a shot is a direct Wireguard server/client connection. While I don't know how it works with double NAT (wireguard client with double nat) making your server act as a direct tunnel would solve all your issues.

                          • Access your services from everywhere without middleman.

                          IIR, tailscale uses wireguard under the hood and you're already hosting things on your home server, so maybe this could be worth a try 🙂 !

                          1 Reply Last reply
                          0
                          • C [email protected]

                            I have several services on my home server, most of which I access using Tailscale, and it works great. I had a couple services on Cloudflare tunnels in order to access them from devices that I can't put Tailscale on.

                            Plex is going to start charging for remote access. So I figured now would be the time to migrate to Jellyfin. But using Jellyfin on Cloudflare tunnels is against their TOS. I have a Roku TV at a remote location that I use to watch Plex. I won't be able to do that anymore. And I can't put Tailscale on it to serve Jellyfin that way.

                            I was going to set up Nginx Proxy Manager to use my domain name for Jellyfin so I didn't have to use Cloudflare tunnels. But in setting that up I found out that my ISP is double NATting me, and I haven't been able to find a way around it.

                            So I'm left with two options: 1) buy Plex Pass so I can continue to stream remotely; or 2) get a VPS, run Tailscale and NPM on it and switch to Jellyfin.

                            I'm looking for a sanity check to make sure the VPS thing would work the way I think it would. If it's running Tailscale then the double NAT would be a non-issue, correct? Is there another option that I haven't thought of yet? Which of the two options would you choose?

                            grimer@lemmy.worldG This user is from outside of this forum
                            grimer@lemmy.worldG This user is from outside of this forum
                            [email protected]
                            wrote on last edited by
                            #24

                            Maybe using a tailscale funnel would be a good option for you? I use one for a webdav setup to get around CF's 100mb limit on uploads when clients won't chunk their data properly. It was fairly easy to set up and works perfectly.

                            1 Reply Last reply
                            0
                            • strit@lemmy.linuxuserspace.showS [email protected]

                              Most of the relevant issues they link to has been closed and/or dealt with.

                              C This user is from outside of this forum
                              C This user is from outside of this forum
                              [email protected]
                              wrote on last edited by
                              #25

                              You don’t have to take my word on this, but when you have so many vulnerabilities, the foundation and knowledge about security practices by the developers is missing some key ingredients.

                              I use Jellyfin. I like jellyfin. I would like people to use jellyfin, but do it responsibly.

                              Citing backwards compatibility is not an acceptable answer either. If individual endpoints and/or protocols (web sockets) are being addressed as separate issues, then there is no overall filter for the most basic thing as checking if the user is authenticated, you know a potential attacker will look for more.

                              Will they target jellyfin instead of your average government website with a low budget and similar issues? Unlikely, but possible if the level of effort is low and can potentially create a large botnet, maybe?

                              You handle these with overall filters (or whatever they are called on c#) and white lists if something truly needs not to have it instead of reacting when someone reports it.

                              The simple fact that some of the code was sending api keys as GET parameters (which get logged cross every access log in the middleware on its way to the target server) and it didn’t raise any flags seems sufficient enough to suggest DO NOT expose jellyfin directly to the internet.

                              max_p@lemmy.max-p.meM 1 Reply Last reply
                              0
                              • C [email protected]

                                I love Tailscale as well and it works flawlessly for everything I've ever used it for. However, I can't install Tailscale on the Roku TV that sits remotely from my server. That's the whole reason I'm looking for a different way.

                                H This user is from outside of this forum
                                H This user is from outside of this forum
                                [email protected]
                                wrote on last edited by
                                #26

                                Have you read into subnet routers? Tailscale subnet routers

                                C 1 Reply Last reply
                                0
                                • H [email protected]

                                  Have you read into subnet routers? Tailscale subnet routers

                                  C This user is from outside of this forum
                                  C This user is from outside of this forum
                                  [email protected]
                                  wrote on last edited by
                                  #27

                                  That would be fine for one particular site I'd need to connect, but not on another one.

                                  1 Reply Last reply
                                  0
                                  • C [email protected]

                                    You don’t have to take my word on this, but when you have so many vulnerabilities, the foundation and knowledge about security practices by the developers is missing some key ingredients.

                                    I use Jellyfin. I like jellyfin. I would like people to use jellyfin, but do it responsibly.

                                    Citing backwards compatibility is not an acceptable answer either. If individual endpoints and/or protocols (web sockets) are being addressed as separate issues, then there is no overall filter for the most basic thing as checking if the user is authenticated, you know a potential attacker will look for more.

                                    Will they target jellyfin instead of your average government website with a low budget and similar issues? Unlikely, but possible if the level of effort is low and can potentially create a large botnet, maybe?

                                    You handle these with overall filters (or whatever they are called on c#) and white lists if something truly needs not to have it instead of reacting when someone reports it.

                                    The simple fact that some of the code was sending api keys as GET parameters (which get logged cross every access log in the middleware on its way to the target server) and it didn’t raise any flags seems sufficient enough to suggest DO NOT expose jellyfin directly to the internet.

                                    max_p@lemmy.max-p.meM This user is from outside of this forum
                                    max_p@lemmy.max-p.meM This user is from outside of this forum
                                    [email protected]
                                    wrote on last edited by
                                    #28

                                    Yeah, that's enough to not have it exposed directly. I understand why they did it that way but very good to know, thanks!

                                    1 Reply Last reply
                                    0
                                    • C [email protected]

                                      I have several services on my home server, most of which I access using Tailscale, and it works great. I had a couple services on Cloudflare tunnels in order to access them from devices that I can't put Tailscale on.

                                      Plex is going to start charging for remote access. So I figured now would be the time to migrate to Jellyfin. But using Jellyfin on Cloudflare tunnels is against their TOS. I have a Roku TV at a remote location that I use to watch Plex. I won't be able to do that anymore. And I can't put Tailscale on it to serve Jellyfin that way.

                                      I was going to set up Nginx Proxy Manager to use my domain name for Jellyfin so I didn't have to use Cloudflare tunnels. But in setting that up I found out that my ISP is double NATting me, and I haven't been able to find a way around it.

                                      So I'm left with two options: 1) buy Plex Pass so I can continue to stream remotely; or 2) get a VPS, run Tailscale and NPM on it and switch to Jellyfin.

                                      I'm looking for a sanity check to make sure the VPS thing would work the way I think it would. If it's running Tailscale then the double NAT would be a non-issue, correct? Is there another option that I haven't thought of yet? Which of the two options would you choose?

                                      ? Offline
                                      ? Offline
                                      Guest
                                      wrote on last edited by
                                      #29

                                      My understanding is that Jellyfin should be fine as long as you don't serve it over the CDN (ie, disable caching for it)

                                      1 Reply Last reply
                                      0
                                      • S [email protected]

                                        Do not. I repeat do not expose Jellyfin to the internet. It has too many security issues to be direct accessible from the internet.

                                        I use Jellyfin and only access it over WireGuard. I have a mesh setup between the routers at a few family members houses.

                                        If you have absolutely no other way then to expose it to the internet you need to make sure that you whitelist only the approved IPs in your VPS firewall and block everything else.

                                        L This user is from outside of this forum
                                        L This user is from outside of this forum
                                        [email protected]
                                        wrote on last edited by
                                        #30

                                        bullcrap,show me those security issues

                                        1 Reply Last reply
                                        0
                                        • System shared this topic on
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        • Login

                                        • Login or register to search.
                                        • First post
                                          Last post
                                        0
                                        • Categories
                                        • Recent
                                        • Tags
                                        • Popular
                                        • World
                                        • Users
                                        • Groups