mjl.

Articles

Notes on IT operations, infrastructure, automation and things I break (and fix) along the way.

ciscoiosnetworking

Cisco IOS Access Modes and Essential Commands

Learn how to access Cisco IOS, move between command modes, inspect a device, and save configuration changes safely.

ciscoiosinterfacesnetworking

Cisco IOS Device and Interface Configuration

Apply basic Cisco device identity, management access, and interface settings, then verify the result before saving it.

ciscosshroutingvlanstroubleshooting

Cisco IOS SSH, Routing, VLANs, and Troubleshooting

Secure Cisco management with SSH, configure basic routing and VLANs, and use a repeatable connectivity troubleshooting process.

podmancontainerfileapachephpcontainers

Containerfiles with Alpine, Apache, and PHP

Build a repeatable web image with a Containerfile, explain each instruction, and verify the resulting Apache/PHP container.

networkingipv4cidrsubnetting

IPv4 Subnets, Netmasks, and CIDR

Calculate IPv4 network ranges, usable hosts, and broadcast addresses using netmasks and CIDR notation.

linuxsecuritypermissions

Linux Users, Groups, and Permissions

Understand Linux identities and permission bits, then safely inspect and change ownership and access on files and directories.

linuxshellcommand-line

Linux Filesystem Navigation and Command-Line Help

Learn how Linux paths, directories, and built-in command documentation fit together, with practical commands for exploring a system safely.

linuxftptlssecurity

Linux FTP with VSFTPD and TLS

Configure a restricted VSFTPD service with TLS for a controlled lab, and understand why plain FTP should not be used on untrusted networks.

linuxnetworkingnetplanipv4

Linux Network Configuration with Netplan

Configure DHCP and static IPv4 networking on Ubuntu with Netplan, then verify addresses, routes, and name resolution.

linuxaptprocessessystem-administration

Linux Packages, Processes, and System Inspection

Install software, inspect hardware and processes, and read system information without guessing what is running on a Linux host.

linuxshellarchivesscp

Linux Shell Pipelines, Redirection, and Archives

Compose Linux commands with pipes and redirection, then create, inspect, and transfer archives safely.

linuxsshsecurityscp

Linux SSH and Secure File Transfer

Set up and troubleshoot SSH access using keys, least privilege, and secure file transfer with scp.

podmancontainersimagesbackup

Podman Images, Commit, Export, and Import

Capture and transfer Podman images while understanding the difference between an image archive and a container filesystem archive.

podmancontainerslinux

Installing Podman and Understanding Containers

Install Podman, distinguish images from containers, and run a first rootless container with safe inspection and cleanup habits.

podmankubernetesminikubecontainers

Podman Kubernetes YAML and Minikube

Generate Kubernetes YAML from a Podman pod, inspect the result, and deploy a small local workload with a version-aware Minikube workflow.

podmancontainersphpmariadbnetworking

Podman Multi-Container Web and Database Stacks

Connect Apache/PHP and MariaDB containers on a named Podman network, using persistent data and service names instead of container IPs.

podmancontainersnetworkingdns

Podman Networks and Container Connectivity

Create isolated Podman networks, connect services by name, and troubleshoot container connectivity without hard-coded IP addresses.

podmanphpmyadminmariadbdatabases

Podman phpMyAdmin and Database Verification

Add phpMyAdmin to a private Podman network and verify MariaDB schema and application connectivity without exposing the database unnecessarily.

podmanpodswordpressmariadb

Podman Pods and WordPress

Run WordPress and MariaDB in a Podman pod, use shared localhost networking correctly, and keep database data persistent.

podmancontainersapachevolumes

Podman Volumes and Web Containers

Run an Apache container with a bind mount and published port, while keeping website content outside the disposable container layer.