aboutsummaryrefslogtreecommitdiff
path: root/blog
diff options
context:
space:
mode:
Diffstat (limited to 'blog')
-rw-r--r--blog/2019-09-09-audit-analytics.org8
-rw-r--r--blog/2019-12-03-the-ansoff-matrix.org2
-rw-r--r--blog/2020-01-25-linux-software.org14
-rw-r--r--blog/2020-01-26-steam-on-ntfs.org2
-rw-r--r--blog/2020-03-25-session-messenger.org14
-rw-r--r--blog/2020-05-03-homelab.org2
-rw-r--r--blog/2020-05-19-customizing-ubuntu.org4
-rw-r--r--blog/2020-07-20-video-game-sales.org18
-rw-r--r--blog/2020-07-26-business-analysis.org14
-rw-r--r--blog/2020-09-22-internal-audit.org10
-rw-r--r--blog/2020-09-25-happiness-map.org10
-rw-r--r--blog/2020-12-28-neon-drive.org8
-rw-r--r--blog/2020-12-29-zork.org8
-rw-r--r--blog/2021-01-01-seum.org12
-rw-r--r--blog/2021-01-04-fediverse.org2
-rw-r--r--blog/2021-01-07-ufw.org2
-rw-r--r--blog/2021-02-19-macos.org4
-rw-r--r--blog/2021-03-28-gemini-capsule.org2
-rw-r--r--blog/2021-03-28-vaporwave-vs-outrun.org12
-rw-r--r--blog/2021-03-30-vps-web-server.org2
-rw-r--r--blog/2021-04-17-gemini-server.org4
-rw-r--r--blog/2021-04-23-php-comment-system.org2
-rw-r--r--blog/2021-12-04-cisa.org4
-rw-r--r--blog/2022-02-10-leaving-the-office.org10
-rw-r--r--blog/2022-02-16-debian-and-nginx.org10
-rw-r--r--blog/2022-02-17-exiftool.org4
-rw-r--r--blog/2022-02-20-nginx-caching.org2
-rw-r--r--blog/2022-02-22-tuesday.org2
-rw-r--r--blog/2022-03-02-note-taking.org6
-rw-r--r--blog/2022-03-03-financial-database.org4
-rw-r--r--blog/2022-03-08-plex-migration.org10
-rw-r--r--blog/2022-03-23-nextcloud-on-ubuntu.org4
-rw-r--r--blog/2022-03-24-server-hardening.org6
-rw-r--r--blog/2022-04-09-pinetime.org10
-rw-r--r--blog/2022-06-16-terminal-lifestyle.org10
-rw-r--r--blog/2022-07-25-curseradio.org2
-rw-r--r--blog/2022-09-17-serenity-os.org8
-rw-r--r--blog/2022-10-20-syncthing.org2
-rw-r--r--blog/2022-11-29-nginx-referrer-ban-list.org4
-rw-r--r--blog/2023-01-05-mass-unlike-tumblr-posts.org4
-rw-r--r--blog/2023-01-23-random-mullvad-wireguard.org2
-rw-r--r--blog/2023-01-28-self-hosting-wger-workout-manager.org2
-rw-r--r--blog/2023-06-08-goaccess-geoip.org4
-rw-r--r--blog/2023-06-08-self-hosting-baikal-server.org2
-rw-r--r--blog/2023-06-18-unifi-ip-blocklist.org6
-rw-r--r--blog/2023-06-23-byobu.org2
-rw-r--r--blog/2023-06-23-self-hosting-convos-irc.org4
-rw-r--r--blog/2023-06-30-self-hosting-voyager-lemmy-client.org2
-rw-r--r--blog/2023-09-15-gitweb.org2
-rw-r--r--blog/2023-10-11-self-hosting-authelia.org4
-rw-r--r--blog/2023-10-15-alpine-ssh-hardening.org2
-rw-r--r--blog/2023-10-17-self-hosting-anonymousoverflow.org4
52 files changed, 147 insertions, 147 deletions
diff --git a/blog/2019-09-09-audit-analytics.org b/blog/2019-09-09-audit-analytics.org
index e0e34e8..702bf8a 100644
--- a/blog/2019-09-09-audit-analytics.org
+++ b/blog/2019-09-09-audit-analytics.org
@@ -25,7 +25,7 @@ These steps can be necessary for an audit (and may even be performed by the same
associates), but they are not data analytics.
#+CAPTION: The Intelligence Cycle
-[[https://img.0x4b1d.org/blog/20190909-data-analysis-in-auditing/intelligence_cycle-min.png]]
+[[https://img.cleberg.net/blog/20190909-data-analysis-in-auditing/intelligence_cycle-min.png]]
* Current Use of Analytics in Auditing
@@ -81,7 +81,7 @@ analytics so that the results can be as comprehensive as possible:
or else the system cannot be sustained.
#+CAPTION: The Delta Model
-[[https://img.0x4b1d.org/blog/20190909-data-analysis-in-auditing/delta-min.png]]
+[[https://img.cleberg.net/blog/20190909-data-analysis-in-auditing/delta-min.png]]
* Finding the Proper KPIs
@@ -200,10 +200,10 @@ a story/ about the data and why the results matter. For example, *Figure 4*
shows a part of the explanation the author gives to illustrate his point.
#+CAPTION: Entry-Level Visualization
-[[https://img.0x4b1d.org/blog/20190909-data-analysis-in-auditing/vis_example-min.png]]
+[[https://img.cleberg.net/blog/20190909-data-analysis-in-auditing/vis_example-min.png]]
#+CAPTION: Visualization Explanation
-[[https://img.0x4b1d.org/blog/20190909-data-analysis-in-auditing/vis_example_explanation-min.png]]
+[[https://img.cleberg.net/blog/20190909-data-analysis-in-auditing/vis_example_explanation-min.png]]
* Wrap-Up
diff --git a/blog/2019-12-03-the-ansoff-matrix.org b/blog/2019-12-03-the-ansoff-matrix.org
index 68a1201..c791edd 100644
--- a/blog/2019-12-03-the-ansoff-matrix.org
+++ b/blog/2019-12-03-the-ansoff-matrix.org
@@ -33,7 +33,7 @@ matrix focuses on the firm's products and determines if the firm wants to pursue
strategies around their existing products or explore new products.
#+CAPTION: The Ansoff Matrix by JaisonAbeySabu, Own work, CC BY-SA 3.0
-[[https://img.0x4b1d.org/blog/20191203-the-ansoff-matrix/ansoff_matrix-min.png]]
+[[https://img.cleberg.net/blog/20191203-the-ansoff-matrix/ansoff_matrix-min.png]]
* Strategic Options
diff --git a/blog/2020-01-25-linux-software.org b/blog/2020-01-25-linux-software.org
index 2317b13..b62577b 100644
--- a/blog/2020-01-25-linux-software.org
+++ b/blog/2020-01-25-linux-software.org
@@ -5,7 +5,7 @@
** Etcher
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/etcher.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/etcher.png]]
[[https://www.balena.io/etcher/][Etcher]] is a quick and easy way to burn ISO images to CDs and USB devices. There
are two different ways you can install this program. First, you can navigate to
@@ -50,7 +50,7 @@ sudo pacman -S etcher
** Atom
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/atom.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/atom.png]]
[[https://atom.io][Atom]] is the self-proclaimed "hackable text editor for the 21st century". This
text editor is made by GitHub, [[https://news.microsoft.com/2018/06/04/microsoft-to-acquire-github-for-7-5-billion/][now owned by Microsoft]], and has some of the best
@@ -94,7 +94,7 @@ sudo pacman -S atom
** Visual Studio Code
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/vscode.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/vscode.png]]
[[https://code.visualstudio.com][Visual Studio Code]] is yet another fantastic choice for programming on Linux,
especially if you need those extra add-ons to spice up your late-night coding
@@ -127,7 +127,7 @@ sudo pacman -S yay binutils make gcc pkg-config fakeroot yay -S visual-studio-co
** GNOME Tweaks
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/gnome-tweaks.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/gnome-tweaks.png]]
[[https://gitlab.gnome.org/GNOME/gnome-tweaks][Gnome Tweaks]] is the ultimate tool to use if you want to customize your GNOME
desktop environment. This is how you can switch application themes (GTK), shell
@@ -148,7 +148,7 @@ sudo dnf install gnome-tweaks
** Steam
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/steam.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/steam.png]]
[[https://steampowered.com][Steam]] is one of the most popular gaming libraries for computers and is one of
the main reasons that many people have been able to switch to Linux in recent
@@ -193,7 +193,7 @@ sudo pacman -S steam
** neofetch
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/neofetch.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/neofetch.png]]
[[https://github.com/dylanaraps/neofetch][Neofetch]] is a customizable tool used in the command-line to show system
information. This is exceptionally useful if you want to see your system's
@@ -221,7 +221,7 @@ sudo pacman -S neofetch
** yt-dlp
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/yt-dlp.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/yt-dlp.png]]
[[https://github.com/yt-dlp/yt-dlp][yt-dlp]] is an extremely handy command-line tool that allows you to download video
or audio files from various websites, such as YouTube. There are a ton of
diff --git a/blog/2020-01-26-steam-on-ntfs.org b/blog/2020-01-26-steam-on-ntfs.org
index df496e1..6f40b99 100644
--- a/blog/2020-01-26-steam-on-ntfs.org
+++ b/blog/2020-01-26-steam-on-ntfs.org
@@ -3,7 +3,7 @@
* Auto-Mount Steam Drives
-[[https://img.0x4b1d.org/blog/20200125-the-best-linux-software/steam.png]]
+[[https://img.cleberg.net/blog/20200125-the-best-linux-software/steam.png]]
If you want to see how to install Steam on Linux, see my other post: [[./2020-01-25-linux-software.html][Linux Software]].
diff --git a/blog/2020-03-25-session-messenger.org b/blog/2020-03-25-session-messenger.org
index 5e79ab9..e170727 100644
--- a/blog/2020-03-25-session-messenger.org
+++ b/blog/2020-03-25-session-messenger.org
@@ -67,7 +67,7 @@ sudo chmod u+x session-messenger-desktop-linux-x86_64-1.0.5.AppImage
#+END_SRC
#+CAPTION: Session Download Options
-[[https://img.0x4b1d.org/blog/20200325-session-private-messenger/session_downloads.png]]
+[[https://img.cleberg.net/blog/20200325-session-private-messenger/session_downloads.png]]
* Creating an Account
@@ -79,13 +79,13 @@ You'll need to set a display name and, optionally, a password. If you set a
password, you will need to enter it every time you open the app.
#+CAPTION: Session Login (Linux)
-[[https://img.0x4b1d.org/blog/20200325-session-private-messenger/session_linux_login.png]]
+[[https://img.cleberg.net/blog/20200325-session-private-messenger/session_linux_login.png]]
#+CAPTION: Session Login (macOS)
-[[https://img.0x4b1d.org/blog/20200325-session-private-messenger/session_macos_login.png]]
+[[https://img.cleberg.net/blog/20200325-session-private-messenger/session_macos_login.png]]
#+CAPTION: Password Authentication
-[[https://img.0x4b1d.org/blog/20200325-session-private-messenger/session_password_authentication.png]]
+[[https://img.cleberg.net/blog/20200325-session-private-messenger/session_password_authentication.png]]
* Start Messaging
@@ -97,13 +97,13 @@ any other messaging app, so I won't dive into much detail here.
** macOS
#+CAPTION: macOS Conversations
-[[https://img.0x4b1d.org/blog/20200325-session-private-messenger/session_macos_conversations.png]]
+[[https://img.cleberg.net/blog/20200325-session-private-messenger/session_macos_conversations.png]]
One key feature to note is that the desktop application now provides a helpful
pop-up box explaining the process that Session uses to hide your IP address:
#+CAPTION: IP Address Help Box
-[[https://img.0x4b1d.org/blog/20200325-session-private-messenger/session_ip.png]]
+[[https://img.cleberg.net/blog/20200325-session-private-messenger/session_ip.png]]
** iOS
@@ -111,7 +111,7 @@ The mobile app is quite simple and effective, giving you all the standard mobile
messaging options you'd expect.
#+CAPTION: iOS App
-[[https://img.0x4b1d.org/blog/20200325-session-private-messenger/session_ios.png]]
+[[https://img.cleberg.net/blog/20200325-session-private-messenger/session_ios.png]]
* Potential Issues
diff --git a/blog/2020-05-03-homelab.org b/blog/2020-05-03-homelab.org
index f0ff369..acfe186 100644
--- a/blog/2020-05-03-homelab.org
+++ b/blog/2020-05-03-homelab.org
@@ -15,7 +15,7 @@ done so far in my homelab is fairly low-budget.
* Hardware
#+CAPTION: HomeLab Diagram
-[[https://img.0x4b1d.org/blog/20200503-homelab/homelab-min.png]]
+[[https://img.cleberg.net/blog/20200503-homelab/homelab-min.png]]
** Raspberry Pi 4
diff --git a/blog/2020-05-19-customizing-ubuntu.org b/blog/2020-05-19-customizing-ubuntu.org
index e70b74c..2375aac 100644
--- a/blog/2020-05-19-customizing-ubuntu.org
+++ b/blog/2020-05-19-customizing-ubuntu.org
@@ -21,7 +21,7 @@ tutorials out there on customizations.
** Required Tools
#+CAPTION: Gnome Tweaks
-[[https://img.0x4b1d.org/blog/20200519-customizing-ubuntu/gnome-tweaks-min.png]]
+[[https://img.cleberg.net/blog/20200519-customizing-ubuntu/gnome-tweaks-min.png]]
Ubuntu 20.04 ships with the default desktop environment [[https://www.gnome.org/][Gnome]], which includes
the handy =gnome-tweaks= tool to quickly change designs. To install this, just
@@ -84,7 +84,7 @@ install the browser extension that the website instructs you to. See this
screenshot for the blue box with a link to the extension.
#+CAPTION: Gnome Extensions
-[[https://img.0x4b1d.org/blog/20200519-customizing-ubuntu/gnome-extensions-min.png]]
+[[https://img.cleberg.net/blog/20200519-customizing-ubuntu/gnome-extensions-min.png]]
After the browser extension is installed, you will need to install the native
host connector:
diff --git a/blog/2020-07-20-video-game-sales.org b/blog/2020-07-20-video-game-sales.org
index c86c320..4c5e8f4 100644
--- a/blog/2020-07-20-video-game-sales.org
+++ b/blog/2020-07-20-video-game-sales.org
@@ -38,7 +38,7 @@ df
#+END_SRC
#+CAPTION: Dataframe Results
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/01_dataframe-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/01_dataframe-min.png]]
* Explore the Data
@@ -48,7 +48,7 @@ df.describe()
#+END_SRC
#+CAPTION: df.describe()
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/02_describe-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/02_describe-min.png]]
#+BEGIN_SRC python
# This function shows the rows and columns of NaN values. For example, df[179,3] = nan
@@ -66,7 +66,7 @@ sns.catplot(x='Platform', y='Global_Sales', data=df, jitter=False).set_xticklabe
#+END_SRC
#+CAPTION: Plot of Global Sales by Platform
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/03_plot-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/03_plot-min.png]]
#+BEGIN_SRC python
# This function plots the global sales by genre
@@ -74,7 +74,7 @@ sns.catplot(x='Genre', y='Global_Sales', data=df, jitter=False).set_xticklabels(
#+END_SRC
#+CAPTION: Plot of Global Sales by Genre
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/04_plot-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/04_plot-min.png]]
#+BEGIN_SRC python
# This function plots the global sales by year
@@ -82,7 +82,7 @@ sns.lmplot(x='Year', y='Global_Sales', data=df).set_xticklabels(rotation=45)
#+END_SRC
#+CAPTION: Plot of Global Sales by Year
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/05_plot-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/05_plot-min.png]]
#+BEGIN_SRC python
# This function plots four different lines to show sales from different regions.
@@ -111,7 +111,7 @@ plt.show()
#+END_SRC
#+CAPTION: Plot of Regional Sales by Year
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/06_plot-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/06_plot-min.png]]
* Investigate Outliers
@@ -138,7 +138,7 @@ df3.describe()
#+END_SRC
#+CAPTION: Descriptive Statistics of 2006 Sales
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/07_2006_stats-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/07_2006_stats-min.png]]
#+BEGIN_SRC python
# Plot the results of the previous dataframe (games from 2006) - we can see the year's results were largely carried by Wii Sports
@@ -146,7 +146,7 @@ sns.catplot(x="Genre", y="Global_Sales", data=df3, jitter=False).set_xticklabels
#+END_SRC
#+CAPTION: Plot of 2006 Sales
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/08_plot-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/08_plot-min.png]]
#+BEGIN_SRC python
# We can see 4 outliers in the graph above, so let's get the top 5 games from that dataframe
@@ -155,7 +155,7 @@ df3.sort_values(by=['Global_Sales'], ascending=False).head(5)
#+END_SRC
#+CAPTION: Outliers of 2006 Sales
-[[https://img.0x4b1d.org/blog/20200720-data-exploration-video-game-sales/09_outliers-min.png]]
+[[https://img.cleberg.net/blog/20200720-data-exploration-video-game-sales/09_outliers-min.png]]
* Discussion
diff --git a/blog/2020-07-26-business-analysis.org b/blog/2020-07-26-business-analysis.org
index 999b976..4339eee 100644
--- a/blog/2020-07-26-business-analysis.org
+++ b/blog/2020-07-26-business-analysis.org
@@ -48,7 +48,7 @@ map_LNK
#+END_SRC
#+CAPTION: Blank Map
-[[https://img.0x4b1d.org/blog/20200726-ibm-data-science/01_blank_map-min.png]]
+[[https://img.cleberg.net/blog/20200726-ibm-data-science/01_blank_map-min.png]]
Now that we have defined our city and created the map, we need to go get the
business data. The Foursquare API will limit the results to 100 per API call, so
@@ -191,7 +191,7 @@ nearby_venues
#+END_SRC
#+CAPTION: Clean Data
-[[https://img.0x4b1d.org/blog/20200726-ibm-data-science/02_clean_data-min.png]]
+[[https://img.cleberg.net/blog/20200726-ibm-data-science/02_clean_data-min.png]]
* Visualize the Data
@@ -217,7 +217,7 @@ for lat, lng, name, categories in zip(nearby_venues['lat'], nearby_venues['lng']
map_LNK
#+END_SRC
-![Initial data map](https://img.0x4b1d.org/blog/20200726-ibm-data-science/03_data_map-min.png "Initial data map")
+![Initial data map](https://img.cleberg.net/blog/20200726-ibm-data-science/03_data_map-min.png "Initial data map")
* Clustering: /k-means/
@@ -306,7 +306,7 @@ map_clusters
#+END_SRC
#+CAPTION: Clustered Map
-[[https://img.0x4b1d.org/blog/20200726-ibm-data-science/04_clusters-min.png]]
+[[https://img.cleberg.net/blog/20200726-ibm-data-science/04_clusters-min.png]]
* Investigate Clusters
@@ -326,7 +326,7 @@ for x in range(0,6):
#+END_SRC
#+CAPTION: Venues per Cluster
-[[https://img.0x4b1d.org/blog/20200726-ibm-data-science/05_venues_per_cluster-min.png]]
+[[https://img.cleberg.net/blog/20200726-ibm-data-science/05_venues_per_cluster-min.png]]
Our last piece of analysis is to summarize the categories of businesses within
each cluster. With these results, we can clearly see that restaurants, coffee
@@ -355,10 +355,10 @@ with pd.option_context('display.max_rows', None, 'display.max_columns', None):
#+END_SRC
#+CAPTION: Venues per Cluster, pt. 1
-[[https://img.0x4b1d.org/blog/20200726-ibm-data-science/06_categories_per_cluster_pt1-min.png]]
+[[https://img.cleberg.net/blog/20200726-ibm-data-science/06_categories_per_cluster_pt1-min.png]]
#+CAPTION: Venues per Cluster, pt. 2
-[[https://img.0x4b1d.org/blog/20200726-ibm-data-science/07_categories_per_cluster_pt2-min.png]]
+[[https://img.cleberg.net/blog/20200726-ibm-data-science/07_categories_per_cluster_pt2-min.png]]
* Discussion
diff --git a/blog/2020-09-22-internal-audit.org b/blog/2020-09-22-internal-audit.org
index e10f8ea..92cb30d 100644
--- a/blog/2020-09-22-internal-audit.org
+++ b/blog/2020-09-22-internal-audit.org
@@ -2,7 +2,7 @@
#+title: What is Internal Audit?
#+CAPTION: Internal Audit Overview
-[[https://img.0x4b1d.org/blog/20200922-what-is-internal-audit/internal-audit-overview.jpg]]
+[[https://img.cleberg.net/blog/20200922-what-is-internal-audit/internal-audit-overview.jpg]]
* Definitions
@@ -103,13 +103,13 @@ released an updated version in 2020. Here is what the Three Lines of Defense
model has historically looked like:
#+CAPTION: 2013 Three Lines of Defense Model
-[[https://img.0x4b1d.org/blog/20200922-what-is-internal-audit/three_lines_model.png]]
+[[https://img.cleberg.net/blog/20200922-what-is-internal-audit/three_lines_model.png]]
I won't go into depth about the changes made to the model in this article.
Instead, let's take a look at the most current model.
#+CAPTION: 2020 Three Lines of Defense Model
-[[https://img.0x4b1d.org/blog/20200922-what-is-internal-audit/updated_three_lines_model.png]]
+[[https://img.cleberg.net/blog/20200922-what-is-internal-audit/updated_three_lines_model.png]]
The updated model forgets the strict idea of areas performing their own
functions or line of defense. Instead of talking about management, risk, and
@@ -138,7 +138,7 @@ changes to the audit process. The audit process is not set in stone, it's simply
a set of best practices so that audits can be performed consistently.
#+CAPTION: The Internal Audit Process
-[[https://img.0x4b1d.org/blog/20200922-what-is-internal-audit/internal-audit-process.jpg]]
+[[https://img.cleberg.net/blog/20200922-what-is-internal-audit/internal-audit-process.jpg]]
While different organizations may tweak the process, it will generally follow
this flow:
@@ -231,7 +231,7 @@ and file issues that could have been fixed at the beginning.
* Data Science & Data Analytics
#+CAPTION: Data Science Skill Set
-[[https://img.0x4b1d.org/blog/20200922-what-is-internal-audit/data-science-skillset.png]]
+[[https://img.cleberg.net/blog/20200922-what-is-internal-audit/data-science-skillset.png]]
One major piece of the internal audit function in the modern world is data
science. While the process is data science, most auditors will refer to anything
diff --git a/blog/2020-09-25-happiness-map.org b/blog/2020-09-25-happiness-map.org
index d511d9d..287e1da 100644
--- a/blog/2020-09-25-happiness-map.org
+++ b/blog/2020-09-25-happiness-map.org
@@ -59,7 +59,7 @@ geo_data.head()
#+END_SRC
#+CAPTION: GeoJSON Dataframe
-[[https://img.0x4b1d.org/blog/20200925-world-choropleth-map/geojson_df.png]]
+[[https://img.cleberg.net/blog/20200925-world-choropleth-map/geojson_df.png]]
Next, let's load the data from the Kaggle dataset. I've downloaded this file, so
update the file path if you have it somewhere else. After loading, let's take a
@@ -72,7 +72,7 @@ happy_data.head()
#+END_SRC
#+CAPTION: Happiness Dataframe
-[[https://img.0x4b1d.org/blog/20200925-world-choropleth-map/happiness_df.png]]
+[[https://img.cleberg.net/blog/20200925-world-choropleth-map/happiness_df.png]]
* Clean the Data
@@ -121,7 +121,7 @@ merged_df = merged_df.rename(columns = {'Country or region':'Country'})
#+END_SRC
#+CAPTION: Merged Dataframe
-[[https://img.0x4b1d.org/blog/20200925-world-choropleth-map/merged_df.png]]
+[[https://img.cleberg.net/blog/20200925-world-choropleth-map/merged_df.png]]
* Create the Map
@@ -159,7 +159,7 @@ folium.Choropleth(
Let's look at the resulting map.
#+CAPTION: Choropleth Map
-[[https://img.0x4b1d.org/blog/20200925-world-choropleth-map/map.png]]
+[[https://img.cleberg.net/blog/20200925-world-choropleth-map/map.png]]
* Create a Tooltip on Hover
@@ -214,4 +214,4 @@ The final image below will show you what the tooltip looks like whenever you
hover over a country.
#+CAPTION: Choropleth Map Tooltip
-[[https://img.0x4b1d.org/blog/20200925-world-choropleth-map/tooltip_map.png]]
+[[https://img.cleberg.net/blog/20200925-world-choropleth-map/tooltip_map.png]]
diff --git a/blog/2020-12-28-neon-drive.org b/blog/2020-12-28-neon-drive.org
index e69a5ad..fc17862 100644
--- a/blog/2020-12-28-neon-drive.org
+++ b/blog/2020-12-28-neon-drive.org
@@ -38,7 +38,7 @@ stereotype you can think of around retro-futuristic, synthwave arcades (in a
good way).
#+CAPTION: Neon Drive Menu
-[[https://img.0x4b1d.org/blog/20201228-neon-drive/neon_drive_menu.png]]
+[[https://img.cleberg.net/blog/20201228-neon-drive/neon_drive_menu.png]]
Once you get into the first level, we see that the choice of car fits right in
with the stereotypical cars of the 80s, like the [[https://en.wikipedia.org/wiki/DMC_DeLorean][DeLorean]] or the [[https://en.wikipedia.org/wiki/Ferrari_F40][Ferrari
@@ -46,19 +46,19 @@ F40]]. Each new level comes with new color schemes and cars, so you should never
get tired of the aesthetic.
#+CAPTION: Neon Drive Race
-[[https://img.0x4b1d.org/blog/20201228-neon-drive/neon_drive_race.png]]
+[[https://img.cleberg.net/blog/20201228-neon-drive/neon_drive_race.png]]
Personally, I love the orange and blue colors used in level 2:
#+CAPTION: Level 2
-[[https://img.0x4b1d.org/blog/20201228-neon-drive/neon_drive_level_2.png]]
+[[https://img.cleberg.net/blog/20201228-neon-drive/neon_drive_level_2.png]]
If you're the competitive type and getting 100% on all arcade machines isn't
enough, there are leaderboards for the regular part of the game, and the
endurance game mode.
#+CAPTION: Leaderboard
-[[https://img.0x4b1d.org/blog/20201228-neon-drive/neon_drive_leaderboard.png]]
+[[https://img.cleberg.net/blog/20201228-neon-drive/neon_drive_leaderboard.png]]
* Other Suggestions
diff --git a/blog/2020-12-29-zork.org b/blog/2020-12-29-zork.org
index e8fc44d..7ac950c 100644
--- a/blog/2020-12-29-zork.org
+++ b/blog/2020-12-29-zork.org
@@ -29,7 +29,7 @@ collect your trophies. However, if you want to play the game as it was truly
intended, you should try to play it without using the map.
#+CAPTION: Zork Map
-[[https://img.0x4b1d.org/blog/20201229-zork/zork_map.png]]
+[[https://img.cleberg.net/blog/20201229-zork/zork_map.png]]
/[[https://www.filfre.net/2012/01/exploring-zork-part-1/][Map Source]]/
@@ -50,7 +50,7 @@ adventures before, try to use simple commands like "go west," "look around," or
"hit troll with elvish sword."
#+CAPTION: Zork Screen, pt. 1
-[[https://img.0x4b1d.org/blog/20201229-zork/zork_01.png]]
+[[https://img.cleberg.net/blog/20201229-zork/zork_01.png]]
In this second screenshot, we see the player has entered the house and found the
trophy case in the living room. The lantern and sword in this room allow the
@@ -58,14 +58,14 @@ player to explore dark areas and attack enemies. If you don't use the lantern,
you won't be able to see anything in dark areas, and you may be eaten by a grue.
#+CAPTION: Zork Screen, pt. 2
-[[https://img.0x4b1d.org/blog/20201229-zork/zork_02.png]]
+[[https://img.cleberg.net/blog/20201229-zork/zork_02.png]]
Finally, we see that the player has found the first treasure: a jewel-encrusted
egg. These treasures can be taken back to the house and placed in the trophy
case or carried until you feel like you want to put things away.
#+CAPTION: Zork Screen, pt 3.
-[[https://img.0x4b1d.org/blog/20201229-zork/zork_03.png]]
+[[https://img.cleberg.net/blog/20201229-zork/zork_03.png]]
* Conclusion
diff --git a/blog/2021-01-01-seum.org b/blog/2021-01-01-seum.org
index 0054e37..e157ff0 100644
--- a/blog/2021-01-01-seum.org
+++ b/blog/2021-01-01-seum.org
@@ -30,7 +30,7 @@ hand is what allows you to use all the powers in the game.
Check out the screenshot below for one of the first panels of the storyline:
-![SEUM Story](https://img.0x4b1d.org/blog/20210101-seum/seum_story.png)
+![SEUM Story](https://img.cleberg.net/blog/20210101-seum/seum_story.png)
## Gameplay
@@ -57,28 +57,28 @@ For the main storyline, there are nine floors to beat. Each floor contains nine
regular levels, one boss level, and one bonus level; although you don't
technically need to beat all levels to advance to the next floor.
-![SEUM Floor Menu](https://img.0x4b1d.org/blog/20210101-seum/seum_floor.png)
+![SEUM Floor Menu](https://img.cleberg.net/blog/20210101-seum/seum_floor.png)
## In-Game Screenshots
The main menu gives you plenty of options for tuning your system, playing main
levels, playing the DLC, or exploring the other game modes.
-![SEUM Main Menu](https://img.0x4b1d.org/blog/20210101-seum/seum_menu.png)
+![SEUM Main Menu](https://img.cleberg.net/blog/20210101-seum/seum_menu.png)
Once you enter a level, you can look around and strategize before starting.
Clicking any button will start the menu, and you'll have to restart if you die.
One of the great things about SEUM is that it has great keyboard shortcuts. You
can quickly smash `R` to restart the level or `M` to return to the level menu.
-![SEUM Level](https://img.0x4b1d.org/blog/20210101-seum/seum_level.png)
+![SEUM Level](https://img.cleberg.net/blog/20210101-seum/seum_level.png)
Once you're able to win a level, you'll see the high scores and can watch
replays of the best scores.
-![SEUM Win](https://img.0x4b1d.org/blog/20210101-seum/seum_win.png)
+![SEUM Win](https://img.cleberg.net/blog/20210101-seum/seum_win.png)
Each regular level contains a beer in a disguised location that may take some
out-of-the-box thinking.
-![SEUM Beer](https://img.0x4b1d.org/blog/20210101-seum/seum_beer.png)
+![SEUM Beer](https://img.cleberg.net/blog/20210101-seum/seum_beer.png)
diff --git a/blog/2021-01-04-fediverse.org b/blog/2021-01-04-fediverse.org
index 0250e75..1365fe1 100644
--- a/blog/2021-01-04-fediverse.org
+++ b/blog/2021-01-04-fediverse.org
@@ -24,7 +24,7 @@ be on the same server.
However, responsible email admins are there to set rules and control the
traffic going in/out of the server.
-![Federated services diagram](https://img.0x4b1d.org/blog/20210104-a-simple-guide-to-the-fediverse/federated-example.svg)
+![Federated services diagram](https://img.cleberg.net/blog/20210104-a-simple-guide-to-the-fediverse/federated-example.svg)
The main objective of this architecture is to decentralize the control within
the internet connections. For example, if you run your own Mastodon instance,
diff --git a/blog/2021-01-07-ufw.org b/blog/2021-01-07-ufw.org
index 0e5e5c3..aad5b81 100644
--- a/blog/2021-01-07-ufw.org
+++ b/blog/2021-01-07-ufw.org
@@ -23,7 +23,7 @@ iptables.
application for users who are uncomfortable setting up a firewall through a
terminal.
-![](https://img.0x4b1d.org/blog/20210107-secure-your-network-with-the-uncomplicated-firewall/gufw.png)
+![](https://img.cleberg.net/blog/20210107-secure-your-network-with-the-uncomplicated-firewall/gufw.png)
## Getting Help
diff --git a/blog/2021-02-19-macos.org b/blog/2021-02-19-macos.org
index 4454717..33353b7 100644
--- a/blog/2021-02-19-macos.org
+++ b/blog/2021-02-19-macos.org
@@ -21,7 +21,7 @@ dev tools.
Before I move on to the technical aspects of my set-up, I want to take some time
and express my thoughts on the overall OS.
-![macOS Desktop](https://img.0x4b1d.org/blog/20210219-macos-testing-out-a-new-os/macos-desktop.png)
+![macOS Desktop](https://img.cleberg.net/blog/20210219-macos-testing-out-a-new-os/macos-desktop.png)
As expected, the initial computer setup is a breeze with Mac's guided GUI
installer.
@@ -69,7 +69,7 @@ recreate a terminal environment that I feel very comfortable using. See the
image below for a preview of the iTerm2 app with a split view between my macOS
desktop shell and an SSH session into my server.
-![iTerm2](https://img.0x4b1d.org/blog/20210219-macos-testing-out-a-new-os/iterm2.png)
+![iTerm2](https://img.cleberg.net/blog/20210219-macos-testing-out-a-new-os/iterm2.png)
## Xcode
diff --git a/blog/2021-03-28-gemini-capsule.org b/blog/2021-03-28-gemini-capsule.org
index bb55cdd..fe17864 100644
--- a/blog/2021-03-28-gemini-capsule.org
+++ b/blog/2021-03-28-gemini-capsule.org
@@ -175,4 +175,4 @@ Now that you've properly built your Sourcehut page, you can browse to
your-username.srht.site in a Gemini browser and view the final results. Take a
look at the image below for my Sourcehut Gemini capsule.
-![Gemini page on the amfora browser](https://img.0x4b1d.org/blog/20210328-launching-a-gemini-capsule/amfora.png)
+![Gemini page on the amfora browser](https://img.cleberg.net/blog/20210328-launching-a-gemini-capsule/amfora.png)
diff --git a/blog/2021-03-28-vaporwave-vs-outrun.org b/blog/2021-03-28-vaporwave-vs-outrun.org
index b441152..700a5d6 100644
--- a/blog/2021-03-28-vaporwave-vs-outrun.org
+++ b/blog/2021-03-28-vaporwave-vs-outrun.org
@@ -15,11 +15,11 @@ two genres are usually attributed to Vaporwave. For example, take a look at the
image search results for Vaporwave: the results include **a lot** of
Outrun-themed images. You'll find a similar trend almost everywhere.
-![](https://img.0x4b1d.org/blog/20210328-vaporwave-vs-outrun/vaporwave-search-results.png)
+![](https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/vaporwave-search-results.png)
## Vaporwave
-![](https://img.0x4b1d.org/blog/20210328-vaporwave-vs-outrun/macintosh-plus.png)
+![](https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/macintosh-plus.png)
Okay, so what is Vaporwave? I'm going to just copy-and-paste some general info
from the Wikipedia article on
@@ -72,7 +72,7 @@ aesthetically-pleasing parts of that past is a large part of Vaporwave.
## Outrun
-![Outrun](https://img.0x4b1d.org/blog/20210328-vaporwave-vs-outrun/outrun.png)
+![Outrun](https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/outrun.png)
Now, let's get to Outrun. This one is a little trickier since the genre has
largely been lumped under the Vaporwave title for so long. However, it stems
@@ -103,14 +103,14 @@ Outrun enthusiasts love what people in the 1980s thought the future would look
like. Take a look at a common video game discussed in Outrun circles, Far Cry 3:
Blood Dragon:
-![Fry Cry 3: Blood Dragon](https://img.0x4b1d.org/blog/20210328-vaporwave-vs-outrun/far-cry.png)
+![Fry Cry 3: Blood Dragon](https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/far-cry.png)
Another example that doesn't force the color scheme as hard as some online art
does is Kung Fury:
-![Kung Fury](https://img.0x4b1d.org/blog/20210328-vaporwave-vs-outrun/kung-fury.png)
+![Kung Fury](https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/kung-fury.png)
-![Kung Fury Hacker Scene](https://img.0x4b1d.org/blog/20210328-vaporwave-vs-outrun/kung-fury-hacker.png)
+![Kung Fury Hacker Scene](https://img.cleberg.net/blog/20210328-vaporwave-vs-outrun/kung-fury-hacker.png)
## Conclusion
diff --git a/blog/2021-03-30-vps-web-server.org b/blog/2021-03-30-vps-web-server.org
index 2226977..9648452 100644
--- a/blog/2021-03-30-vps-web-server.org
+++ b/blog/2021-03-30-vps-web-server.org
@@ -364,7 +364,7 @@ Now, test your domains by going to `https://example.com`.
To enable better security on your server, you'll need to enable a basic
firewall. For Ubuntu, we'll use
-[the uncomplicated firewall](https://0x4b1d.org/blog/secure-your-network-with-the-uncomplicated-firewall.html).
+[the uncomplicated firewall](https://cleberg.net/blog/secure-your-network-with-the-uncomplicated-firewall.html).
Now, add the following rules to the firewall allow SSH, Apache, and HTTP(S)
connections. If you need to, you can enable different ports for specifics
diff --git a/blog/2021-04-17-gemini-server.org b/blog/2021-04-17-gemini-server.org
index afb1da9..b6a7794 100644
--- a/blog/2021-04-17-gemini-server.org
+++ b/blog/2021-04-17-gemini-server.org
@@ -150,10 +150,10 @@ Here are some screenshots of the Gemini page I just created in the
[Lagrange](https://gmi.skyjake.fi/lagrange/) browser and the
[amfora](https://github.com/makeworld-the-better-one/amfora) browser.
-![GUI Gemini browser](https://img.0x4b1d.org/blog/20210417-hosting-a-gemini-server/lagrange.png)
+![GUI Gemini browser](https://img.cleberg.net/blog/20210417-hosting-a-gemini-server/lagrange.png)
_Lagrange_
-![CLI Gemini browser](https://img.0x4b1d.org/blog/20210417-hosting-a-gemini-server/amfora.png)
+![CLI Gemini browser](https://img.cleberg.net/blog/20210417-hosting-a-gemini-server/amfora.png)
_Amfora_
diff --git a/blog/2021-04-23-php-comment-system.org b/blog/2021-04-23-php-comment-system.org
index 38132fd..50c77f1 100644
--- a/blog/2021-04-23-php-comment-system.org
+++ b/blog/2021-04-23-php-comment-system.org
@@ -54,7 +54,7 @@ I blog in plain Markdown files, commit all articles to Git, and ensure that
future readers will be able to see the source data long after I'm gone, or the
website has gone offline. However, I still haven't committed any images served
on my blog to Git, as I'm not entirely sold on Git LFS yet - for now, images can
-be found at [img.0x4b1d.org](https://img.0x4b1d.org).
+be found at [img.cleberg.net](https://img.cleberg.net).
Saving my comments back to the Git repository ensures that another aspect of my
site will degrade gracefully.
diff --git a/blog/2021-12-04-cisa.org b/blog/2021-12-04-cisa.org
index cc511db..e67127f 100644
--- a/blog/2021-12-04-cisa.org
+++ b/blog/2021-12-04-cisa.org
@@ -43,7 +43,7 @@ commitment and quality of an employee, so I am accepting it too.
The CISA is broken down into five sections, each weighted with a percentage of
test questions that may appear.
-![CISA exam sections](https://img.0x4b1d.org/blog/20211204-i-passed-the-cisa/cisa-exam-sections.png)
+![CISA exam sections](https://img.cleberg.net/blog/20211204-i-passed-the-cisa/cisa-exam-sections.png)
Since the exam contains 150 questions, here's how those sections break down:
@@ -144,7 +144,7 @@ answered incorrectly and learned from my mistakes**.
| 5 | 55 | 85 | 140 | 61% |
| **Grand Total** | **228** | **479** | **707** | **68%** |
-![CISA practice question results](https://img.0x4b1d.org/blog/20211204-i-passed-the-cisa/cisa-practice-questions-results.png)
+![CISA practice question results](https://img.cleberg.net/blog/20211204-i-passed-the-cisa/cisa-practice-questions-results.png)
## Results
diff --git a/blog/2022-02-10-leaving-the-office.org b/blog/2022-02-10-leaving-the-office.org
index fd330a2..2e30f3e 100644
--- a/blog/2022-02-10-leaving-the-office.org
+++ b/blog/2022-02-10-leaving-the-office.org
@@ -43,7 +43,7 @@ and support, I believe these jobs could be both comfortable and efficient.
### Semi-Private Cubicles
-![Semi-Private Cubicles](https://img.0x4b1d.org/blog/20220210-leaving-office-based-work-in-the-past/private_cubicles.png)
+![Semi-Private Cubicles](https://img.cleberg.net/blog/20220210-leaving-office-based-work-in-the-past/private_cubicles.png)
After about a year, I was able to find another internship - this time, it was in
my field of interest: internal auditing. This was for a life insurance company
@@ -69,7 +69,7 @@ later in this post).
### Semi-Open Floor Concept
-![Semi-Open Floor Concept](https://img.0x4b1d.org/blog/20220210-leaving-office-based-work-in-the-past/semi_open_office.png)
+![Semi-Open Floor Concept](https://img.cleberg.net/blog/20220210-leaving-office-based-work-in-the-past/semi_open_office.png)
When I shifted to my first full-time internal audit job out of college, I was
working at a company that was headquartered on a floor in a downtown high-rise
@@ -95,7 +95,7 @@ to get work done, that was a non-starter.
### Hotel Office Concept
-![Hotel Office Concept](https://img.0x4b1d.org/blog/20220210-leaving-office-based-work-in-the-past/hotel_desks.png)
+![Hotel Office Concept](https://img.cleberg.net/blog/20220210-leaving-office-based-work-in-the-past/hotel_desks.png)
I currently work for a company remotely (for now) and travel to the office every
once in a while for events and to help coach the staff underneath me. The office
@@ -119,7 +119,7 @@ be very nice if you have a lot of meetings or webinars on a certain day.
## Home Office
-![Home Office](https://img.0x4b1d.org/blog/20220210-leaving-office-based-work-in-the-past/home_office.png)
+![Home Office](https://img.cleberg.net/blog/20220210-leaving-office-based-work-in-the-past/home_office.png)
Okay, now let's finally get to the home office concept. I have worked from home
for a little over two years at this point, across three different
@@ -224,4 +224,4 @@ office will have privacy and quietness in order for me to get my work done.
Cubicles are good! I agree with Alice (from the comic Dilbert):
-![Dilbert comic strip](https://img.0x4b1d.org/blog/20220210-leaving-office-based-work-in-the-past/dilbert_120109.png)
+![Dilbert comic strip](https://img.cleberg.net/blog/20220210-leaving-office-based-work-in-the-past/dilbert_120109.png)
diff --git a/blog/2022-02-16-debian-and-nginx.org b/blog/2022-02-16-debian-and-nginx.org
index 2421589..50cadf9 100644
--- a/blog/2022-02-16-debian-and-nginx.org
+++ b/blog/2022-02-16-debian-and-nginx.org
@@ -7,7 +7,7 @@ draft = false
## Server OS: Debian
-![Debian + neofetch](https://img.0x4b1d.org/blog/20220216-migrating-to-debian-and-nginx/neofetch.png)
+![Debian + neofetch](https://img.cleberg.net/blog/20220216-migrating-to-debian-and-nginx/neofetch.png)
I've used various Linux distributions throughout the years, but I've never used
anything except Ubuntu for my servers.
@@ -24,14 +24,14 @@ to Ubuntu for my purposes.
I did the normal things when first launching the VPS, such as adding a new user,
locking down SSH, etc. If you want to see that level of detail, read my other
post about
-[How to Set Up a VPS Web Server](https://0x4b1d.org/blog/how-to-set-up-a-vps-web-server/).
+[How to Set Up a VPS Web Server](https://cleberg.net/blog/how-to-set-up-a-vps-web-server/).
All of this has been similar, apart from small things such as the location of
users' home folders. No complaints at all from me - Debian seems great.
## Web Server: Nginx
-![Nginx status](https://img.0x4b1d.org/blog/20220216-migrating-to-debian-and-nginx/nginx.png)
+![Nginx status](https://img.cleberg.net/blog/20220216-migrating-to-debian-and-nginx/nginx.png)
Once I had the baseline server configuration set-up for Debian, I moved on to
trying out [Nginx](https://nginx.org) as my web server software. This required
@@ -163,12 +163,12 @@ can do with all of this.
## Gemini Server: Agate
-![Agate status](https://img.0x4b1d.org/blog/20220216-migrating-to-debian-and-nginx/agate.png)
+![Agate status](https://img.cleberg.net/blog/20220216-migrating-to-debian-and-nginx/agate.png)
Finally, I set up the Agate software on this server again to host my Gemini
server content, using Rust as I have before.
You can read my other post for more information on installing Agate:
-[Hosting a Gemini Server](https://0x4b1d.org/blog/hosting-a-gemini-server/).
+[Hosting a Gemini Server](https://cleberg.net/blog/hosting-a-gemini-server/).
All in all, Debian + Nginx is very slick and I prefer it over my old combination
of Ubuntu + Apache (although it's really just Nginx > Apache for me, since
diff --git a/blog/2022-02-17-exiftool.org b/blog/2022-02-17-exiftool.org
index f9a42bc..acb2f6b 100644
--- a/blog/2022-02-17-exiftool.org
+++ b/blog/2022-02-17-exiftool.org
@@ -46,7 +46,7 @@ distributions, but I really only care to test out this one package.
## Recursively Strip Data
I actually use this tool extensively to strip any photos uploaded to the website
-that serves all the images for my blog (`img.0x4b1d.org`).
+that serves all the images for my blog (`img.cleberg.net`).
The following command is incredibly useful and can be modified to include any
image extensions that `exiftool` supports:
@@ -60,4 +60,4 @@ the image for this blog post. You can see that the command will let you know how
many directories were scanned, how many images were updated, and how many images
were unchanged.
-![exiftool results](https://img.0x4b1d.org/blog/20220217-stripping-metadata-with-exiftool/exiftool.png)
+![exiftool results](https://img.cleberg.net/blog/20220217-stripping-metadata-with-exiftool/exiftool.png)
diff --git a/blog/2022-02-20-nginx-caching.org b/blog/2022-02-20-nginx-caching.org
index 096e892..d93a0b9 100644
--- a/blog/2022-02-20-nginx-caching.org
+++ b/blog/2022-02-20-nginx-caching.org
@@ -53,7 +53,7 @@ hours/day _ 60 minutes/hour \* 60 seconds/minute = 2,592,000 seconds).
The `Expires` field is now showing 22 March 2022, which is 30 days from the day
of this post, 20 February 2022.
-![Image Headers](https://img.0x4b1d.org/blog/20220220-caching-static-content-with-nginx/image_headers.png)
+![Image Headers](https://img.cleberg.net/blog/20220220-caching-static-content-with-nginx/image_headers.png)
## Caveats
diff --git a/blog/2022-02-22-tuesday.org b/blog/2022-02-22-tuesday.org
index 5a3ea00..b2cf440 100644
--- a/blog/2022-02-22-tuesday.org
+++ b/blog/2022-02-22-tuesday.org
@@ -27,7 +27,7 @@ Let's look at everything that fell in place today:
`въторъ`, meaning "the second."
5. Written in the classic monospaced, digital font (think of digital clocks from
the 80s/90s), there is nice symmetry to the numbers
- ([view the image here](https://img.0x4b1d.org/blog/20220222-tuesday/digital_font.png)!).
+ ([view the image here](https://img.cleberg.net/blog/20220222-tuesday/digital_font.png)!).
6. This one isn't naturally-occurring, but it seems people around the world are
celebrating the day. For example, a group is putting together
[a wedding of 222 couples at the California State Capitol in Sacramento](https://www.eventbrite.com/e/2-22-22-a-collective-wedding-ceremony-at-the-state-capitol-tickets-211434605597),
diff --git a/blog/2022-03-02-note-taking.org b/blog/2022-03-02-note-taking.org
index 16c99f3..884ad1d 100644
--- a/blog/2022-03-02-note-taking.org
+++ b/blog/2022-03-02-note-taking.org
@@ -36,7 +36,7 @@ render it as plain-text and I can read it just as easily.
For example, here's how TextEdit on macOS will open and display a Markdown file
in plain-text, since it does contain any features to preview Markdown as HTML:
-![Plain Text Markdown](https://img.0x4b1d.org/blog/20220302-easy-reliable-note-taking/plain_markdown.png)
+![Plain Text Markdown](https://img.cleberg.net/blog/20220302-easy-reliable-note-taking/plain_markdown.png)
## Saving & Syncing Files
@@ -93,12 +93,12 @@ incredibly easy and straightforward.
Here's an example of how my Markdown notes look when opened in plain-text mode:
-![Obsidian Markdown Source Mode](https://img.0x4b1d.org/blog/20220302-easy-reliable-note-taking/obsidian_source_mode.png)
+![Obsidian Markdown Source Mode](https://img.cleberg.net/blog/20220302-easy-reliable-note-taking/obsidian_source_mode.png)
Here's the "live preview" version, where the Markdown is rendered into its HTML
format:
-![Obsidian Markdown Live Preview](https://img.0x4b1d.org/blog/20220302-easy-reliable-note-taking/obsidian_live_preview.png)
+![Obsidian Markdown Live Preview](https://img.cleberg.net/blog/20220302-easy-reliable-note-taking/obsidian_live_preview.png)
### Programming on Desktop
diff --git a/blog/2022-03-03-financial-database.org b/blog/2022-03-03-financial-database.org
index 8c05dbd..e0f524d 100644
--- a/blog/2022-03-03-financial-database.org
+++ b/blog/2022-03-03-financial-database.org
@@ -45,7 +45,7 @@ account statements, and 126 pay statements. Overall, I'm guessing this took
anywhere between 4–8 hours. In comparison, it probably took me 2-3 days to
initially create the spreadsheet.
-![DB4S](https://img.0x4b1d.org/blog/20220303-maintaining-a-personal-financial-database/db4s.png)
+![DB4S](https://img.cleberg.net/blog/20220303-maintaining-a-personal-financial-database/db4s.png)
### Schema
@@ -238,7 +238,7 @@ def summary_data(accounts: pandas.DataFrame) -> None:
The result? A high-quality pie chart that is read directly by the
`public/index.html` template I use.
-![Summary Pie Chart](https://img.0x4b1d.org/blog/20220303-maintaining-a-personal-financial-database/summary_chart.png)
+![Summary Pie Chart](https://img.cleberg.net/blog/20220303-maintaining-a-personal-financial-database/summary_chart.png)
Other charts generated by this project include:
diff --git a/blog/2022-03-08-plex-migration.org b/blog/2022-03-08-plex-migration.org
index 9087263..0921b88 100644
--- a/blog/2022-03-08-plex-migration.org
+++ b/blog/2022-03-08-plex-migration.org
@@ -69,9 +69,9 @@ initrd /casper/initrd
boot
```
-![Ubuntu Server Installation 01](https://img.0x4b1d.org/blog/20220308-plex-media-server-migration/ubuntu_server_installation_01.png)
+![Ubuntu Server Installation 01](https://img.cleberg.net/blog/20220308-plex-media-server-migration/ubuntu_server_installation_01.png)
-![Ubuntu Server Installation 02](https://img.0x4b1d.org/blog/20220308-plex-media-server-migration/ubuntu_server_installation_02.png)
+![Ubuntu Server Installation 02](https://img.cleberg.net/blog/20220308-plex-media-server-migration/ubuntu_server_installation_02.png)
Once the machine is rebooted, enter the `e` screen again and add `nomodeset` to
the `linux ...` line again and press `Ctrl + X` to save the boot options.
@@ -195,7 +195,7 @@ caused issues with accessing the server from outside the network.
In my case, I use a single port forwarding rule in my router and needed to
update the Local LAN IP Address to the new server IP address.
-![Router port forwarding](https://img.0x4b1d.org/blog/20220308-plex-media-server-migration/port_forwarding.png)
+![Router port forwarding](https://img.cleberg.net/blog/20220308-plex-media-server-migration/port_forwarding.png)
---
@@ -226,8 +226,8 @@ following command to view the available GPUs, statistics, and processes:
sudo nvidia-smi
```
-![nvidia-smi](https://img.0x4b1d.org/blog/20220308-plex-media-server-migration/nvidia_smi.png)
+![nvidia-smi](https://img.cleberg.net/blog/20220308-plex-media-server-migration/nvidia_smi.png)
Finally, enable hardware transcoding settings in the Plex application:
-![Plex transcoding settings](https://img.0x4b1d.org/blog/20220308-plex-media-server-migration/plex_transcoding.png)
+![Plex transcoding settings](https://img.cleberg.net/blog/20220308-plex-media-server-migration/plex_transcoding.png)
diff --git a/blog/2022-03-23-nextcloud-on-ubuntu.org b/blog/2022-03-23-nextcloud-on-ubuntu.org
index b0f1589..f5642c0 100644
--- a/blog/2022-03-23-nextcloud-on-ubuntu.org
+++ b/blog/2022-03-23-nextcloud-on-ubuntu.org
@@ -152,10 +152,10 @@ IP address.
See the screenshots below for the dashboard and a settings page on my instance
of Nextcloud, using the `Breeze Dark` theme I installed from the Apps page.
-![Nextcloud Dashboard](https://img.0x4b1d.org/blog/20220323-installing-nextcloud-on-ubuntu/nextcloud_dashboard.png)
+![Nextcloud Dashboard](https://img.cleberg.net/blog/20220323-installing-nextcloud-on-ubuntu/nextcloud_dashboard.png)
_Figure 01: Nextcloud Dashboard_
-![Nextcloud Settings](https://img.0x4b1d.org/blog/20220323-installing-nextcloud-on-ubuntu/nextcloud_settings.png)
+![Nextcloud Settings](https://img.cleberg.net/blog/20220323-installing-nextcloud-on-ubuntu/nextcloud_settings.png)
_Figure 02: Nextcloud Security Settings_
diff --git a/blog/2022-03-24-server-hardening.org b/blog/2022-03-24-server-hardening.org
index 59fae9d..b91ef0e 100644
--- a/blog/2022-03-24-server-hardening.org
+++ b/blog/2022-03-24-server-hardening.org
@@ -133,7 +133,7 @@ sudo ufw allow 22
sudo ufw enable
```
-![ufw](https://img.0x4b1d.org/blog/20220324-hardening-a-public-facing-home-server/ufw.png)
+![ufw](https://img.cleberg.net/blog/20220324-hardening-a-public-facing-home-server/ufw.png)
### `ssh`
@@ -203,7 +203,7 @@ will not include all the details in this post. To see how to configure MFA for
`ssh`, see my other post:
[Enabling MFA for SSH](/blog/enable-totp-mfa-for-ssh/).
-![SSH MFA](https://img.0x4b1d.org/blog/20220324-hardening-a-public-facing-home-server/ssh_mfa.png)
+![SSH MFA](https://img.cleberg.net/blog/20220324-hardening-a-public-facing-home-server/ssh_mfa.png)
### `fail2ban`
@@ -223,7 +223,7 @@ sudo fail2ban-client status sshd
This should be used as a last-resort defense and shouldn't be a replacement for
the security measures mentioned above.
-![fail2ban](https://img.0x4b1d.org/blog/20220324-hardening-a-public-facing-home-server/fail2ban.png)
+![fail2ban](https://img.cleberg.net/blog/20220324-hardening-a-public-facing-home-server/fail2ban.png)
## Switch
diff --git a/blog/2022-04-09-pinetime.org b/blog/2022-04-09-pinetime.org
index 5f5bc51..0bd7814 100644
--- a/blog/2022-04-09-pinetime.org
+++ b/blog/2022-04-09-pinetime.org
@@ -50,7 +50,7 @@ information, the watch, and a charger (it does not include a USB wall adapter).
The watch itself was able to turn on immediately when I pulled it out of the
box, but the battery was depleted and required charging right away.
-![PineTime Box Contents](https://img.0x4b1d.org/blog/20220409-pinetime-smart-watch/pinetime_box_contents.png)
+![PineTime Box Contents](https://img.cleberg.net/blog/20220409-pinetime-smart-watch/pinetime_box_contents.png)
## Software
@@ -65,7 +65,7 @@ you can see in the watch OS,
- Basic font and screen pixel design.
- Swipe gestures to access other screens.
-![PineTime Screens](https://img.0x4b1d.org/blog/20220409-pinetime-smart-watch/pinetime.png)
+![PineTime Screens](https://img.cleberg.net/blog/20220409-pinetime-smart-watch/pinetime.png)
The OS itself is fantastic in terms of functionality for me. It does exactly
what a smartwatch should do - track time, steps, heart rates, and connect to
@@ -97,18 +97,18 @@ This app provides the following for PineTime owners:
I mashed up a few screenshots to show off the home page, menu, firmware update,
and notification test screens:
-![InfiniLink Home](https://img.0x4b1d.org/blog/20220409-pinetime-smart-watch/infinilink_home.png)
+![InfiniLink Home](https://img.cleberg.net/blog/20220409-pinetime-smart-watch/infinilink_home.png)
Another big feature of InfiniLink is the ability to track pedometer steps in a
collection of beautiful graphs, with the option to change your step goal and
add in manual steps.
-![InfiniLink Steps](https://img.0x4b1d.org/blog/20220409-pinetime-smart-watch/infinilink_steps.png)
+![InfiniLink Steps](https://img.cleberg.net/blog/20220409-pinetime-smart-watch/infinilink_steps.png)
Finally, there are charts to display the battery percentage and heart rates over
time. This area also comes with an option to clear data.
-![InfiniLink Charts](https://img.0x4b1d.org/blog/20220409-pinetime-smart-watch/infinilink_charts.png)
+![InfiniLink Charts](https://img.cleberg.net/blog/20220409-pinetime-smart-watch/infinilink_charts.png)
## Final Thoughts
diff --git a/blog/2022-06-16-terminal-lifestyle.org b/blog/2022-06-16-terminal-lifestyle.org
index febd712..c248ea9 100644
--- a/blog/2022-06-16-terminal-lifestyle.org
+++ b/blog/2022-06-16-terminal-lifestyle.org
@@ -69,14 +69,14 @@ I am using [Lynx](https://lynx.invisible-island.net), a text-based browser that
runs quickly and easily in the terminal. Lynx allows me to browser most websites
by simply typing `g` and then typing in the URL I want.
-![Lynx](https://img.0x4b1d.org/blog/20220616-terminal-lifestyle/lynx.png)
+![Lynx](https://img.cleberg.net/blog/20220616-terminal-lifestyle/lynx.png)
If you need a search engine while in Lynx, I recommend [DuckDuckGo
(Lite)](https://lite.duckduckgo.com/lite/), which allows you to search the web
using their text-only interface.
![DuckDuckGo
-!Lite](https://img.0x4b1d.org/blog/20220616-terminal-lifestyle/ddg.png)
+!Lite](https://img.cleberg.net/blog/20220616-terminal-lifestyle/ddg.png)
Eventually, you will run into websites that don't work (or are just too ugly
and messy) in a text-only mode, and you'll be forced to switch over to a GUI
@@ -120,7 +120,7 @@ Overall, I like gomuks and am able to enjoy all the features I was using in
Element. The only hiccup I have occurred is manually downloading images to view
them, which can be annoying.
-![gomuks](https://img.0x4b1d.org/blog/20220616-terminal-lifestyle/gomuks.png)
+![gomuks](https://img.cleberg.net/blog/20220616-terminal-lifestyle/gomuks.png)
### Email
@@ -150,7 +150,7 @@ my terminal and have found quick success with it.
I'll show you a quick screenshot first:
-![Newsboat](https://img.0x4b1d.org/blog/20220616-terminal-lifestyle/newsboat.png)
+![Newsboat](https://img.cleberg.net/blog/20220616-terminal-lifestyle/newsboat.png)
The configuration was super easy for this app; I simply installed the app,
created a file for URLs, and imported my OPML subscriptions that I had exported
@@ -199,4 +199,4 @@ explored the best terminal set-up for programming. However, I have seen many
peers find success configuring `vim` and `emacs`, so that's where I will start
when I pick my projects back up.
-![nano](https://img.0x4b1d.org/blog/20220616-terminal-lifestyle/nano.png)
+![nano](https://img.cleberg.net/blog/20220616-terminal-lifestyle/nano.png)
diff --git a/blog/2022-07-25-curseradio.org b/blog/2022-07-25-curseradio.org
index bf46f2a..9dc6b67 100644
--- a/blog/2022-07-25-curseradio.org
+++ b/blog/2022-07-25-curseradio.org
@@ -16,7 +16,7 @@ then walk through the installation process I took to get `curseradio` working.
## Features
-![curseradio](https://img.0x4b1d.org/blog/20220725-curseradio/curseradio.png "curseradio")
+![curseradio](https://img.cleberg.net/blog/20220725-curseradio/curseradio.png "curseradio")
The radio player itself is quite minimal. As you can see in the screenshot
above, it contains a simple plaintext list of all available categories, which
diff --git a/blog/2022-09-17-serenity-os.org b/blog/2022-09-17-serenity-os.org
index 700edb5..329e91c 100644
--- a/blog/2022-09-17-serenity-os.org
+++ b/blog/2022-09-17-serenity-os.org
@@ -89,24 +89,24 @@ wasn't connecting to my Fedora host properly.
The initial launch of the image displays the SerenityOS desktop, with a simple
terminal already launched:
-![](https://img.0x4b1d.org/blog/20220917-serenityos/initial_launch.png)
+![](https://img.cleberg.net/blog/20220917-serenityos/initial_launch.png)
Here you can see the Fire application (literally just shows fire burning), a
browser with the local Serenity Browser page loaded, and a text editor.
-![](https://img.0x4b1d.org/blog/20220917-serenityos/basic_apps.png)
+![](https://img.cleberg.net/blog/20220917-serenityos/basic_apps.png)
I also poked around the system utilities and found most tools you'd expect to
find within a standard desktop.
-![](https://img.0x4b1d.org/blog/20220917-serenityos/system_monitor.png)
+![](https://img.cleberg.net/blog/20220917-serenityos/system_monitor.png)
Lastly, I noted that the default desktop contains numerous pre-defined themes to
choose from. This is a small piece, but it's actually wonderful to see desktop
developers consider theming directly out of the box rather than using an
addon-based mentality.
-![](https://img.0x4b1d.org/blog/20220917-serenityos/themes.png)
+![](https://img.cleberg.net/blog/20220917-serenityos/themes.png)
I didn't take a screenshot of the other pre-installed games, but I did spend
nearly 30 minutes playing Solitaire before remembering that I was supposed to be
diff --git a/blog/2022-10-20-syncthing.org b/blog/2022-10-20-syncthing.org
index 46d7d51..20e25a9 100644
--- a/blog/2022-10-20-syncthing.org
+++ b/blog/2022-10-20-syncthing.org
@@ -88,7 +88,7 @@ settings, add/modify synced files, and add/modify connected devices.
Here's an example web GUI dashboard:
-![Syncthing Dashboard](https://img.0x4b1d.org/blog/20221020-syncthing/syncthing_gui.png "Syncthing Dashboard")
+![Syncthing Dashboard](https://img.cleberg.net/blog/20221020-syncthing/syncthing_gui.png "Syncthing Dashboard")
### Remote Devices
diff --git a/blog/2022-11-29-nginx-referrer-ban-list.org b/blog/2022-11-29-nginx-referrer-ban-list.org
index 7995106..2f71666 100644
--- a/blog/2022-11-29-nginx-referrer-ban-list.org
+++ b/blog/2022-11-29-nginx-referrer-ban-list.org
@@ -103,7 +103,7 @@ In order to test the results, let's curl the contents of our site. To start,
I'll curl the site normally:
```sh
-curl https://0x4b1d.org
+curl https://cleberg.net
```
The HTML contents of the page come back successfully:
@@ -115,7 +115,7 @@ The HTML contents of the page come back successfully:
Next, let's include a banned referrer:
```sh
-curl --referer https://news.ycombinator.com https://0x4b1d.org
+curl --referer https://news.ycombinator.com https://cleberg.net
```
This time, I'm met with a 403 Forbidden response page. That means we are
diff --git a/blog/2023-01-05-mass-unlike-tumblr-posts.org b/blog/2023-01-05-mass-unlike-tumblr-posts.org
index b335846..387ec36 100644
--- a/blog/2023-01-05-mass-unlike-tumblr-posts.org
+++ b/blog/2023-01-05-mass-unlike-tumblr-posts.org
@@ -49,7 +49,7 @@ sure you're on the "Console" tab. It should look something like this (this is
in Firefox, Chromium should be similar):
![Firefox Dev
-!Tools](https:///img.0x4b1d.org/blog/20230105-mass-unlike-tumblr-posts/dev_console.png "Firefox Dev Tools")
+!Tools](https:///img.cleberg.net/blog/20230105-mass-unlike-tumblr-posts/dev_console.png "Firefox Dev Tools")
All you need to do is paste the following snippet into the dev console. This
code will collect all unlike buttons (`elements`) and then click each button to
@@ -80,7 +80,7 @@ You can see the below screenshot showing that I pasted the snippet into the
console, pressed Enter, and then the posts are automatically unliked.
![Script
-!Results](https:///img.0x4b1d.org/blog/20230105-mass-unlike-tumblr-posts/script_results.png "Script Results")
+!Results](https:///img.cleberg.net/blog/20230105-mass-unlike-tumblr-posts/script_results.png "Script Results")
Thinking about this further, I would bet that this would be fairly simple to
package into a browser add-on so that users could install the add-on, go to
diff --git a/blog/2023-01-23-random-mullvad-wireguard.org b/blog/2023-01-23-random-mullvad-wireguard.org
index e894abd..200b498 100644
--- a/blog/2023-01-23-random-mullvad-wireguard.org
+++ b/blog/2023-01-23-random-mullvad-wireguard.org
@@ -82,7 +82,7 @@ You can also go to the [Connection Check |
Mullvad](https://mullvad.net/en/check/) page to see if you are fully connected
to Mullvad and if any leaks exist.
-![Mullvad Connection Check](https://img.0x4b1d.org/blog/20230123-random-mullvad-wireguard/mullvad_check.png "Mullvad Connection Check")
+![Mullvad Connection Check](https://img.cleberg.net/blog/20230123-random-mullvad-wireguard/mullvad_check.png "Mullvad Connection Check")
## Disconnecting from the Wireguard Connection
diff --git a/blog/2023-01-28-self-hosting-wger-workout-manager.org b/blog/2023-01-28-self-hosting-wger-workout-manager.org
index 46d2e66..4e1730d 100644
--- a/blog/2023-01-28-self-hosting-wger-workout-manager.org
+++ b/blog/2023-01-28-self-hosting-wger-workout-manager.org
@@ -145,4 +145,4 @@ I have no need for a food log or calorie tracker at the moment.
You can see an example of a dashboard with placeholder data here:
-![wger dashboard](https://img.0x4b1d.org/blog/20230128-wger/wger.png "wger dashboard")
+![wger dashboard](https://img.cleberg.net/blog/20230128-wger/wger.png "wger dashboard")
diff --git a/blog/2023-06-08-goaccess-geoip.org b/blog/2023-06-08-goaccess-geoip.org
index b3224fb..a214831 100644
--- a/blog/2023-06-08-goaccess-geoip.org
+++ b/blog/2023-06-08-goaccess-geoip.org
@@ -54,12 +54,12 @@ zcat /var/log/nginx/example.access.log.*.gz | goaccess \
See below for an example of the HTML output:
-![GoAccess HTML](https://img.0x4b1d.org/blog/20230608-goaccess/goaccess-dashboard.png "GoAccess HTML")
+![GoAccess HTML](https://img.cleberg.net/blog/20230608-goaccess/goaccess-dashboard.png "GoAccess HTML")
You can also see the GeoIP card created by the integration of the MaxMind
database information.
-![GoAccess GeoIP](https://img.0x4b1d.org/blog/20230608-goaccess/goaccess-geoip.png "GoAccess GeoIP")
+![GoAccess GeoIP](https://img.cleberg.net/blog/20230608-goaccess/goaccess-geoip.png "GoAccess GeoIP")
That's all there is to it!
Informational data is provided in an organized fashion with minimal effort.
diff --git a/blog/2023-06-08-self-hosting-baikal-server.org b/blog/2023-06-08-self-hosting-baikal-server.org
index ea7e0a3..d35e5b3 100644
--- a/blog/2023-06-08-self-hosting-baikal-server.org
+++ b/blog/2023-06-08-self-hosting-baikal-server.org
@@ -66,7 +66,7 @@ which will show the version of the app, status of the admin/CalDAV/CardDAV
services, and the number of users, calendars, events, address books, and
contacts.
-![Baïkal Dashboard](https://img.0x4b1d.org/blog/20230608-baikal/baikal-dashboard.png "Baïkal Dashboard")
+![Baïkal Dashboard](https://img.cleberg.net/blog/20230608-baikal/baikal-dashboard.png "Baïkal Dashboard")
To create a new user, navigate to the `Users and resources` page. This process
is as simple as entering a username, password, and email.
diff --git a/blog/2023-06-18-unifi-ip-blocklist.org b/blog/2023-06-18-unifi-ip-blocklist.org
index 2e14a59..25f66e2 100644
--- a/blog/2023-06-18-unifi-ip-blocklist.org
+++ b/blog/2023-06-18-unifi-ip-blocklist.org
@@ -31,7 +31,7 @@ Settings > Profiles.
Within this page, choose the `IP Groups` tab and click `Create New`.
-![Network Profiles](https://img.0x4b1d.org/blog/20230618-unifi-ip-blocklist/unifi_profiles.png "Network Profiles")
+![Network Profiles](https://img.cleberg.net/blog/20230618-unifi-ip-blocklist/unifi_profiles.png "Network Profiles")
Each IP Group profile can be used as one of three options:
@@ -44,7 +44,7 @@ different IP addresses and a subnet.
Once you've added all IP addresses and subnets, click the `Apply` button
that should appear at the bottom.
-![Network Profile IPs](https://img.0x4b1d.org/blog/20230618-unifi-ip-blocklist/abusive_ips.png "Network Profile IPs")
+![Network Profile IPs](https://img.cleberg.net/blog/20230618-unifi-ip-blocklist/abusive_ips.png "Network Profile IPs")
At this point, the IPv4 Address/Subnet has been created but not yet used.
@@ -66,7 +66,7 @@ entry should contain the following settings:
Customize the remaining configurations to your liking, and then save and enable
the firewall rule.
-![Firewall Rule](https://img.0x4b1d.org/blog/20230618-unifi-ip-blocklist/firewall_drop_rule.png "Firewall Rule")
+![Firewall Rule](https://img.cleberg.net/blog/20230618-unifi-ip-blocklist/firewall_drop_rule.png "Firewall Rule")
Once enabled, the Unifi machine will be able to drop all incoming connections
from the defined IP addresses and subnets within the created profile.
diff --git a/blog/2023-06-23-byobu.org b/blog/2023-06-23-byobu.org
index ee19c4a..abc783d 100644
--- a/blog/2023-06-23-byobu.org
+++ b/blog/2023-06-23-byobu.org
@@ -18,7 +18,7 @@ later and update this post with more content.
Take a look below at my current multi-window set-up in byobu while I write this
blog post:
-![byobu](https://img.0x4b1d.org/blog/20230623-byobu/byobu.png "byobu")
+![byobu](https://img.cleberg.net/blog/20230623-byobu/byobu.png "byobu")
## Keybindings
diff --git a/blog/2023-06-23-self-hosting-convos-irc.org b/blog/2023-06-23-self-hosting-convos-irc.org
index eca881e..2f62061 100644
--- a/blog/2023-06-23-self-hosting-convos-irc.org
+++ b/blog/2023-06-23-self-hosting-convos-irc.org
@@ -128,10 +128,10 @@ excerpt of the chat screen.
There are numerous themes to choose from; the theme shown in the images
below is Dracula.
-![Convos Home](https://img.0x4b1d.org/blog/20230623-convos/convos_home.png
+![Convos Home](https://img.cleberg.net/blog/20230623-convos/convos_home.png
"Convos Home")
-![Convos Chat](https://img.0x4b1d.org/blog/20230623-convos/convos_chat.png
+![Convos Chat](https://img.cleberg.net/blog/20230623-convos/convos_chat.png
"Convos Chat")
## Registering a Nickname
diff --git a/blog/2023-06-30-self-hosting-voyager-lemmy-client.org b/blog/2023-06-30-self-hosting-voyager-lemmy-client.org
index d5f9fc6..5eaacce 100644
--- a/blog/2023-06-30-self-hosting-voyager-lemmy-client.org
+++ b/blog/2023-06-30-self-hosting-voyager-lemmy-client.org
@@ -120,5 +120,5 @@ sudo systemctl restart nginx.service
The site will now be available at the `server_name` you specified above!
-You can visit my instance at [voyager.0x4b1d.org](https://voyager.0x4b1d.org)
+You can visit my instance at [voyager.cleberg.net](https://voyager.cleberg.net)
for an example.
diff --git a/blog/2023-09-15-gitweb.org b/blog/2023-09-15-gitweb.org
index 3da82f8..9179d70 100644
--- a/blog/2023-09-15-gitweb.org
+++ b/blog/2023-09-15-gitweb.org
@@ -15,7 +15,7 @@ and display information for all repositories in a chosen directory.
See below for the final result:
-![Gitweb](https://img.0x4b1d.org/blog/20230915-gitweb/gitweb.png "Gitweb")
+![Gitweb](https://img.cleberg.net/blog/20230915-gitweb/gitweb.png "Gitweb")
## Install Dependencies
diff --git a/blog/2023-10-11-self-hosting-authelia.org b/blog/2023-10-11-self-hosting-authelia.org
index 8480431..0a9830d 100644
--- a/blog/2023-10-11-self-hosting-authelia.org
+++ b/blog/2023-10-11-self-hosting-authelia.org
@@ -437,10 +437,10 @@ sudo systemctl restart nginx.service
When visiting the protected domain, you will now be redirected to your
authentication domain and presented with the Authelia login portal.
-![Authelia Portal](https://img.0x4b1d.org/blog/20231010-authelia/authelia_portal.png "Authelia Portal")
+![Authelia Portal](https://img.cleberg.net/blog/20231010-authelia/authelia_portal.png "Authelia Portal")
Once you've successfully authenticated, you can visit your authentication domain
directly and see that you're currently authenticated to any domain protected by
Authelia.
-![Authelia Success](https://img.0x4b1d.org/blog/20231010-authelia/authelia_success.png "Authelia Success")
+![Authelia Success](https://img.cleberg.net/blog/20231010-authelia/authelia_success.png "Authelia Success")
diff --git a/blog/2023-10-15-alpine-ssh-hardening.org b/blog/2023-10-15-alpine-ssh-hardening.org
index 923bd20..2ba483d 100644
--- a/blog/2023-10-15-alpine-ssh-hardening.org
+++ b/blog/2023-10-15-alpine-ssh-hardening.org
@@ -56,5 +56,5 @@ ssh-audit localhost
If everything succeeded, the results will show as all green. If anything is
yellow, orange, or red, you may need to tweak additional settings.
-![ssh audit](https://img.0x4b1d.org/blog/20231015-ssh-hardening/ssh-audit.png
+![ssh audit](https://img.cleberg.net/blog/20231015-ssh-hardening/ssh-audit.png
"ssh-audit")
diff --git a/blog/2023-10-17-self-hosting-anonymousoverflow.org b/blog/2023-10-17-self-hosting-anonymousoverflow.org
index f95aa35..725316c 100644
--- a/blog/2023-10-17-self-hosting-anonymousoverflow.org
+++ b/blog/2023-10-17-self-hosting-anonymousoverflow.org
@@ -7,7 +7,7 @@ description = "A quick guide to self-hosting AnonymousOverflow."
## Overview
I recently launched an instance of AnonymousOverflow at
-[ao.0x4b1d.org](https://ao.0x4b1d.org) and wanted to write a brief post on how
+[ao.cleberg.net](https://ao.cleberg.net) and wanted to write a brief post on how
easy it is to install with Docker Compose and Nginx.
This guide uses Ubuntu server, Docker Compose, and Nginx as a reverse proxy.
@@ -128,4 +128,4 @@ sudo systemctl restart nginx.service
```
The website will now be available publicly. Visit
-[my instance](https://ao.0x4b1d.org) for an example.
+[my instance](https://ao.cleberg.net) for an example.