From a85a567afce78c270fc8f685c168983a3891420e Mon Sep 17 00:00:00 2001 From: David Young Date: Thu, 9 Feb 2023 21:51:37 +1300 Subject: [PATCH] Add post on Mastodon CDN Signed-off-by: David Young --- .cache/plugin/optimize/images.json | 3 +- .../mastodon_cloudflare_transform_rules.png | Bin 0 -> 32549 bytes .../assets/external/so.fnky.nz/embed.js | 65 +++++++++++++++++ docs/blog/index.md | 7 +- .../pod-guid-can-cause-istio-proxy-bypass.md | 69 ++++++++++++++++++ .../run-mastodon-and-media-behind-cdn.md | 47 ++++++++++++ ...elero-in-hardened-kubernetes-with-istio.md | 1 - .../mastodon_cloudflare_transform_rules.png | Bin 0 -> 95722 bytes 8 files changed, 187 insertions(+), 5 deletions(-) create mode 100644 .cache/plugin/optimize/images/images/blog/mastodon_cloudflare_transform_rules.png create mode 100644 .cache/plugin/privacy/assets/external/so.fnky.nz/embed.js create mode 100644 docs/blog/posts/notes/pod-guid-can-cause-istio-proxy-bypass.md create mode 100644 docs/blog/posts/notes/run-mastodon-and-media-behind-cdn.md create mode 100644 docs/images/blog/mastodon_cloudflare_transform_rules.png diff --git a/.cache/plugin/optimize/images.json b/.cache/plugin/optimize/images.json index e252215..3f2ad27 100644 --- a/.cache/plugin/optimize/images.json +++ b/.cache/plugin/optimize/images.json @@ -150,5 +150,6 @@ "images/blog/multiple-renovate-prs-detail.png": "da36aab8f9c343ffba0b5ddea3982a23da3594c1", "images/blog/haproxy_backends.png": "eded975e1c08c346bad7d4b8177c267a121a503f", "images/blog/haproxy_health_checks.png": "db00b7adafb53286e7083242638155298327c0b3", - "images/blog/haproxy_stats-1.png": "3a36d2429c752b8d4612655473820c5bb2146d3f" + "images/blog/haproxy_stats-1.png": "3a36d2429c752b8d4612655473820c5bb2146d3f", + "images/blog/mastodon_cloudflare_transform_rules.png": "b2552805791734279de05452f4b0f39088a67146" } \ No newline at end of file diff --git a/.cache/plugin/optimize/images/images/blog/mastodon_cloudflare_transform_rules.png b/.cache/plugin/optimize/images/images/blog/mastodon_cloudflare_transform_rules.png new file mode 100644 index 0000000000000000000000000000000000000000..63bd1fa61c4d4ab7f9af5d453b83bc7a0c5ea215 GIT binary patch literal 32549 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 void} loaded + */ + var ready = function(loaded) { + if (['interactive', 'complete'].indexOf(document.readyState) !== -1) { + loaded(); + } else { + document.addEventListener('DOMContentLoaded', loaded); + } + }; + + ready(function() { + /** @type {Map} */ + var iframes = new Map(); + + window.addEventListener('message', function(e) { + var data = e.data || {}; + + if (typeof data !== 'object' || data.type !== 'setHeight' || !iframes.has(data.id)) { + return; + } + + var iframe = iframes.get(data.id); + + if ('source' in e && iframe.contentWindow !== e.source) { + return; + } + + iframe.height = data.height; + }); + + [].forEach.call(document.querySelectorAll('iframe.mastodon-embed'), function(iframe) { + // select unique id for each iframe + var id = 0, failCount = 0, idBuffer = new Uint32Array(1); + while (id === 0 || iframes.has(id)) { + id = crypto.getRandomValues(idBuffer)[0]; + failCount++; + if (failCount > 100) { + // give up and assign (easily guessable) unique number if getRandomValues is broken or no luck + id = -(iframes.size + 1); + break; + } + } + + iframes.set(id, iframe); + + iframe.scrolling = 'no'; + iframe.style.overflow = 'hidden'; + + iframe.onload = function() { + iframe.contentWindow.postMessage({ + type: 'setHeight', + id: id, + }, '*'); + }; + + iframe.onload(); + }); + }); +})(); diff --git a/docs/blog/index.md b/docs/blog/index.md index 3bf0ffd..bc145ab 100644 --- a/docs/blog/index.md +++ b/docs/blog/index.md @@ -1,7 +1,8 @@ +--- +title: Funky Penguin's Blog +--- # Funky Penguin's Geek Cookblog -Welcome to Funky Penguin's Blog! - -After years of trying to use alternate platforms (*I still ❤️ ya, [Ghost](/recipes/ghost/) ! 👻*), I've decided to move my technical blog entries here instead - I **far** prefer the way [mkdocs-material](https://squidfunk.github.io/mkdocs-material/) lets me format documentation for technical consumption! +Welcome to Funky Penguin's Geeky Blog! --8<-- "common-links.md" diff --git a/docs/blog/posts/notes/pod-guid-can-cause-istio-proxy-bypass.md b/docs/blog/posts/notes/pod-guid-can-cause-istio-proxy-bypass.md new file mode 100644 index 0000000..a3abe19 --- /dev/null +++ b/docs/blog/posts/notes/pod-guid-can-cause-istio-proxy-bypass.md @@ -0,0 +1,69 @@ +--- +date: 2022-11-17 +categories: + - note +tags: + - renovate +title: How running a pod as GID 1337 can cause a Kubernetes pod to bypass istio-proxy +description: Is your pod bypassing istio-proxy? Check your GUID isn't set to 1337! +--- + +# Is your pod bypassing istio-proxy? Check your GUID + +After spending hours debugging why a particular pod can't properly communicate with another pod via Istio's service mesh, I stumbled into the answer.. + + + + + +Here's more details.. Istio creates iptables rules to intercept pod-to-pod traffic. The rules look something like this (from the istio-cni pod, in my case): + +```text +* nat +-N ISTIO_INBOUND +-N ISTIO_REDIRECT +-N ISTIO_IN_REDIRECT +-N ISTIO_OUTPUT +-A ISTIO_INBOUND -p tcp --dport 15008 -j RETURN +-A ISTIO_REDIRECT -p tcp -j REDIRECT --to-ports 15001 +-A ISTIO_IN_REDIRECT -p tcp -j REDIRECT --to-ports 15006 +-A PREROUTING -p tcp -j ISTIO_INBOUND +-A ISTIO_INBOUND -p tcp --dport 15020 -j RETURN +-A ISTIO_INBOUND -p tcp --dport 15021 -j RETURN +-A ISTIO_INBOUND -p tcp --dport 15090 -j RETURN +-A ISTIO_INBOUND -p tcp -j ISTIO_IN_REDIRECT +-A OUTPUT -p tcp -j ISTIO_OUTPUT +-A ISTIO_OUTPUT -p tcp --dport 15020 -j RETURN +-A ISTIO_OUTPUT -o lo -s 127.0.0.6/32 -j RETURN +-A ISTIO_OUTPUT -o lo ! -d 127.0.0.1/32 -m owner --uid-owner 1337 -j ISTIO_IN_REDIRECT +-A ISTIO_OUTPUT -o lo -m owner ! --uid-owner 1337 -j RETURN +-A ISTIO_OUTPUT -m owner --uid-owner 1337 -j RETURN +-A ISTIO_OUTPUT -o lo ! -d 127.0.0.1/32 -m owner --gid-owner 1337 -j ISTIO_IN_REDIRECT +-A ISTIO_OUTPUT -o lo -m owner ! --gid-owner 1337 -j RETURN +-A ISTIO_OUTPUT -m owner --gid-owner 1337 -j RETURN +-A ISTIO_OUTPUT -d 127.0.0.1/32 -j RETURN +-A ISTIO_OUTPUT -j ISTIO_REDIRECT +COMMIT +``` + +And the offending pod was using this: + +```yaml +securityContext: + allowPrivilegeEscalation: false + readOnlyRootFilesystem: true + privileged: false + seccompProfile: + type: RuntimeDefault + runAsNonRoot: true + runAsUser: 10001 + runAsGroup: 1337 +``` + +See the problem? Any traffic egressing the pod coming from a process running as GUID 1337 will bypass the iptables rules, and travel "outside" of the service mesh. + +In my case, this simply caused the service to break, but if you were using Istio to enforce egress policy, this would be a gotcha! + +[^1]: It turns out this was an old istio configuration no longer required in current versions + +--8<-- "blog-footer.md" diff --git a/docs/blog/posts/notes/run-mastodon-and-media-behind-cdn.md b/docs/blog/posts/notes/run-mastodon-and-media-behind-cdn.md new file mode 100644 index 0000000..e208dc4 --- /dev/null +++ b/docs/blog/posts/notes/run-mastodon-and-media-behind-cdn.md @@ -0,0 +1,47 @@ +--- +date: 2023-02-09 +categories: + - note +tags: + - mastodon +title: Leveraging Cloudflare for your Mastdon instance, including media in B2 object storage +description: Want to run your Mastodon instance behind Cloudflare, but put your media in B2 object storage with free egress? Here's how! +--- + +# Mastodon + CloudFlare + B2 Object Storage = free egress + +When setting up my [Mastodon instance](https://so.fnky.nz), I jumped directly to storing all media in object storage (*Backblaze B2, in my case*), because I didn't want to allocate / estimate local storage requirements. + +This turned out to be a great decision, as my media bucket quickly grew to over 100GB, but as a result, all of my media was served behind URLs like `https://f007.backblaze.com/file/something/something-else/another-something.jpg`, and could _technically_ be scraped without using my Mastodon URL. + +Here's how to improve this, and also serve your Mastodon instance from behind a CloudFlare proxy... + + + +## How to CDN Mastodon with Cloudflare + +After stumbling across some [#mastoadmin](https://so.fnky.nz/tags/mastoadmin) posts re the "[Bandwidth Alliance](https://www.backblaze.com/b2/solutions/content-delivery.html)", I discovered that CloudFlare and Backblaze have an agreement, under which egress traffic from Backblaze B2 buckets is free, provided they're fronted by CloudFlare's CDN. + +Not knowing up-front how much I'd be using the media storage, I felt that this was a sensible idea. I also wanted my media URLs to be more "branded" that the default B2 bucket URLs. + +I found some [instructions](https://www.backblaze.com/blog/free-image-hosting-with-cloudflare-transform-rules-and-backblaze-b2/) by the BackBlaze team on how to implement CloudFlare caching of B2 buckets using a custom domain, using CloudFlare's transform rules. + +The initial config based on the transform rule linked above worked great, when my instance was **not** being proxied by CloudFlare. As soon as I enabled proxying for my instance, I'd get weird 404s when trying to access Mastodon. + +## Try not to transform non-media URLs! + +It turned out (*as I discovered after turning on access log debugging in Traefik*) that the above transform rule was applied to **all** traffic hitting my DNS name, and happily transforming **every** URL requested from Mastodon! + +I made the change illustrated below, which resolved the issue, and now permits the Mastodon web components to be proxied behind CloudFlare, but also allows me to serve my media behind the B2 bucket, with a nicely-branded FQDN: + +![Screenshot of transform rule for Mastodon B2 image hosting](/images/blog/mastodon_cloudflare_transform_rules.png) + +## Success, #dogstodon 🐶 + +Now I'm one step closer to a resilient Mastodon instance which can hopefully survive the occasional traffic spike / DOS when I post something **really amazingly** interesting, like my photo-bombing dog[^1]... + + + +[^1]: Her name is Jessie, she's a cross Labrador / Rhodesian Ridgeback, and she was just over 1 year old at the time of this photobombing! 🐾 + +--8<-- "blog-footer.md" diff --git a/docs/blog/posts/notes/using-velero-in-hardened-kubernetes-with-istio.md b/docs/blog/posts/notes/using-velero-in-hardened-kubernetes-with-istio.md index e733613..ef8353f 100644 --- a/docs/blog/posts/notes/using-velero-in-hardened-kubernetes-with-istio.md +++ b/docs/blog/posts/notes/using-velero-in-hardened-kubernetes-with-istio.md @@ -15,7 +15,6 @@ I'm approaching the end of the journey of applying Velero to a client's "hardene - ## What is a hardened Kubernetes cluster? In this particular case, the following apply: diff --git a/docs/images/blog/mastodon_cloudflare_transform_rules.png b/docs/images/blog/mastodon_cloudflare_transform_rules.png new file mode 100644 index 0000000000000000000000000000000000000000..ed623a8e3c0b858b95c83be4864ba0324303a8a9 GIT binary patch literal 95722 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%0DqE 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 literal 0 HcmV?d00001