Files
truecharts/charts/stable/cloudflared/docs/installation_notes.md
T
Kjeld Schouten 0cd63e8dc5 chore(docs/ci): ensure docs and ci reflect new train names (#19211)
**Description**
<!--
Please include a summary of the change and which issue is fixed. Please
also include relevant motivation and context. List any dependencies that
are required for this change.
-->
⚒️ Fixes  # <!--(issue)-->

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [ ] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] 🔃 Refactor of current code

**🧪 How Has This Been Tested?**
<!--
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration
-->

**📃 Notes:**
<!-- Please enter any other relevant information here -->

**✔️ Checklist:**

- [ ] ⚖️ My code follows the style guidelines of this project
- [ ] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made corresponding changes to the documentation
- [ ] ⚠️ My changes generate no new warnings
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning
- [ ] I made sure the title starts with `feat(chart-name):`,
`fix(chart-name):` or `chore(chart-name):`

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._
2024-03-16 11:47:30 +01:00

3.7 KiB
Raw Blame History

title
title
Installation Notes

:::danger Cloudflared Tunnels for Plex, Jellyfin, Emby and other video heavy/streaming apps/sites

Using Cloudflare Tunnels with video streaming or sharing sites goes against the Cloudflare ToS, see full terms on the Cloudflare Website

Content Delivery Network (Free, Pro, or Business) (Current on 2024-03-14) Cloudflares content delivery network (the “CDN”) Service can be used to cache and serve web pages and websites. Unless you are an premium customer, Cloudflare offers specific Paid Services (e.g., the Developer Platform, Images, and Stream) that you must use in order to serve video and other large files via the CDN. Cloudflare reserves the right to disable or limit your access to or use of the CDN, or to limit your End Users access to certain of your resources through the CDN, if you use or are suspected of using the CDN without such Paid Services to serve video or a disproportionate percentage of pictures, audio files, or other large files. We will use reasonable efforts to provide you with notice of such action.

:::

Cloudflared Tunnel Creation

  • Go to cloudflare team dash and create a tunnel or migrate a current tunnel (this action is not reversible) by going to access and then tunnels tab.

cf-tunnel-access-tunnel.png

  • Create a tunnel like so (or migrate a current one)

cf-tunnel-tunnel-create.png

  • Copy JUST the token from tunnel's overview Install and run a connector section.

cf-tunnel-token.png

  • Set the token with your tunnel's token. the tunnel ID will NOT work.
  • Now you can manage the tunnel via cloudflare dash by setting a private network or create ingress rules for your services and domain, explained in Setting up individial apps

cf-tunnel-hostname

:::notes

  • You MAY need to modify cloudflared Zero Trust various settings in order for this work out-of-the-box which is beyond the scope of this guide.

  • You can use this as a reverse proxy directly or use it in conjunction with traefik if you are behind a CGNAT, do not have a static IP, or can not port forward 443 (SSL).

:::

Setting up individual apps

Using traefik

If you've set up your apps with traefik, you need to set up two public hostnames

  • Set subdomain to a sub domain (can be left blank to use the root domain)
  • Set domain to your domain
  • Set type to HTTPS
  • Set URL to your traefik URL, usually traefik-tcp.ix-traefik.svc.cluster.local:443 (make sure the port is the same as the port you specified in traefik config)
  • Under Additional app settings > TLS, set Origin Server Name to your domain (This needs to match what you have set for the sub and root domain; ex someapp.somedomain.com).

Then you need to do the same to set up the subdomain for each app you want to expose, using the same subdomain you specified in the app's ingress settings as follows:

cloudflare-setup

:::danger No TLS Verify

Please refrain from enabling the "No TLS Verify" option, as doing so will disable TLS verification, thereby allowing any certificate from the origin to be accepted. This option removes certificate security validation, rendering the certificates meaningless for security.

:::

Without traefik

If you've not set up traefik and ingress, and exposing the ports using the normal loadbalancer, you only need to set up each app individually, and set URL to <TrueNAS Local IP>:<PORT of app> or cluster app url for each app.