Sign up

cleberg.net

Not verified No WebSub updates No webmention support Not yet validated

Stillness amidst the chaos.

Webmaster
Christian Cleberg
Public lists
I ♥ RSS
Fetched

cleberg.net
Text •

Server Hardening: Firewalls, SSH, VLANs

Table of Contents 1. Planning Data Flows & Security 1.1. My Personal Data Flow 1.2. Thought Process 1.2.1. Server 1.3. ufw 1.4. ssh 1.5. fail2ban 2. Switch 2.1. 802.1Q VLAN Configuration 2.2. 802.1Q VLAN PVID Setting 3. Router 4. Physical Security 4.1. L...

cleberg.net
Text •

Self-Hosting Guide: Nextcloud

Table of Contents 1. What is Nextcloud? 2. Install Dependencies 3. Set Up MySQL 4. Download & Install Nextcloud 5. Configure the Apache Web Server 6. DNS 7. Certbot 8. Results 1. What is Nextcloud? Nextcloud is a self-hosted solution for storage, communications...

cleberg.net
Text •

Dynamic DNS Updates via the Cloudflare API

Table of Contents 1. DDNS: Dynamic DNS 1. DDNS: Dynamic DNS If you're hosting a service from a location with DDNS (Dynamic Domain Name System), where your internet protocol (IP)address may change at any time, you must have a solution to update the DNS (Domain Name ...

cleberg.net
Text •

Migrating Plex to New Hardware with Nvidia GPU

Table of Contents 1. Migration Phases 2. Phase 1: Configure the New Server 2.1. Choosing an Operating System (OS) 2.2. Booting with Nvidia 3. Phase 2: Migrate Plex Data & Devices 3.1. Terminology 3.2. Step 01: [Client] Update Settings 3.3. Step 02: [Destination]...

cleberg.net
Text •

Personal Finance Tracker with SQLite

Table of Contents 1. Personal Financial Tracking 2. SQLite 2.1. Visual Editing 2.2. Schema 2.3. Python Reporting 2.3.1. Step 1: Jupyter Notebooks 2.3.2. Step 2: Python Scripts 1. Personal Financial Tracking For the last 6-ish years, I've tracked my finances...

cleberg.net
Text •

Create Reliable Notes with Plaintext

