<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>Ryan Freeman</title>
        <link>https://ryanfreeman.dev</link>
        <description>Software engineer currently working in the aviation industry.</description>
        <lastBuildDate>Wed, 24 Jun 2026 10:12:22 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>Ryan Freeman</title>
            <url>https://ryanfreeman.dev/favicon.ico</url>
            <link>https://ryanfreeman.dev</link>
        </image>
        <copyright>Copyright 2026 Ryan Freeman. All rights reserved.</copyright>
        <item>
            <title><![CDATA[Using Tailscale and subnet routers to access legacy devices]]></title>
            <link>https://ryanfreeman.dev/writing/using-tailscale-and-subnet-routers-to-access-legacy-devices</link>
            <guid>https://ryanfreeman.dev/writing/using-tailscale-and-subnet-routers-to-access-legacy-devices</guid>
            <pubDate>Wed, 18 Jun 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Recently, I ran into some trouble accessing an old CCTV system on my network. The P2P feature stopped working, which meant I could no longer connect to it remotely.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
        <item>
            <title><![CDATA[Cheap VPS: A Cost-Effective Alternative to Cloudflare Tunnels]]></title>
            <link>https://ryanfreeman.dev/writing/cheap-vps-a-cost-effective-alternative-to-cloudflare-tunnels</link>
            <guid>https://ryanfreeman.dev/writing/cheap-vps-a-cost-effective-alternative-to-cloudflare-tunnels</guid>
            <pubDate>Sat, 10 May 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[In my previous article on migrating this website from Vercel to Raspberry Pi 5, one of the key steps in replacing Vercel was making this website accessible to the Internet. For convenience, I decided to use Cloudflare Tunnels, however this setup comes with some trade-offs.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
        <item>
            <title><![CDATA[Passwordless SSH login with public key authentication]]></title>
            <link>https://ryanfreeman.dev/writing/passwordless-ssh-login-with-public-key-authentication</link>
            <guid>https://ryanfreeman.dev/writing/passwordless-ssh-login-with-public-key-authentication</guid>
            <pubDate>Sun, 04 May 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[SSH is an essential service for remotely maintaining a Linux server, in this blog post I'll talk about hardening the SSH service by enabling passwordless public key authentication.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
        <item>
            <title><![CDATA[Generating dynamic Open Graph images with Next.js]]></title>
            <link>https://ryanfreeman.dev/writing/generating-dynamic-open-graph-images-with-nextjs</link>
            <guid>https://ryanfreeman.dev/writing/generating-dynamic-open-graph-images-with-nextjs</guid>
            <pubDate>Thu, 10 Oct 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[In this post I'll talk about how I created dynamic, eye-catching Open Graph images with Next.js for this website.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
        <item>
            <title><![CDATA[Secure your websites with Let's Encrypt, NPM and Cloudflare]]></title>
            <link>https://ryanfreeman.dev/writing/secure-your-websites-with-lets-encrypt-npm-and-cloudflare</link>
            <guid>https://ryanfreeman.dev/writing/secure-your-websites-with-lets-encrypt-npm-and-cloudflare</guid>
            <pubDate>Sat, 21 Sep 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[SSL/TLS is the encryption standard or protocol which encrypts the session between a website (server) and the browser (client). This protects us from potential man-in-the-middle attacks whereby an attacker could eavesdrop on the session and see all the traffic and data exchanged in the clear.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
        <item>
            <title><![CDATA[Using Tailscale to bypass Steam Families restrictions]]></title>
            <link>https://ryanfreeman.dev/writing/using-tailscale-to-bypass-steam-families-restrictions</link>
            <guid>https://ryanfreeman.dev/writing/using-tailscale-to-bypass-steam-families-restrictions</guid>
            <pubDate>Sat, 14 Sep 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[This past week, Steam launched Steam Families, which allows Steam account owners to share their game library with up to six members of their family.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
        <item>
            <title><![CDATA[Migrating from Vercel to Raspberry Pi 5]]></title>
            <link>https://ryanfreeman.dev/writing/migrating-from-vercel-to-raspberry-pi-5</link>
            <guid>https://ryanfreeman.dev/writing/migrating-from-vercel-to-raspberry-pi-5</guid>
            <pubDate>Fri, 23 Aug 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Recently, I decided to migrate this website from Vercel to a self-hosted environment using a Raspberry Pi 5. This transition was driven by several motivations, such as lowering costs and having greater control over the software and hardware that I run.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
        <item>
            <title><![CDATA[A personal journey in software engineering]]></title>
            <link>https://ryanfreeman.dev/writing/a-personal-journey-in-software-engineering</link>
            <guid>https://ryanfreeman.dev/writing/a-personal-journey-in-software-engineering</guid>
            <pubDate>Sun, 04 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Hello there! If you're reading this, you've likely stumbled upon my website — welcome! My name is Ryan Freeman, and I'm a software engineer with a passion for creating intuitive and dynamic web applications.]]></description>
            <author>hello@ryanfreeman.dev (Ryan Freeman)</author>
        </item>
    </channel>
</rss>