<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Cloudflare on /var/log/janio</title><link>https://devops.sarmento.org/en/tags/cloudflare/</link><description>Recent content in Cloudflare on /var/log/janio</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sat, 11 Apr 2026 11:31:02 +0000</lastBuildDate><atom:link href="https://devops.sarmento.org/en/tags/cloudflare/index.xml" rel="self" type="application/rss+xml"/><item><title>Exposing homelab services to the internet with Cloudflare Tunnel</title><link>https://devops.sarmento.org/en/posts/exposing-homelab-services-to-the-internet-with-cloudflare-tunnel/</link><pubDate>Fri, 27 Mar 2026 18:24:00 +0000</pubDate><guid>https://devops.sarmento.org/en/posts/exposing-homelab-services-to-the-internet-with-cloudflare-tunnel/</guid><description>&lt;p&gt;In the &lt;a href="https://devops.sarmento.org/en/posts/ssh-behind-nat-ssh-jcom-solves-it/"&gt;previous post&lt;/a&gt;, I showed how SSH-J.com solves a specific problem: accessing a machine behind NAT via SSH, without opening ports on the router and without relying on a public IP. The reverse tunnel works well for interactive sessions and file transfers, and SSH-J.com as a jump host makes everything trivial to configure. For SSH, it remains the simplest solution I know.&lt;/p&gt;
&lt;p&gt;But SSH is just one piece of the puzzle. Anyone who maintains a homelab — even if it&amp;rsquo;s just a mini PC under the desk or a Raspberry Pi in the corner of the room — inevitably ends up running web services: an RSS reader, a monitoring dashboard, a Gitea, a Jellyfin, an &lt;a href="https://devops.sarmento.org/en/posts/immich-your-photos-your-server-your-rules/"&gt;Immich&lt;/a&gt;. These services listen on local HTTP ports and work perfectly as long as you&amp;rsquo;re on the same network. The problem appears when you want to access them from outside — from the office, from your phone on the bus, from anywhere that isn&amp;rsquo;t your local network.&lt;/p&gt;</description></item><item><title>The Dark Side of Free Website: Limits and Alternatives for Hugo + GitHub + Cloudflare Pages + Pages CMS</title><link>https://devops.sarmento.org/en/posts/o-lado-b-do-site-gratis-limites-e-alternativas-para-hugo-github-cloudflare-pages-pages-cms/</link><pubDate>Tue, 24 Mar 2026 10:45:00 +0000</pubDate><guid>https://devops.sarmento.org/en/posts/o-lado-b-do-site-gratis-limites-e-alternativas-para-hugo-github-cloudflare-pages-pages-cms/</guid><description>&lt;p&gt;In a &lt;a href="https://devops.sarmento.org/en/posts/why-leave-wordpress-and-what-to-build-instead-with-hugo-pages-cms-and-cloudflare/"&gt;previous post&lt;/a&gt;, we put together a complete blog with Hugo, GitHub, Cloudflare Pages, and Pages CMS without spending a cent. The stack works, it is fast, and for most personal blogs it will keep working for a long time without asking anything in return. But &amp;ldquo;free&amp;rdquo; does not mean &amp;ldquo;without limits,&amp;rdquo; and understanding where the walls are before you hit them is the kind of thing that saves headaches down the road.&lt;/p&gt;</description></item><item><title>Why leave WordPress — and what to build instead with Hugo, Pages CMS, and Cloudflare</title><link>https://devops.sarmento.org/en/posts/why-leave-wordpress-and-what-to-build-instead-with-hugo-pages-cms-and-cloudflare/</link><pubDate>Fri, 20 Mar 2026 00:10:00 +0000</pubDate><guid>https://devops.sarmento.org/en/posts/why-leave-wordpress-and-what-to-build-instead-with-hugo-pages-cms-and-cloudflare/</guid><description>&lt;h2 id="why-leave-wordpress"&gt;Why leave WordPress&lt;/h2&gt;
&lt;h3 id="the-weight-of-running-a-dynamic-cms"&gt;The weight of running a dynamic CMS&lt;/h3&gt;
&lt;p&gt;WordPress is an extraordinary piece of software that powers nearly half the internet. That said, keeping a WordPress installation healthy is a job that never ends. Every visit to your site triggers a chain of events: the server receives the request, PHP wakes up, queries MySQL, assembles the page on the fly, and sends the HTML back to the browser. Multiply that by a hundred simultaneous visitors and you have a server sweating to deliver pages that, on most blogs, are exactly the same for everyone.&lt;/p&gt;</description></item></channel></rss>