Table of Contents 1. Choosing Durable File Formats 1.1. Saving & Syncing Files 1.1.1. Version Control with Git 1.1.2. Backups! 1.2. Writing on Desktop 1.2.1. Programming on Desktop 1.3. Writing on Mobile 1. Choosing Durable File Formats TL;DR (Too ...

cleberg.net
Text •

Twosday: 2/22/22

Table of Contents 1. Tuesday, Twosday 1. Tuesday, Twosday I'm taking a break from my usual technology-related posts and writing about something a little more enjoyable today. Today is Tuesday, February 22nd, 2022. Today is 02-22-2022. Today is Twosday. Let's ...

cleberg.net
Text •

Nginx Caching for Static Content

Table of Contents 1. Update Your Nginx Config to Cache Static Files 2. Testing Results 3. Caveats 1. Update Your Nginx Config to Cache Static Files If you run a website on Nginx that serves static content (i.e., content that is not dynamic and changing with interac...

cleberg.net
Text •

ExifTool: Strip Metadata Before You Post

Table of Contents 1. Why Strip Metadata? 2. Installing exiftool 3. Recursively Strip Data 1. Why Strip Metadata? Okay, so you want to strip metadata from your photos. Perhaps you take pictures of very rare birds, and the location metadata is a gold mine for poacher...

cleberg.net
Text •

Migrating from Ubuntu to Debian with Nginx

Table of Contents 1. Server Operating System (OS): Debian 2. Web Server: Nginx 2.1. Nginx vs. Apache 3. Gemini Server: Agate 1. Server Operating System (OS): Debian I've used various Linux distributions throughout the years, but I've never used anything except ...

cleberg.net
Text •

Dynamic DNS Updates via the Njalla API

Table of Contents 1. Njalla's API 1.1. Creating a Token 1.2. Finding the Correct API Request 2. Server Set-Up 2.1. Creating the Script 2.2. Running the Script 2.3. Setting the Script to Run Automatically 1. Njalla's API As noted in my recent post about swit...

cleberg.net
Text •

Leaving the Office

Table of Contents 1. The Working World is Changing 2. In-Person Offices 2.1. Retail Internship 2.2. Semi-Private Cubicles 2.3. Semi-Open Floor Concept 2.4. Hotel Office Concept 3. Home Office 3.1. Tip #1 3.2. Tip #2 3.3. Tip #3 3.4. Tip #4 4. My Preferences 1...

cleberg.net
Text •

I Passed the CISA Exam

Table of Contents 1. What is the CISA? 2. Exam Content 3. My Studying Habits 3.1. Study Materials 3.2. Studying Process 4. Results 5. Looking Forward 1. What is the CISA? For those of you lucky enough not to be knee-deep in the world of information technology (...

cleberg.net
Text •

Apache Rewrite Rules for Extensionless URLs

Table of Contents 1. The Problem 2. The Solution 1. The Problem After recently switching static site generators (SSG), my blog URLs (uniform resource locators) changed with no option to preserve the classic .html extension at the end of my blog post URLs. I real...

cleberg.net
Text •

Audit Sampling with Pandas

Table of Contents 1. Introduction 2. Audit Requirements for Sampling 2.1. Randomness 2.2. Sample Sizes 2.2.1. Sampling with Python & Pandas 2.3. Simple Random Sample 2.4. Simple Random Sample: Using Multiple Input Files 2.5. Stratified Random Sample 2.6. Strati...

cleberg.net
Text •

Deleting All GitLab Repositories with Python

Table of Contents 1. Background 2. Use a Python Script 2.1. Requirements 2.2. Create the Script 1. Background Have you ever used GitLab to host your source code, moved to a different host, and wanted to delete everything from your GitLab account? Well, this pos...

cleberg.net
Text •

Correcting Git Author Details Across Multiple Repos

Table of Contents 1. Changing Git Author/Email Based on Previously Committed Email 1. Changing Git Author/Email Based on Previously Committed Email Here's the dilemma: You've been committing changes to your Git repository with an incorrect name or email (or multipl...

cleberg.net
Text •

My Photography Gear

Table of Contents 1. Why Photography? 2. Older Cameras 3. My Current Kit 1. Why Photography? I've often wondered why photography is as enticing as it is. You can see billions of people around the world taking photographs every single moment of the day. New technolo...

cleberg.net
Text •

A Lightweight, Static PHP Comment System

Table of Contents 1. The Terrible-ness of Commenting Systems 2. Stay Static with Server-Side Comments 3. Create a Comment Form 4. Handle Comments via POST 5. Display User Comments 6. Bonus: Create a 'Recent Comments' Page 7. Possible Enhancements 1. The Terrible-ness...

cleberg.net
Text •

Agate Gemini Server Setup

Table of Contents 1. Similar Article Available 2. Preparation 3. Getting Started with Agate 4. Install Dependencies 5. Create Symlinks 6. Using Agate's Built-In Installation Tool 7. Configure the Gemini Service 8. Fixing Systemd Errors 9. Firewall Rules 10. Creating Conte...

cleberg.net
Text •

VPS Web Server: Get Off Shared Hosting

Table of Contents 1. Shared Hosting vs. VPS (Virtual Private Server) 2. My Situation 3. Getting Started: Buying a VPS 4. Configuring DNS Settings 5. Server Updates and Packages 6. Create A User Account 7. Install Software 8. Website Files & Folders 9. Apache Configura...

cleberg.net
Text •

Vaporwave vs. Outrun

Table of Contents 1. Overview 2. Vaporwave 2.1. Time Frame 2.2. Art 2.3. Music 3. Outrun 3.1. Time Frame 3.2. Art 3.3. Music 4. Conclusion 1. Overview When it comes to an aesthetic that originated primarily online, there tends to be a lot of confusion aroun...

cleberg.net
Text •

Gemini Capsule: Deploy and Own Your Content

Table of Contents 1. What is Gemini? 1.0.1. Free Option 1.1. Midnight Pub - Beginner Friendly 2. Paid Option 2.1. Sourcehut 1. What is Gemini? Gemini is an internet protocol introduced in June 2019 as an alternative to the Hypertext Transfer Protocol (H...

cleberg.net
Text •

Scripting Mass Clones from GitHub and Sourcehut

Table of Contents 1. Cloning from GitHub 2. Cloning from Sourcehut 3. Moving Repositories to a New Host 1. Cloning from GitHub If you're like me and use a lot of different devices [and sometimes decide to just wipe your device and start with a new operating system ...

cleberg.net
Text •

macOS for Linux Users

Table of Contents 1. Diving into macOS 2. Initial Thoughts 3. Making it Feel Like Home 4. Xcode 5. Homebrew 6. iTerm2 7. Oh-My-Zsh 8. Oh-My-Zsh Themes 9. Oh-My-Zsh Plugins 1. Diving into macOS After spending nearly 15 years working with Windows and 8 years on Linux...

cleberg.net
Text •

UFW: Firewall Setup on Ubuntu

Table of Contents 1. Uncomplicated Firewall 2. Getting Help 3. Set Default State 4. Adding Port Rules 5. Enable ufw 6. Checking Status 7. Deleting Rules 8. Managing App Rules 9. Creating App Rules 1. Uncomplicated Firewall Uncomplicated Firewall (UFW) is a convenie...

cleberg.net
Text •

Fediverse: Decentralized Social

Table of Contents 1. What is the Fediverse? 2. Federated Alternatives to Popular Sites 2.1. Reddit 2.2. Twitter/Facebook/Tumblr 2.3. Instagram 2.4. Slack/Discord 2.5. Youtube/Vimeo 2.6. Spotify/Soundcloud 2.7. Podcasting 2.8. Medium/Blogger 3. Get Started 1. What...

cleberg.net
Text •

SEUM: Speedrunners from Hell

Table of Contents 1. Game Description 2. Story 3. Gameplay 1. Game Description SEUM: Speedrunners from Hell is an incredibly fast-paced mashup of a puzzle game and a free-running game. Created by Pine Studio in early 2016 and first released as a demo on GameJolt, t...

cleberg.net
Text •

The Zork Anthology

Table of Contents 1. Download (Free) 2. Game Description 3. The Map 4. In-Game Screenshots 5. Conclusion 1. Download (Free) Before we get into the game itself, you should know that you can download Zork for free from Infocom's download page. So feel free to boot it...

cleberg.net
Text •

Neon Drive

Table of Contents 1. Game Description 2. Gameplay 3. In-Game Screenshots 4. Other Suggestions 1. Game Description Neon Drive presents itself as a simple arcade-style game inspired by the arcade race games of the 1980s, yet it has managed to take up hours of my life...