<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Security - Tag - Fryguy's Blog</title><link>https://fryguy.net/tags/security/</link><description>Security - Tag - Fryguy's Blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Sat, 08 Aug 2026 18:00:00 +0000</lastBuildDate><atom:link href="https://fryguy.net/tags/security/" rel="self" type="application/rss+xml"/><item><title>Retiring WordPress – How I Migrated fryguy.net to Hugo (With an AI Pair Programmer)</title><link>https://fryguy.net/2026/08/08/retiring-wordpress-how-claude-code-helped-migrate-fryguy-net-to-hugo/</link><pubDate>Sat, 08 Aug 2026 18:00:00 +0000</pubDate><author>Fryguy</author><guid>https://fryguy.net/2026/08/08/retiring-wordpress-how-claude-code-helped-migrate-fryguy-net-to-hugo/</guid><description><![CDATA[<p>This site has run on WordPress since basically forever. As of this week, it doesn&rsquo;t anymore. Everything you&rsquo;re reading is now a static Hugo site, built from Markdown, served by nginx, with no PHP and no database anywhere in the stack. Here&rsquo;s why I did it, what actually moved, and how I used Claude Code as a pair programmer for most of the heavy lifting.</p>
<h2 id="why-bother">Why bother</h2>
<p>Let&rsquo;s be honest about how it got this bad: I didn&rsquo;t keep up with it. I know. Servers don&rsquo;t rot on their own — you stop patching them, stop upgrading them, and a few years later you&rsquo;re staring at a stack that&rsquo;s aged out from under you. The old droplet had quietly rotted underneath a site that still worked fine. Ubuntu 18.04 — EOL since 2023. PHP 7.4 — EOL since 2022, with no apt-upgrade path to anything newer (the PPA I&rsquo;d have needed was frozen). MySQL 5.7 — also EOL. WordPress itself was current; everything under it wasn&rsquo;t, and there was no clean patching path left, just a slow accumulation of risk on a box facing the public internet.</p>]]></description></item><item><title>IOS XR – TACACS (default and non-default VRF)</title><link>https://fryguy.net/2012/10/18/ios-xr-tacacs-default-and-non-default-vrf/</link><pubDate>Thu, 18 Oct 2012 12:04:07 +0000</pubDate><author>Fryguy</author><guid>https://fryguy.net/2012/10/18/ios-xr-tacacs-default-and-non-default-vrf/</guid><description><![CDATA[<p><a href="/wp-content/uploads/2012/09/iosxrfryguy-8.jpg" rel=""></a><br>
Ok, final post on IOS-XR before the workbook is published in its entirety.<br>
 <br>
So you want to secure your IOS-XR device using TACACS.<br>
The first example I will use will be using the default VRF for TACACS authorization and the second will be using a different VRF. For these examples, the tacacs server is at IP 192.168.100.100 and the password is TacacsPassword<br>
First up, we need to configure our source interface for TACACS, here we will use loopback0 and the default VRF.<br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config)#<span style="color: #ff0000;">tacacs source-interface Loopback0 vrf default</span></span><br>
Now we can configure our TACACS server and Password<br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config)#<span style="color: #ff0000;">tacacs-server host 192.168.100.100</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config-tacacs-host)#<span style="color: #ff0000;">key 0 TacacsPassword</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config-tacacs-host)#<span style="color: #ff0000;">exit</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config)#</span><br>
Time to create a local console authenticaion method, this way console does not rely on TACACS.<br>
You may or may not want to do this, but I am showing it for these examples.<br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config)#<span style="color: #ff0000;">aaa authentication login console local</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config)#<span style="color: #ff0000;">aaa authorization commands console none</span></span><br>
Apply the console loging to the line console<br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config)#<span style="color: #ff0000;">line console</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config-line)#<span style="color: #ff0000;">login authentication console</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config-line)#<span style="color: #ff0000;">authorization commands console</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config-line)#<span style="color: #ff0000;">exit</span></span><br>
<span style="color: #0000ff;">RP/0/RSP0/CPU0:PE2(config)#</span></p>]]></description></item></channel></rss>