adding features

This commit is contained in:
Matt Reeves 2024-02-22 19:42:02 +00:00
parent 942d07b5f7
commit c74df92904
38 changed files with 5257 additions and 256 deletions

View file

@ -12,8 +12,8 @@
<link rel="canonical" href="https://mafyuh.github.io/404.html">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -116,8 +116,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span>Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>

349
archives/index.html Normal file
View file

@ -0,0 +1,349 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>Archives | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="archives">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/archives/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/archives/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="Archives" />
<meta property="og:description" content="archives" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/archives/" /><meta property="article:section" content="posts" />
<meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Archives"/>
<meta name="twitter:description" content="archives"/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Archives",
"item": "https://mafyuh.github.io/archives/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Archives",
"name": "Archives",
"description": "archives",
"keywords": [
],
"articleBody": "",
"wordCount" : "0",
"inLanguage": "en",
"datePublished": "0001-01-01T00:00:00Z",
"dateModified": "0001-01-01T00:00:00Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/archives/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="list" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span class="active">Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<header class="page-header">
<h1>
Archives
<a href="/posts/index.xml" title="RSS" aria-label="RSS">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
stroke-linecap="round" stroke-linejoin="round" height="23">
<path d="M4 11a9 9 0 0 1 9 9" />
<path d="M4 4a16 16 0 0 1 16 16" />
<circle cx="5" cy="19" r="1" />
</svg>
</a>
</h1>
</header>
<div class="archive-year">
<h2 class="archive-year-header">2024<sup class="archive-count">&nbsp;&nbsp;1</sup>
</h2>
<div class="archive-month">
<h3 class="archive-month-header">February<sup class="archive-count">&nbsp;&nbsp;1</sup></h3>
<div class="archive-posts">
<div class="archive-entry">
<h3 class="archive-entry-title entry-hint-parent">Resize Ubuntu VM Disk in Proxmox
</h3>
<div class="archive-meta"><span title='2024-02-06 02:58:07 +0000 UTC'>February 6, 2024</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;53 words&nbsp;·&nbsp;Mafyuh</div>
<a class="entry-link" aria-label="post link to Resize Ubuntu VM Disk in Proxmox" href="https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/"></a>
</div>
</div>
</div>
</div>
<div class="archive-year">
<h2 class="archive-year-header">2023<sup class="archive-count">&nbsp;&nbsp;6</sup>
</h2>
<div class="archive-month">
<h3 class="archive-month-header">November<sup class="archive-count">&nbsp;&nbsp;2</sup></h3>
<div class="archive-posts">
<div class="archive-entry">
<h3 class="archive-entry-title entry-hint-parent">Proton Mail - SimpleLogin authentik Social Login Setup
</h3>
<div class="archive-meta"><span title='2023-11-12 16:20:00 +0000 UTC'>November 12, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;227 words&nbsp;·&nbsp;Mafyuh</div>
<a class="entry-link" aria-label="post link to Proton Mail - SimpleLogin authentik Social Login Setup" href="https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/"></a>
</div>
<div class="archive-entry">
<h3 class="archive-entry-title entry-hint-parent">How To Automate Jellyfin Issue Handling
</h3>
<div class="archive-meta"><span title='2023-11-11 16:20:00 +0000 UTC'>November 11, 2023</span>&nbsp;·&nbsp;19 min&nbsp;·&nbsp;3952 words&nbsp;·&nbsp;Mafyuh</div>
<a class="entry-link" aria-label="post link to How To Automate Jellyfin Issue Handling" href="https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/"></a>
</div>
</div>
</div>
<div class="archive-month">
<h3 class="archive-month-header">October<sup class="archive-count">&nbsp;&nbsp;2</sup></h3>
<div class="archive-posts">
<div class="archive-entry">
<h3 class="archive-entry-title entry-hint-parent">How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager
</h3>
<div class="archive-meta"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;344 words&nbsp;·&nbsp;Mafyuh</div>
<a class="entry-link" aria-label="post link to How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager" href="https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/"></a>
</div>
<div class="archive-entry">
<h3 class="archive-entry-title entry-hint-parent">How to authenticate Zammad via SAML with Nginx Proxy Manager
</h3>
<div class="archive-meta"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;107 words&nbsp;·&nbsp;Mafyuh</div>
<a class="entry-link" aria-label="post link to How to authenticate Zammad via SAML with Nginx Proxy Manager" href="https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"></a>
</div>
</div>
</div>
<div class="archive-month">
<h3 class="archive-month-header">September<sup class="archive-count">&nbsp;&nbsp;1</sup></h3>
<div class="archive-posts">
<div class="archive-entry">
<h3 class="archive-entry-title entry-hint-parent">How To Authenticate KASM via authentik
</h3>
<div class="archive-meta"><span title='2023-09-30 16:20:00 +0000 UTC'>September 30, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;393 words&nbsp;·&nbsp;Mafyuh</div>
<a class="entry-link" aria-label="post link to How To Authenticate KASM via authentik" href="https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/"></a>
</div>
</div>
</div>
<div class="archive-month">
<h3 class="archive-month-header">August<sup class="archive-count">&nbsp;&nbsp;1</sup></h3>
<div class="archive-posts">
<div class="archive-entry">
<h3 class="archive-entry-title entry-hint-parent">Software
</h3>
<div class="archive-meta"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh</div>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/posts/software/"></a>
</div>
</div>
</div>
</div>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
</body>
</html>

File diff suppressed because one or more lines are too long

View file

@ -12,8 +12,8 @@
<link rel="canonical" href="https://mafyuh.github.io/categories/import-2023-08-26-0406/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -117,8 +117,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span>Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
@ -151,7 +156,7 @@ Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI...</p>
</div>
<footer class="entry-footer"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/post/software/"></a>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/posts/software/"></a>
</article>
</main>

View file

@ -10,9 +10,9 @@
<atom:link href="https://mafyuh.github.io/categories/import-2023-08-26-0406/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Software</title>
<link>https://mafyuh.github.io/post/software/</link>
<link>https://mafyuh.github.io/posts/software/</link>
<pubDate>Sat, 26 Aug 2023 00:13:40 +0000</pubDate>
<guid>https://mafyuh.github.io/post/software/</guid>
<guid>https://mafyuh.github.io/posts/software/</guid>
<description>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&amp;rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers

View file

@ -12,8 +12,8 @@
<link rel="canonical" href="https://mafyuh.github.io/categories/import-2023-09-08-0216/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -117,8 +117,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span>Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
@ -151,7 +156,7 @@ Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI...</p>
</div>
<footer class="entry-footer"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/post/software/"></a>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/posts/software/"></a>
</article>
</main>

View file

@ -10,9 +10,9 @@
<atom:link href="https://mafyuh.github.io/categories/import-2023-09-08-0216/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Software</title>
<link>https://mafyuh.github.io/post/software/</link>
<link>https://mafyuh.github.io/posts/software/</link>
<pubDate>Sat, 26 Aug 2023 00:13:40 +0000</pubDate>
<guid>https://mafyuh.github.io/post/software/</guid>
<guid>https://mafyuh.github.io/posts/software/</guid>
<description>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&amp;rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers

View file

@ -12,8 +12,8 @@
<link rel="canonical" href="https://mafyuh.github.io/categories/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -117,8 +117,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span>Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>

View file

@ -13,8 +13,8 @@
<link rel="canonical" href="https://mafyuh.github.io/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -131,8 +131,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span>Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>

View file

@ -10,25 +10,25 @@
<atom:link href="https://mafyuh.github.io/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Resize Ubuntu VM Disk in Proxmox</title>
<link>https://mafyuh.github.io/post/resize-ubuntu-vm-disk/</link>
<link>https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/</link>
<pubDate>Tue, 06 Feb 2024 02:58:07 +0000</pubDate>
<guid>https://mafyuh.github.io/post/resize-ubuntu-vm-disk/</guid>
<guid>https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/</guid>
<description>1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l </description>
</item>
<item>
<title>Proton Mail - SimpleLogin authentik Social Login Setup</title>
<link>https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/</link>
<link>https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/</link>
<pubDate>Sun, 12 Nov 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/</guid>
<guid>https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/</guid>
<description>This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth.</description>
</item>
<item>
<title>How To Automate Jellyfin Issue Handling</title>
<link>https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/</link>
<link>https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/</link>
<pubDate>Sat, 11 Nov 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/</guid>
<guid>https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/</guid>
<description>I wanted a way to automate when users tell me a video on my Jellyfin server has an issue. After alot of trial and error, ChatGPT, Bard and I came up with this automation.
Requirements My only requirements when making this was that it was free and self-hostable. Not even any NPM extensions are required in AP. Actual Software requirements are:
Sonarr Radarr Overseerr/Jellyseerr Optional
@ -36,35 +36,35 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
</item>
<item>
<title>How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager</title>
<link>https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/</link>
<link>https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/</link>
<pubDate>Sun, 29 Oct 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/</guid>
<guid>https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/</guid>
<description>authentik&amp;rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.</description>
</item>
<item>
<title>How to authenticate Zammad via SAML with Nginx Proxy Manager</title>
<link>https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</link>
<link>https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</link>
<pubDate>Sun, 29 Oct 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</guid>
<guid>https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</guid>
<description>If you are getting error messages like:
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.</description>
</item>
<item>
<title>How To Authenticate KASM via authentik</title>
<link>https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/</link>
<link>https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/</link>
<pubDate>Sat, 30 Sep 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/</guid>
<guid>https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/</guid>
<description>You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&amp;rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration.</description>
</item>
<item>
<title>Software</title>
<link>https://mafyuh.github.io/post/software/</link>
<link>https://mafyuh.github.io/posts/software/</link>
<pubDate>Sat, 26 Aug 2023 00:13:40 +0000</pubDate>
<guid>https://mafyuh.github.io/post/software/</guid>
<guid>https://mafyuh.github.io/posts/software/</guid>
<description>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&amp;rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -10,16 +10,16 @@
<meta name="description" content="authentik&rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<link rel="canonical" href="http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<noscript>
<style>
#theme-toggle,
@ -60,7 +60,7 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
<meta property="og:description" content="authentik&rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/" /><meta property="article:section" content="post" />
<meta property="og:url" content="http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2023-10-29T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-10-29T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
@ -79,13 +79,13 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager",
"item": "https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/"
"item": "http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/"
}
]
}
@ -111,14 +111,14 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/"
"@id": "http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
@ -140,8 +140,8 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -170,12 +170,12 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -186,7 +186,7 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/post/">Posts</a></div>
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/post/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager
</h1>
@ -236,12 +236,12 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/">
<a class="prev" href="http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/">
<span class="title">« Prev</span>
<br>
<span>How To Automate Jellyfin Issue Handling</span>
</a>
<a class="next" href="https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<a class="next" href="http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<span class="title">Next »</span>
<br>
<span>How to authenticate Zammad via SAML with Nginx Proxy Manager</span>
@ -253,7 +253,7 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -11,16 +11,16 @@
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/">
<link rel="canonical" href="http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/">
<noscript>
<style>
#theme-toggle,
@ -62,7 +62,7 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/" /><meta property="article:section" content="post" />
<meta property="og:url" content="http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2023-09-30T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-09-30T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
@ -82,13 +82,13 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "How To Authenticate KASM via authentik",
"item": "https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/"
"item": "http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/"
}
]
}
@ -114,14 +114,14 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/"
"@id": "http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
@ -143,8 +143,8 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -173,12 +173,12 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -189,7 +189,7 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/post/">Posts</a></div>
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/post/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
How To Authenticate KASM via authentik
</h1>
@ -255,12 +255,12 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<a class="prev" href="http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<span class="title">« Prev</span>
<br>
<span>How to authenticate Zammad via SAML with Nginx Proxy Manager</span>
</a>
<a class="next" href="https://mafyuh.github.io/post/software/">
<a class="next" href="http://localhost:1313/post/software/">
<span class="title">Next »</span>
<br>
<span>Software</span>
@ -272,7 +272,7 @@ Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authenti
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -11,16 +11,16 @@
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<link rel="canonical" href="http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<noscript>
<style>
#theme-toggle,
@ -62,7 +62,7 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/" /><meta property="article:section" content="post" />
<meta property="og:url" content="http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2023-10-29T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-10-29T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
@ -82,13 +82,13 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "How to authenticate Zammad via SAML with Nginx Proxy Manager",
"item": "https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"
"item": "http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"
}
]
}
@ -114,14 +114,14 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"
"@id": "http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
@ -143,8 +143,8 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -173,12 +173,12 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -189,7 +189,7 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/post/">Posts</a></div>
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/post/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
How to authenticate Zammad via SAML with Nginx Proxy Manager
</h1>
@ -221,12 +221,12 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<a class="prev" href="http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<span class="title">« Prev</span>
<br>
<span>How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager</span>
</a>
<a class="next" href="https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/">
<a class="next" href="http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/">
<span class="title">Next »</span>
<br>
<span>How To Authenticate KASM via authentik</span>
@ -238,7 +238,7 @@ location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $hos
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -12,16 +12,16 @@ Requirements My only requirements when making this was that it was free and self
Sonarr Radarr Overseerr/Jellyseerr Optional
SMTP server or ability to send SMTP messages (can also use discord) ActivePieces or any other automation platform that supports TS.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/">
<link rel="canonical" href="http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/">
<noscript>
<style>
#theme-toggle,
@ -64,7 +64,7 @@ Requirements My only requirements when making this was that it was free and self
Sonarr Radarr Overseerr/Jellyseerr Optional
SMTP server or ability to send SMTP messages (can also use discord) ActivePieces or any other automation platform that supports TS." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/" /><meta property="article:section" content="post" />
<meta property="og:url" content="http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2023-11-11T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-11-11T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
@ -85,13 +85,13 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "How To Automate Jellyfin Issue Handling",
"item": "https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/"
"item": "http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/"
}
]
}
@ -117,14 +117,14 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/"
"@id": "http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
@ -146,8 +146,8 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -176,12 +176,12 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -192,7 +192,7 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/post/">Posts</a></div>
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/post/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
How To Automate Jellyfin Issue Handling
</h1>
@ -1119,12 +1119,12 @@ X-MediaBrowser-Token and value is your Jellyfin API Key</p>
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/">
<a class="prev" href="http://localhost:1313/post/proton-mail-authentik-social-login-setup/">
<span class="title">« Prev</span>
<br>
<span>Proton Mail - SimpleLogin authentik Social Login Setup</span>
</a>
<a class="next" href="https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<a class="next" href="http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<span class="title">Next »</span>
<br>
<span>How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager</span>
@ -1136,7 +1136,7 @@ X-MediaBrowser-Token and value is your Jellyfin API Key</p>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -9,17 +9,17 @@
<meta name="keywords" content="">
<meta name="description" content="Posts - Mafyuh&#39;s Blog">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/">
<link rel="canonical" href="http://localhost:1313/post/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="https://mafyuh.github.io/post/index.xml">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/">
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/post/index.xml">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/">
<noscript>
<style>
#theme-toggle,
@ -59,7 +59,7 @@
</noscript><meta property="og:title" content="Posts" />
<meta property="og:description" content="A blog by Mafyuh" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://mafyuh.github.io/post/" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta property="og:url" content="http://localhost:1313/post/" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Posts"/>
@ -75,7 +75,7 @@
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
}
]
}
@ -97,8 +97,8 @@
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -127,12 +127,12 @@
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -140,7 +140,7 @@
</nav>
</header>
<main class="main">
<header class="page-header"><div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a></div>
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a></div>
<h1>
Posts
<a href="/post/index.xml" title="RSS" aria-label="RSS">
@ -163,7 +163,7 @@
<p>1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l &#43;100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l </p>
</div>
<footer class="entry-footer"><span title='2024-02-06 02:58:07 +0000 UTC'>February 6, 2024</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;53 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Resize Ubuntu VM Disk in Proxmox" href="https://mafyuh.github.io/post/resize-ubuntu-vm-disk/"></a>
<a class="entry-link" aria-label="post link to Resize Ubuntu VM Disk in Proxmox" href="http://localhost:1313/post/resize-ubuntu-vm-disk/"></a>
</article>
<article class="post-entry">
@ -177,7 +177,7 @@ To accomplish this, first create a SimpleLogin acct by logging in with Proton. O
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth....</p>
</div>
<footer class="entry-footer"><span title='2023-11-12 16:20:00 +0000 UTC'>November 12, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;227 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Proton Mail - SimpleLogin authentik Social Login Setup" href="https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/"></a>
<a class="entry-link" aria-label="post link to Proton Mail - SimpleLogin authentik Social Login Setup" href="http://localhost:1313/post/proton-mail-authentik-social-login-setup/"></a>
</article>
<article class="post-entry">
@ -192,7 +192,7 @@ Sonarr Radarr Overseerr/Jellyseerr Optional
SMTP server or ability to send SMTP messages (can also use discord) ActivePieces or any other automation platform that supports TS....</p>
</div>
<footer class="entry-footer"><span title='2023-11-11 16:20:00 +0000 UTC'>November 11, 2023</span>&nbsp;·&nbsp;19 min&nbsp;·&nbsp;3952 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How To Automate Jellyfin Issue Handling" href="https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/"></a>
<a class="entry-link" aria-label="post link to How To Automate Jellyfin Issue Handling" href="http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/"></a>
</article>
<article class="post-entry">
@ -205,7 +205,7 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error....</p>
</div>
<footer class="entry-footer"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;344 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager" href="https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/"></a>
<a class="entry-link" aria-label="post link to How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager" href="http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/"></a>
</article>
<article class="post-entry">
@ -219,7 +219,7 @@ Error 403 Forbidden While it was looping, I checked my Guacamole docker containe
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues....</p>
</div>
<footer class="entry-footer"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;107 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How to authenticate Zammad via SAML with Nginx Proxy Manager" href="https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"></a>
<a class="entry-link" aria-label="post link to How to authenticate Zammad via SAML with Nginx Proxy Manager" href="http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"></a>
</article>
<article class="post-entry">
@ -233,7 +233,7 @@ The official authentik docs dont have a Kasm Integration listed at the time. So
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration....</p>
</div>
<footer class="entry-footer"><span title='2023-09-30 16:20:00 +0000 UTC'>September 30, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;393 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How To Authenticate KASM via authentik" href="https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/"></a>
<a class="entry-link" aria-label="post link to How To Authenticate KASM via authentik" href="http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/"></a>
</article>
<article class="post-entry">
@ -248,12 +248,12 @@ Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI...</p>
</div>
<footer class="entry-footer"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/post/software/"></a>
<a class="entry-link" aria-label="post link to Software" href="http://localhost:1313/post/software/"></a>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

View file

@ -2,33 +2,33 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>Posts on Mafyuh&#39;s Blog</title>
<link>https://mafyuh.github.io/post/</link>
<link>http://localhost:1313/post/</link>
<description>Recent content in Posts on Mafyuh&#39;s Blog</description>
<generator>Hugo -- gohugo.io</generator>
<language>en</language>
<lastBuildDate>Tue, 06 Feb 2024 02:58:07 +0000</lastBuildDate>
<atom:link href="https://mafyuh.github.io/post/index.xml" rel="self" type="application/rss+xml" />
<atom:link href="http://localhost:1313/post/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Resize Ubuntu VM Disk in Proxmox</title>
<link>https://mafyuh.github.io/post/resize-ubuntu-vm-disk/</link>
<link>http://localhost:1313/post/resize-ubuntu-vm-disk/</link>
<pubDate>Tue, 06 Feb 2024 02:58:07 +0000</pubDate>
<guid>https://mafyuh.github.io/post/resize-ubuntu-vm-disk/</guid>
<guid>http://localhost:1313/post/resize-ubuntu-vm-disk/</guid>
<description>1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l </description>
</item>
<item>
<title>Proton Mail - SimpleLogin authentik Social Login Setup</title>
<link>https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/</link>
<link>http://localhost:1313/post/proton-mail-authentik-social-login-setup/</link>
<pubDate>Sun, 12 Nov 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/</guid>
<guid>http://localhost:1313/post/proton-mail-authentik-social-login-setup/</guid>
<description>This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth.</description>
</item>
<item>
<title>How To Automate Jellyfin Issue Handling</title>
<link>https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/</link>
<link>http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/</link>
<pubDate>Sat, 11 Nov 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/</guid>
<guid>http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/</guid>
<description>I wanted a way to automate when users tell me a video on my Jellyfin server has an issue. After alot of trial and error, ChatGPT, Bard and I came up with this automation.
Requirements My only requirements when making this was that it was free and self-hostable. Not even any NPM extensions are required in AP. Actual Software requirements are:
Sonarr Radarr Overseerr/Jellyseerr Optional
@ -36,35 +36,35 @@ SMTP server or ability to send SMTP messages (can also use discord) ActivePieces
</item>
<item>
<title>How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager</title>
<link>https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/</link>
<link>http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/</link>
<pubDate>Sun, 29 Oct 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/</guid>
<guid>http://localhost:1313/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/</guid>
<description>authentik&amp;rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.</description>
</item>
<item>
<title>How to authenticate Zammad via SAML with Nginx Proxy Manager</title>
<link>https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</link>
<link>http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</link>
<pubDate>Sun, 29 Oct 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</guid>
<guid>http://localhost:1313/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</guid>
<description>If you are getting error messages like:
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.</description>
</item>
<item>
<title>How To Authenticate KASM via authentik</title>
<link>https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/</link>
<link>http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/</link>
<pubDate>Sat, 30 Sep 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/</guid>
<guid>http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/</guid>
<description>You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&amp;rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration.</description>
</item>
<item>
<title>Software</title>
<link>https://mafyuh.github.io/post/software/</link>
<link>http://localhost:1313/post/software/</link>
<pubDate>Sat, 26 Aug 2023 00:13:40 +0000</pubDate>
<guid>https://mafyuh.github.io/post/software/</guid>
<guid>http://localhost:1313/post/software/</guid>
<description>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&amp;rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers

View file

@ -1,10 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>https://mafyuh.github.io/post/</title>
<link rel="canonical" href="https://mafyuh.github.io/post/">
<title>http://localhost:1313/post/</title>
<link rel="canonical" href="http://localhost:1313/post/">
<meta name="robots" content="noindex">
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=https://mafyuh.github.io/post/">
<meta http-equiv="refresh" content="0; url=http://localhost:1313/post/">
</head>
</html>

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -11,16 +11,16 @@
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/">
<link rel="canonical" href="http://localhost:1313/post/proton-mail-authentik-social-login-setup/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/proton-mail-authentik-social-login-setup/">
<noscript>
<style>
#theme-toggle,
@ -62,7 +62,7 @@ Then go to Oauth Settings and copy your client ID and secret for next step. add
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/" /><meta property="article:section" content="post" />
<meta property="og:url" content="http://localhost:1313/post/proton-mail-authentik-social-login-setup/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2023-11-12T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-11-12T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
@ -82,13 +82,13 @@ Then go to Oauth Settings and copy your client ID and secret for next step. add
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Proton Mail - SimpleLogin authentik Social Login Setup",
"item": "https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/"
"item": "http://localhost:1313/post/proton-mail-authentik-social-login-setup/"
}
]
}
@ -114,14 +114,14 @@ Then go to Oauth Settings and copy your client ID and secret for next step. add
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/"
"@id": "http://localhost:1313/post/proton-mail-authentik-social-login-setup/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
@ -143,8 +143,8 @@ Then go to Oauth Settings and copy your client ID and secret for next step. add
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -173,12 +173,12 @@ Then go to Oauth Settings and copy your client ID and secret for next step. add
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -189,7 +189,7 @@ Then go to Oauth Settings and copy your client ID and secret for next step. add
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/post/">Posts</a></div>
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/post/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
Proton Mail - SimpleLogin authentik Social Login Setup
</h1>
@ -228,12 +228,12 @@ OIDC Well-known URL: <a href="https://app.simplelogin.io/.well-known/openid-conf
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/post/resize-ubuntu-vm-disk/">
<a class="prev" href="http://localhost:1313/post/resize-ubuntu-vm-disk/">
<span class="title">« Prev</span>
<br>
<span>Resize Ubuntu VM Disk in Proxmox</span>
</a>
<a class="next" href="https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/">
<a class="next" href="http://localhost:1313/post/how-to-automate-jellyfin-issue-handling/">
<span class="title">Next »</span>
<br>
<span>How To Automate Jellyfin Issue Handling</span>
@ -245,7 +245,7 @@ OIDC Well-known URL: <a href="https://app.simplelogin.io/.well-known/openid-conf
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -9,16 +9,16 @@
<meta name="keywords" content="">
<meta name="description" content="1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l &#43;100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l ">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/resize-ubuntu-vm-disk/">
<link rel="canonical" href="http://localhost:1313/post/resize-ubuntu-vm-disk/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/resize-ubuntu-vm-disk/">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/resize-ubuntu-vm-disk/">
<noscript>
<style>
#theme-toggle,
@ -58,7 +58,7 @@
</noscript><meta property="og:title" content="Resize Ubuntu VM Disk in Proxmox" />
<meta property="og:description" content="1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l &#43;100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l " />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/post/resize-ubuntu-vm-disk/" /><meta property="article:section" content="post" />
<meta property="og:url" content="http://localhost:1313/post/resize-ubuntu-vm-disk/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2024-02-06T02:58:07+00:00" />
<meta property="article:modified_time" content="2024-02-06T02:58:07+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
@ -76,13 +76,13 @@
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Resize Ubuntu VM Disk in Proxmox",
"item": "https://mafyuh.github.io/post/resize-ubuntu-vm-disk/"
"item": "http://localhost:1313/post/resize-ubuntu-vm-disk/"
}
]
}
@ -108,14 +108,14 @@
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/post/resize-ubuntu-vm-disk/"
"@id": "http://localhost:1313/post/resize-ubuntu-vm-disk/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
@ -137,8 +137,8 @@
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -167,12 +167,12 @@
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -183,7 +183,7 @@
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/post/">Posts</a></div>
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/post/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
Resize Ubuntu VM Disk in Proxmox
</h1>
@ -224,7 +224,7 @@
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="next" href="https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/">
<a class="next" href="http://localhost:1313/post/proton-mail-authentik-social-login-setup/">
<span class="title">Next »</span>
<br>
<span>Proton Mail - SimpleLogin authentik Social Login Setup</span>
@ -236,7 +236,7 @@
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

View file

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
@ -12,16 +12,16 @@ Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/post/software/">
<link rel="canonical" href="http://localhost:1313/post/software/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/post/software/">
<link rel="alternate" hreflang="en" href="http://localhost:1313/post/software/">
<noscript>
<style>
#theme-toggle,
@ -64,7 +64,7 @@ Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/post/software/" /><meta property="article:section" content="post" />
<meta property="og:url" content="http://localhost:1313/post/software/" /><meta property="article:section" content="post" />
<meta property="article:published_time" content="2023-08-26T00:13:40+00:00" />
<meta property="article:modified_time" content="2023-08-26T00:13:40+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
@ -85,13 +85,13 @@ Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/post/"
"item": "http://localhost:1313/post/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Software",
"item": "https://mafyuh.github.io/post/software/"
"item": "http://localhost:1313/post/software/"
}
]
}
@ -117,14 +117,14 @@ Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/post/software/"
"@id": "http://localhost:1313/post/software/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
@ -146,8 +146,8 @@ Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
@ -176,12 +176,12 @@ Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
@ -192,7 +192,7 @@ Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/post/">Posts</a></div>
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/post/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
Software
</h1>
@ -284,11 +284,11 @@ Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome
<footer class="post-footer">
<ul class="post-tags">
<li><a href="https://mafyuh.github.io/tags/import-2023-08-26-0406/">Import 2023-08-26 04:06</a></li>
<li><a href="https://mafyuh.github.io/tags/import-2023-09-08-0216/">Import 2023-09-08 02:16</a></li>
<li><a href="http://localhost:1313/tags/import-2023-08-26-0406/">Import 2023-08-26 04:06</a></li>
<li><a href="http://localhost:1313/tags/import-2023-09-08-0216/">Import 2023-09-08 02:16</a></li>
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/">
<a class="prev" href="http://localhost:1313/post/how-to-authenticate-kasm-via-authentik/">
<span class="title">« Prev</span>
<br>
<span>How To Authenticate KASM via authentik</span>
@ -300,7 +300,7 @@ Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &

321
posts/archives/index.html Normal file
View file

@ -0,0 +1,321 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content=" - Mafyuh&#39;s Blog">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="http://localhost:1313/posts/archives/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="http://localhost:1313/posts/archives/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="" />
<meta property="og:description" content="" />
<meta property="og:type" content="article" />
<meta property="og:url" content="http://localhost:1313/posts/archives/" /><meta property="article:section" content="posts" />
<meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content=""/>
<meta name="twitter:description" content=""/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "http://localhost:1313/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "",
"item": "http://localhost:1313/posts/archives/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "",
"name": "",
"description": "",
"keywords": [
],
"articleBody": "",
"wordCount" : "0",
"inLanguage": "en",
"datePublished": "0001-01-01T00:00:00Z",
"dateModified": "0001-01-01T00:00:00Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "http://localhost:1313/posts/archives/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "http://localhost:1313/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="http://localhost:1313/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="http://localhost:1313/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="http://localhost:1313/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="http://localhost:1313/tags/" title="Tags">
<span>Tags</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="http://localhost:1313/">Home</a>&nbsp;»&nbsp;<a href="http://localhost:1313/posts/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
</h1>
<div class="post-meta">0 min&nbsp;·&nbsp;0 words&nbsp;·&nbsp;Mafyuh
</div>
</header>
<footer class="post-footer">
<ul class="post-tags">
</ul>
</footer>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="http://localhost:1313/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
<script>
document.querySelectorAll('pre > code').forEach((codeblock) => {
const container = codeblock.parentNode.parentNode;
const copybutton = document.createElement('button');
copybutton.classList.add('copy-code');
copybutton.innerHTML = 'copy';
function copyingDone() {
copybutton.innerHTML = 'copied!';
setTimeout(() => {
copybutton.innerHTML = 'copy';
}, 2000);
}
copybutton.addEventListener('click', (cb) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(codeblock.textContent);
copyingDone();
return;
}
const range = document.createRange();
range.selectNodeContents(codeblock);
const selection = window.getSelection();
selection.removeAllRanges();
selection.addRange(range);
try {
document.execCommand('copy');
copyingDone();
} catch (e) { };
selection.removeRange(range);
});
if (container.classList.contains("highlight")) {
container.appendChild(copybutton);
} else if (container.parentNode.firstChild == container) {
} else if (codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName == "TABLE") {
codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(copybutton);
} else {
codeblock.parentNode.appendChild(copybutton);
}
});
</script>
</body>
</html>

View file

@ -0,0 +1,377 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="authentik&rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager" />
<meta property="og:description" content="authentik&rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/" /><meta property="article:section" content="posts" />
<meta property="article:published_time" content="2023-10-29T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-10-29T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager"/>
<meta name="twitter:description" content="authentik&rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error."/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager",
"item": "https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager",
"name": "How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager",
"description": "authentik\u0026rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.\nError 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.",
"keywords": [
],
"articleBody": "authentiks docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.\nError 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.\n22:03:59.418 [http-nio-8080-exec-2] INFO o.a.g.a.o.t.TokenValidationService - Rejected invalid OpenID token: JWT processing failed. Additional details: [[17] Unable to process JOSE object (cause: org.jose4j.lang.UnresolvableKeyException: Unable to find a suitable verification key for JWS w/ header {\"alg\":\"RS256\",\"kid\":\"xxx\",\"typ\":\"JWT\"} due to an unexpected exception (java.io.IOException: Non 200 status code (403 Forbidden) returned from https://example.com/application/o/guacamole/jwks/?exclude_x5) while obtaining or using keys from JWKS endpoint at https://example.com/application/o/guacamole/jwks/?exclude_x5): JsonWebSignature{\"alg\":\"RS256\",\"kid\":\"xxx\",\"typ\":\"JWT\"} I assumed it had something to do with my Nginx Proxy Manager and the way I was proxying Guacamole, I do have WebSocket support and block common exploits enabled, their docs give a nginx config that I added under advanced.\nlocation /guacamole/ { proxy_pass http://HOSTNAME:8080; proxy_buffering off; proxy_http_version 1.1; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; access_log off; } I messed around with settings individually for hours, reading their docs, tried oznus Guacamole image as well, this time with errors about the postgres version being incompatible. Figured it could be something with Cloudflare so turned down my HTTPS settings. Nada. Tried SAML, more errors. Finally found this github issue and thanks to Fma965 for finding the solution.\nGo to your Cloudflare Dashboard. Click on your domains summary and then on the left tab find Rules.\nUnder Page Rules - Create a New Page Rule, set the URL as your jwks URL from authentiks provider summary. Under pick a setting, choose Browser Integrity Check and make sure its unchecked. Save.\nThis finally got me authenticated into my Guacamole instance via authentik. I spent way too much time on this integration. Anyways, hope this guide helps someone who may be in my shoes.\n",
"wordCount" : "344",
"inLanguage": "en",
"datePublished": "2023-10-29T16:20:00Z",
"dateModified": "2023-10-29T16:20:00Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/posts/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager
</h1>
<div class="post-meta"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;344 words&nbsp;·&nbsp;Mafyuh
</div>
</header> <div class="toc">
<details >
<summary accesskey="c" title="(Alt + C)">
<span class="details">Table of Contents</span>
</summary>
<div class="inner"><nav id="TableOfContents">
<ul>
<li><a href="#error-403-forbidden">Error 403 Forbidden</a></li>
</ul>
</nav>
</div>
</details>
</div>
<div class="post-content"><p>authentik&rsquo;s docs have a guide already for Guacamole. You can find that <a href="https://goauthentik.io/integrations/services/apache-guacamole/">here</a>. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.</p>
<h2 id="error-403-forbidden">Error 403 Forbidden<a hidden class="anchor" aria-hidden="true" href="#error-403-forbidden">#</a></h2>
<p>While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">22:03:59.418 <span class="o">[</span>http-nio-8080-exec-2<span class="o">]</span> INFO o.a.g.a.o.t.TokenValidationService - Rejected invalid OpenID token: JWT processing failed. Additional details: <span class="o">[[</span>17<span class="o">]</span> Unable to process JOSE object <span class="o">(</span>cause: org.jose4j.lang.UnresolvableKeyException: Unable to find a suitable verification key <span class="k">for</span> JWS w/ header <span class="o">{</span><span class="s2">&#34;alg&#34;</span>:<span class="s2">&#34;RS256&#34;</span>,<span class="s2">&#34;kid&#34;</span>:<span class="s2">&#34;xxx&#34;</span>,<span class="s2">&#34;typ&#34;</span>:<span class="s2">&#34;JWT&#34;</span><span class="o">}</span> due to an unexpected exception <span class="o">(</span>java.io.IOException: Non <span class="m">200</span> status code <span class="o">(</span><span class="m">403</span> Forbidden<span class="o">)</span> returned from https://example.com/application/o/guacamole/jwks/?exclude_x5<span class="o">)</span> <span class="k">while</span> obtaining or using keys from JWKS endpoint at https://example.com/application/o/guacamole/jwks/?exclude_x5<span class="o">)</span>: JsonWebSignature<span class="o">{</span><span class="s2">&#34;alg&#34;</span>:<span class="s2">&#34;RS256&#34;</span>,<span class="s2">&#34;kid&#34;</span>:<span class="s2">&#34;xxx&#34;</span>,<span class="s2">&#34;typ&#34;</span>:<span class="s2">&#34;JWT&#34;</span><span class="o">}</span>
</span></span></code></pre></div><p>I assumed it had something to do with my Nginx Proxy Manager and the way I was proxying Guacamole, I do have WebSocket support and block common exploits enabled, their <a href="https://guacamole.apache.org/doc/gug/reverse-proxy.html">docs</a> give a nginx config that I added under advanced.</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-nginx" data-lang="nginx"><span class="line"><span class="cl"><span class="k">location</span> <span class="s">/guacamole/</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_pass</span> <span class="s">http://HOSTNAME:8080</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_buffering</span> <span class="no">off</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_http_version</span> <span class="mi">1</span><span class="s">.1</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">X-Forwarded-For</span> <span class="nv">$proxy_add_x_forwarded_for</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">Upgrade</span> <span class="nv">$http_upgrade</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">Connection</span> <span class="nv">$http_connection</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">access_log</span> <span class="no">off</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span></code></pre></div><p>I messed around with settings individually for hours, reading their docs, tried <a href="https://hub.docker.com/r/oznu/guacamole/">oznu&rsquo;s</a> Guacamole image as well, this time with errors about the postgres version being incompatible. Figured it could be something with Cloudflare so turned down my HTTPS settings. Nada. Tried SAML, more errors. Finally found this <a href="https://github.com/goauthentik/authentik/issues/4082">github issue</a> and thanks to <a href="https://github.com/Fma965">Fma965</a> for finding the solution.</p>
<p>Go to your Cloudflare Dashboard. Click on your domains summary and then on the left tab find <strong>Rules</strong>.</p>
<p>Under <strong>Page Rules - Create a New Page Rule</strong>, set the URL as your jwks URL from authentik&rsquo;s provider summary. Under pick a setting, choose Browser Integrity Check and make sure its unchecked. Save.</p>
<p><img loading="lazy" src="/assets/img/pagerules.png" alt="Page Rules Images" />
</p>
<p>This finally got me authenticated into my Guacamole instance via authentik. I spent way too much time on this integration. Anyways, hope this guide helps someone who may be in my shoes.</p>
</div>
<footer class="post-footer">
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/">
<span class="title">« Prev</span>
<br>
<span>How To Automate Jellyfin Issue Handling</span>
</a>
<a class="next" href="https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<span class="title">Next »</span>
<br>
<span>How to authenticate Zammad via SAML with Nginx Proxy Manager</span>
</a>
</nav>
</footer>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
<script>
document.querySelectorAll('pre > code').forEach((codeblock) => {
const container = codeblock.parentNode.parentNode;
const copybutton = document.createElement('button');
copybutton.classList.add('copy-code');
copybutton.innerHTML = 'copy';
function copyingDone() {
copybutton.innerHTML = 'copied!';
setTimeout(() => {
copybutton.innerHTML = 'copy';
}, 2000);
}
copybutton.addEventListener('click', (cb) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(codeblock.textContent);
copyingDone();
return;
}
const range = document.createRange();
range.selectNodeContents(codeblock);
const selection = window.getSelection();
selection.removeAllRanges();
selection.addRange(range);
try {
document.execCommand('copy');
copyingDone();
} catch (e) { };
selection.removeRange(range);
});
if (container.classList.contains("highlight")) {
container.appendChild(copybutton);
} else if (container.parentNode.firstChild == container) {
} else if (codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName == "TABLE") {
codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(copybutton);
} else {
codeblock.parentNode.appendChild(copybutton);
}
});
</script>
</body>
</html>

View file

@ -0,0 +1,396 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>How To Authenticate KASM via authentik | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="How To Authenticate KASM via authentik" />
<meta property="og:description" content="You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/" /><meta property="article:section" content="posts" />
<meta property="article:published_time" content="2023-09-30T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-09-30T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="How To Authenticate KASM via authentik"/>
<meta name="twitter:description" content="You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration."/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "How To Authenticate KASM via authentik",
"item": "https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "How To Authenticate KASM via authentik",
"name": "How To Authenticate KASM via authentik",
"description": "You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.\nThe official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik\u0026rsquo;s SAML docs can be found here.\nSetting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration.",
"keywords": [
],
"articleBody": "You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.\nThe official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentiks SAML docs can be found here.\nSetting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration. Make sure you enable and make default after testing. You will probably find yourself switching between tabs alot, its best to start creating them both at the same time as you need links from each.\nDisplay Name: authentik Logo URL: https://auth.example.com/static/dist/assets/icons/icon.svg (or custom logo) Host Name: authentik NameID Attribute: emailAddress Entity ID: authentik Single Sign On Service/SAML 2.0 Endpoint: https://auth.example.com/application/saml/kasm/sso/binding/redirect/ X509 Certificate: Skip to authentik setup first, then come back here. In authentik admin, go to your newly created SAML provider, when you click the provider and are brought to its details, you should have the option to Download signing certificate. Download it and paste the files contents here. Setting up authentik In the authentik admin, under Applications, create a new SAML provider. Once you created a provider, create an Application and set its provider to the newly created kasm provider. For simplicity sake, the provider and application name is kasm. (kasms pictured)\nAuthorization flow: implicit ACS URL: https://kasm.example.com/api/acs/?id=e977b6cf72c7424328275db5f48fd15ab (Single Sign-On Service from kasm photo) Issuer: authentik (must be the same as Entity ID chosen in Kasm) Service Binding Provider: Post Audience: https://kasm.example.com/api/metadata/?id=e977b6cf72c7424328275db5f48fd15ab ( Entity ID URL from Kasm photo) Under Advanced, choose a signing certificate, default is authentik. Go back to Kasm x509 Certificate. Make sure you save you changes. You should now be able to test SAML at the bottom of the page, once tested, I recommend opening a incognito tab and loading your KASM website.\nYou should now be able to authenticate yourself using SAML via authentik. I recommend going back to your admin session and adding your newly created user to the admin group. Also if it should only be you accessing this via authentik, I would change the kasm Application in authentik and bind it to your user.\nThank you to u/agent-squirrel and this subreddit post on helping me with the NameID Attribute part!\n",
"wordCount" : "393",
"inLanguage": "en",
"datePublished": "2023-09-30T16:20:00Z",
"dateModified": "2023-09-30T16:20:00Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/posts/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
How To Authenticate KASM via authentik
</h1>
<div class="post-meta"><span title='2023-09-30 16:20:00 +0000 UTC'>September 30, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;393 words&nbsp;·&nbsp;Mafyuh
</div>
</header> <div class="toc">
<details >
<summary accesskey="c" title="(Alt + C)">
<span class="details">Table of Contents</span>
</summary>
<div class="inner"><nav id="TableOfContents">
<ul>
<li><a href="#setting-up-kasm">Setting up Kasm</a></li>
<li><a href="#setting-up-authentik">Setting up authentik</a></li>
</ul>
</nav>
</div>
</details>
</div>
<div class="post-content"><p>You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.</p>
<p>The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&rsquo;s SAML docs can be found <a href="https://goauthentik.io/integrations/sources/saml/">here</a>.</p>
<h2 id="setting-up-kasm">Setting up Kasm<a hidden class="anchor" aria-hidden="true" href="#setting-up-kasm">#</a></h2>
<p>In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration. Make sure you enable and make default after testing. You will probably find yourself switching between tabs alot, its best to start creating them both at the same time as you need links from each.</p>
<p><img loading="lazy" src="/assets/img/kasm-saml.png" alt="KASM SAML Config" />
</p>
<ul>
<li>Display Name: authentik</li>
<li>Logo URL: <a href="https://auth.example.com/static/dist/assets/icons/icon.svg">https://auth.example.com/static/dist/assets/icons/icon.svg</a> (or custom logo)</li>
<li>Host Name: authentik</li>
<li>NameID Attribute: emailAddress</li>
<li>Entity ID: authentik</li>
<li>Single Sign On Service/SAML 2.0 Endpoint: <a href="https://auth.example.com/application/saml/kasm/sso/binding/redirect/">https://auth.example.com/application/saml/kasm/sso/binding/redirect/</a></li>
<li>X509 Certificate: Skip to authentik setup first, then come back here. In authentik admin, go to your newly created SAML provider, when you click the provider and are brought to its details, you should have the option to Download signing certificate. Download it and paste the files contents here.</li>
</ul>
<p><img loading="lazy" src="/assets/img/kasm-auth.png" alt="authentik Config" />
</p>
<h2 id="setting-up-authentik">Setting up authentik<a hidden class="anchor" aria-hidden="true" href="#setting-up-authentik">#</a></h2>
<p>In the authentik admin, under Applications, create a new SAML provider. Once you created a provider, create an Application and set its provider to the newly created kasm provider. For simplicity sake, the provider and application name is kasm. (kasms pictured)</p>
<p><img loading="lazy" src="/assets/img/kasm-auth2.png" alt="authentik Config" />
</p>
<ul>
<li>Authorization flow: implicit</li>
<li>ACS URL: <a href="https://kasm.example.com/api/acs/?id=e977b6cf72c7424328275db5f48fd15ab">https://kasm.example.com/api/acs/?id=e977b6cf72c7424328275db5f48fd15ab</a> (Single Sign-On Service from kasm photo)</li>
<li>Issuer: authentik (must be the same as Entity ID chosen in Kasm)</li>
<li>Service Binding Provider: Post</li>
<li>Audience: <a href="https://kasm.example.com/api/metadata/?id=e977b6cf72c7424328275db5f48fd15ab">https://kasm.example.com/api/metadata/?id=e977b6cf72c7424328275db5f48fd15ab</a> ( Entity ID URL from Kasm photo)</li>
<li>Under Advanced, choose a signing certificate, default is authentik.</li>
<li>Go back to Kasm x509 Certificate.</li>
</ul>
<p>Make sure you save you changes. You should now be able to test SAML at the bottom of the page, once tested, I recommend opening a incognito tab and loading your KASM website.</p>
<p><img loading="lazy" src="/assets/img/kasm-auth3.png" alt="authentik Config" />
</p>
<p>You should now be able to authenticate yourself using SAML via authentik. I recommend going back to your admin session and adding your newly created user to the admin group. Also if it should only be you accessing this via authentik, I would change the kasm Application in authentik and bind it to your user.</p>
<p>Thank you to u/<a href="https://www.reddit.com/user/agent-squirrel/">agent-squirrel</a> and this <a href="https://www.reddit.com/r/selfhosted/comments/vc30l7/kasm_authentik/">subreddit</a> post on helping me with the NameID Attribute part!</p>
</div>
<footer class="post-footer">
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<span class="title">« Prev</span>
<br>
<span>How to authenticate Zammad via SAML with Nginx Proxy Manager</span>
</a>
<a class="next" href="https://mafyuh.github.io/posts/software/">
<span class="title">Next »</span>
<br>
<span>Software</span>
</a>
</nav>
</footer>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
<script>
document.querySelectorAll('pre > code').forEach((codeblock) => {
const container = codeblock.parentNode.parentNode;
const copybutton = document.createElement('button');
copybutton.classList.add('copy-code');
copybutton.innerHTML = 'copy';
function copyingDone() {
copybutton.innerHTML = 'copied!';
setTimeout(() => {
copybutton.innerHTML = 'copy';
}, 2000);
}
copybutton.addEventListener('click', (cb) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(codeblock.textContent);
copyingDone();
return;
}
const range = document.createRange();
range.selectNodeContents(codeblock);
const selection = window.getSelection();
selection.removeAllRanges();
selection.addRange(range);
try {
document.execCommand('copy');
copyingDone();
} catch (e) { };
selection.removeRange(range);
});
if (container.classList.contains("highlight")) {
container.appendChild(copybutton);
} else if (container.parentNode.firstChild == container) {
} else if (codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName == "TABLE") {
codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(copybutton);
} else {
codeblock.parentNode.appendChild(copybutton);
}
});
</script>
</body>
</html>

View file

@ -0,0 +1,362 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>How to authenticate Zammad via SAML with Nginx Proxy Manager | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="If you are getting error messages like:
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="How to authenticate Zammad via SAML with Nginx Proxy Manager" />
<meta property="og:description" content="If you are getting error messages like:
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/" /><meta property="article:section" content="posts" />
<meta property="article:published_time" content="2023-10-29T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-10-29T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="How to authenticate Zammad via SAML with Nginx Proxy Manager"/>
<meta name="twitter:description" content="If you are getting error messages like:
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues."/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "How to authenticate Zammad via SAML with Nginx Proxy Manager",
"item": "https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "How to authenticate Zammad via SAML with Nginx Proxy Manager",
"name": "How to authenticate Zammad via SAML with Nginx Proxy Manager",
"description": "If you are getting error messages like:\n422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:\nlocation / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.",
"keywords": [
],
"articleBody": "If you are getting error messages like:\n422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:\nlocation / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.\nHope this helps someone out. Fix was found on this rails github issue.\n(https://github.com/rails/rails/issues/22965)\n",
"wordCount" : "107",
"inLanguage": "en",
"datePublished": "2023-10-29T16:20:00Z",
"dateModified": "2023-10-29T16:20:00Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/posts/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
How to authenticate Zammad via SAML with Nginx Proxy Manager
</h1>
<div class="post-meta"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;107 words&nbsp;·&nbsp;Mafyuh
</div>
</header>
<div class="post-content"><p>If you are getting error messages like:</p>
<pre tabindex="0"><code>422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken
</code></pre><p>Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-nginx" data-lang="nginx"><span class="line"><span class="cl"><span class="k">location</span> <span class="s">/</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_pass</span> <span class="s">http://zammad:8080</span><span class="p">;</span> <span class="c1"># Replace
</span></span></span><span class="line"><span class="cl"><span class="c1"></span> <span class="kn">proxy_set_header</span> <span class="s">Host</span> <span class="nv">$host</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">X-Forwarded-For</span> <span class="nv">$proxy_add_x_forwarded_for</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">X-Forwarded-Proto</span> <span class="nv">$scheme</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">X-Forwarded-Ssl</span> <span class="no">on</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">X-Forwarded-Port</span> <span class="nv">$server_port</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"> <span class="kn">proxy_set_header</span> <span class="s">X-Forwarded-Host</span> <span class="nv">$host</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span></code></pre></div><p>I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.</p>
<p>Hope this helps someone out. Fix was found on this rails github issue.</p>
<p>(<a href="https://github.com/rails/rails/issues/22965">https://github.com/rails/rails/issues/22965</a>)</p>
</div>
<footer class="post-footer">
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/">
<span class="title">« Prev</span>
<br>
<span>How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager</span>
</a>
<a class="next" href="https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/">
<span class="title">Next »</span>
<br>
<span>How To Authenticate KASM via authentik</span>
</a>
</nav>
</footer>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
<script>
document.querySelectorAll('pre > code').forEach((codeblock) => {
const container = codeblock.parentNode.parentNode;
const copybutton = document.createElement('button');
copybutton.classList.add('copy-code');
copybutton.innerHTML = 'copy';
function copyingDone() {
copybutton.innerHTML = 'copied!';
setTimeout(() => {
copybutton.innerHTML = 'copy';
}, 2000);
}
copybutton.addEventListener('click', (cb) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(codeblock.textContent);
copyingDone();
return;
}
const range = document.createRange();
range.selectNodeContents(codeblock);
const selection = window.getSelection();
selection.removeAllRanges();
selection.addRange(range);
try {
document.execCommand('copy');
copyingDone();
} catch (e) { };
selection.removeRange(range);
});
if (container.classList.contains("highlight")) {
container.appendChild(copybutton);
} else if (container.parentNode.firstChild == container) {
} else if (codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName == "TABLE") {
codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(copybutton);
} else {
codeblock.parentNode.appendChild(copybutton);
}
});
</script>
</body>
</html>

File diff suppressed because one or more lines are too long

354
posts/index.html Normal file
View file

@ -0,0 +1,354 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>Posts | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="Posts - Mafyuh&#39;s Blog">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="https://mafyuh.github.io/posts/index.xml">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="Posts" />
<meta property="og:description" content="A blog by Mafyuh" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://mafyuh.github.io/posts/" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Posts"/>
<meta name="twitter:description" content="A blog by Mafyuh"/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
}
]
}
</script>
</head>
<body class="list" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<header class="page-header"><div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a></div>
<h1>
Posts
<a href="/posts/index.xml" title="RSS" aria-label="RSS">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
stroke-linecap="round" stroke-linejoin="round" height="23">
<path d="M4 11a9 9 0 0 1 9 9" />
<path d="M4 4a16 16 0 0 1 16 16" />
<circle cx="5" cy="19" r="1" />
</svg>
</a>
</h1>
</header>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">Resize Ubuntu VM Disk in Proxmox
</h2>
</header>
<div class="entry-content">
<p>1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l &#43;100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l </p>
</div>
<footer class="entry-footer"><span title='2024-02-06 02:58:07 +0000 UTC'>February 6, 2024</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;53 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Resize Ubuntu VM Disk in Proxmox" href="https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">Proton Mail - SimpleLogin authentik Social Login Setup
</h2>
</header>
<div class="entry-content">
<p>This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth....</p>
</div>
<footer class="entry-footer"><span title='2023-11-12 16:20:00 +0000 UTC'>November 12, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;227 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Proton Mail - SimpleLogin authentik Social Login Setup" href="https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">How To Automate Jellyfin Issue Handling
</h2>
</header>
<div class="entry-content">
<p>I wanted a way to automate when users tell me a video on my Jellyfin server has an issue. After alot of trial and error, ChatGPT, Bard and I came up with this automation.
Requirements My only requirements when making this was that it was free and self-hostable. Not even any NPM extensions are required in AP. Actual Software requirements are:
Sonarr Radarr Overseerr/Jellyseerr Optional
SMTP server or ability to send SMTP messages (can also use discord) ActivePieces or any other automation platform that supports TS....</p>
</div>
<footer class="entry-footer"><span title='2023-11-11 16:20:00 +0000 UTC'>November 11, 2023</span>&nbsp;·&nbsp;19 min&nbsp;·&nbsp;3952 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How To Automate Jellyfin Issue Handling" href="https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager
</h2>
</header>
<div class="entry-content">
<p>authentiks docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error....</p>
</div>
<footer class="entry-footer"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;344 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager" href="https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">How to authenticate Zammad via SAML with Nginx Proxy Manager
</h2>
</header>
<div class="entry-content">
<p>If you are getting error messages like:
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues....</p>
</div>
<footer class="entry-footer"><span title='2023-10-29 16:20:00 +0000 UTC'>October 29, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;107 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How to authenticate Zammad via SAML with Nginx Proxy Manager" href="https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">How To Authenticate KASM via authentik
</h2>
</header>
<div class="entry-content">
<p>You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentiks SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration....</p>
</div>
<footer class="entry-footer"><span title='2023-09-30 16:20:00 +0000 UTC'>September 30, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;393 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to How To Authenticate KASM via authentik" href="https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">Software
</h2>
</header>
<div class="entry-content">
<p>Just a straight forward list of pretty much everything that makes up my homelab. Or systems Ive ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI...</p>
</div>
<footer class="entry-footer"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/posts/software/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">Archives
</h2>
</header>
<div class="entry-content">
<p>archives</p>
</div>
<footer class="entry-footer">0 min&nbsp;·&nbsp;0 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Archives" href="https://mafyuh.github.io/archives/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">Search
</h2>
</header>
<div class="entry-content">
<p>search</p>
</div>
<footer class="entry-footer">0 min&nbsp;·&nbsp;0 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Search" href="https://mafyuh.github.io/posts/search/"></a>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
</body>
</html>

74
posts/index.xml Normal file
View file

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>Posts on Mafyuh&#39;s Blog</title>
<link>https://mafyuh.github.io/posts/</link>
<description>Recent content in Posts on Mafyuh&#39;s Blog</description>
<generator>Hugo -- gohugo.io</generator>
<language>en</language>
<lastBuildDate>Tue, 06 Feb 2024 02:58:07 +0000</lastBuildDate>
<atom:link href="https://mafyuh.github.io/posts/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Resize Ubuntu VM Disk in Proxmox</title>
<link>https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/</link>
<pubDate>Tue, 06 Feb 2024 02:58:07 +0000</pubDate>
<guid>https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/</guid>
<description>1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l </description>
</item>
<item>
<title>Proton Mail - SimpleLogin authentik Social Login Setup</title>
<link>https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/</link>
<pubDate>Sun, 12 Nov 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/</guid>
<description>This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth.</description>
</item>
<item>
<title>How To Automate Jellyfin Issue Handling</title>
<link>https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/</link>
<pubDate>Sat, 11 Nov 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/</guid>
<description>I wanted a way to automate when users tell me a video on my Jellyfin server has an issue. After alot of trial and error, ChatGPT, Bard and I came up with this automation.
Requirements My only requirements when making this was that it was free and self-hostable. Not even any NPM extensions are required in AP. Actual Software requirements are:
Sonarr Radarr Overseerr/Jellyseerr Optional
SMTP server or ability to send SMTP messages (can also use discord) ActivePieces or any other automation platform that supports TS.</description>
</item>
<item>
<title>How to authenticate Guacamole via authentik with Cloudflare and Nginx Proxy Manager</title>
<link>https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/</link>
<pubDate>Sun, 29 Oct 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/</guid>
<description>authentik&amp;rsquo;s docs have a guide already for Guacamole. You can find that here. Follow all the instructions there, (especially the part where you create a user in Guacamole with the USERNAME of your email. not just filling in the email), but if you are using Cloudflare as our DNS you may run into problems. Such as infinite redirect loop.
Error 403 Forbidden While it was looping, I checked my Guacamole docker container logs in Portainer, and found the 403 Forbidden error.</description>
</item>
<item>
<title>How to authenticate Zammad via SAML with Nginx Proxy Manager</title>
<link>https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</link>
<pubDate>Sun, 29 Oct 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</guid>
<description>If you are getting error messages like:
422: the change you wanted was rejected. message from saml: actioncontroller::invalidauthenticitytoken Just make sure you set these in your Nginx Proxy Manager hosts Advanced field:
location / { proxy_pass http://zammad:8080; # Replace proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Host $host; } I spent way too long trying to figure this out, reading through Github issues, breaking my SAML provider and Zammad configs, starting over, when the whole time it was just good old nginx header issues.</description>
</item>
<item>
<title>How To Authenticate KASM via authentik</title>
<link>https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/</link>
<pubDate>Sat, 30 Sep 2023 16:20:00 +0000</pubDate>
<guid>https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/</guid>
<description>You could do this with OpenID as well but this method is using SAML. This guide assumes you already have running instances of Kasm Workspaces and authentik.
The official authentik docs dont have a Kasm Integration listed at the time. So I thought I would help out anyone who is trying to integrate these services via SAML. authentik&amp;rsquo;s SAML docs can be found here.
Setting up Kasm In the Kasm Workspaces admin, click Access Management - Authentication - SAML and create a new configuration.</description>
</item>
<item>
<title>Software</title>
<link>https://mafyuh.github.io/posts/software/</link>
<pubDate>Sat, 26 Aug 2023 00:13:40 +0000</pubDate>
<guid>https://mafyuh.github.io/posts/software/</guid>
<description>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&amp;rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI</description>
</item>
</channel>
</rss>

10
posts/page/1/index.html Normal file
View file

@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>https://mafyuh.github.io/posts/</title>
<link rel="canonical" href="https://mafyuh.github.io/posts/">
<meta name="robots" content="noindex">
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=https://mafyuh.github.io/posts/">
</head>
</html>

View file

@ -0,0 +1,369 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>Proton Mail - SimpleLogin authentik Social Login Setup | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth.">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="Proton Mail - SimpleLogin authentik Social Login Setup" />
<meta property="og:description" content="This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth." />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/" /><meta property="article:section" content="posts" />
<meta property="article:published_time" content="2023-11-12T16:20:00+00:00" />
<meta property="article:modified_time" content="2023-11-12T16:20:00+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Proton Mail - SimpleLogin authentik Social Login Setup"/>
<meta name="twitter:description" content="This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.
To accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.
Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth."/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Proton Mail - SimpleLogin authentik Social Login Setup",
"item": "https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Proton Mail - SimpleLogin authentik Social Login Setup",
"name": "Proton Mail - SimpleLogin authentik Social Login Setup",
"description": "This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.\nTo accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.\nThen go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth.",
"keywords": [
],
"articleBody": "This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.\nTo accomplish this, first create a SimpleLogin acct by logging in with Proton. Once thats done go to https://app.simplelogin.io/developer and create a website. Give it your authentik URL.\nThen go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this https://auth.example.com/source/oauth/callback/simplelogin/ (simplelogin being slug of authentik)\nIn authentik go to Directory - Federation and Social login - Create and create an OpenID Oauth source\nName: SimpleLogin Slug: simplelogin User matching mode: i chose link with identical email Consumer key: Paste your key Consumer secret: Paste your secret authorization url: https://app.simplelogin.io/oauth2/authorize access token url: https://app.simplelogin.io/oauth2/token profile url: https://app.simplelogin.io/oauth2/userinfo OIDC Well-known URL: https://app.simplelogin.io/.well-known/openid-configuration\nFor logo, it appears authenik inverts your image, I dont know if its dark mode or bug but regardless heres the regular and inverted image I used. Just right click and save image:\nNow go to Flows and Stages - Flows - choose your default authentication stage - click it then click stage bindings - Click edit stage to the right of your identification stage - expand Source settings and make sure you CTL + click your newly created SimpleLogin source.\nYou should be able to logout and try to to login with your Proton account!\n",
"wordCount" : "227",
"inLanguage": "en",
"datePublished": "2023-11-12T16:20:00Z",
"dateModified": "2023-11-12T16:20:00Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/posts/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
Proton Mail - SimpleLogin authentik Social Login Setup
</h1>
<div class="post-meta"><span title='2023-11-12 16:20:00 +0000 UTC'>November 12, 2023</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;227 words&nbsp;·&nbsp;Mafyuh
</div>
</header>
<div class="post-content"><p>This is just a quick guide on how to authenticate your authentik users with Proton using SimpleLogin OIDC.</p>
<p><img loading="lazy" src="/assets/img/proton-authentik.png" alt="Proton Authentik Login Screen" />
</p>
<p>To accomplish this, first create a <a href="https://simplelogin.io/">SimpleLogin</a> acct by logging in with Proton. Once thats done go to <a href="https://app.simplelogin.io/developer">https://app.simplelogin.io/developer</a> and create a website. Give it your authentik URL.</p>
<p>Then go to Oauth Settings and copy your client ID and secret for next step. add your authentik URL in redirect URL like this <a href="https://auth.example.com/source/oauth/callback/simplelogin/">https://auth.example.com/source/oauth/callback/simplelogin/</a> (simplelogin being slug of authentik)</p>
<p>In authentik go to Directory - Federation and Social login - Create and create an OpenID Oauth source</p>
<p>Name: SimpleLogin
Slug: simplelogin
User matching mode: i chose link with identical email
Consumer key: Paste your key
Consumer secret: Paste your secret
authorization url: <a href="https://app.simplelogin.io/oauth2/authorize">https://app.simplelogin.io/oauth2/authorize</a>
access token url: <a href="https://app.simplelogin.io/oauth2/token">https://app.simplelogin.io/oauth2/token</a>
profile url: <a href="https://app.simplelogin.io/oauth2/userinfo">https://app.simplelogin.io/oauth2/userinfo</a>
OIDC Well-known URL: <a href="https://app.simplelogin.io/.well-known/openid-configuration">https://app.simplelogin.io/.well-known/openid-configuration</a></p>
<p>For logo, it appears authenik inverts your image, I dont know if its dark mode or bug but regardless here&rsquo;s the regular and inverted image I used. Just right click and save image:</p>
<p><img loading="lazy" src="/assets/img/proton-logo.png" alt="Proton Logo" />
<img loading="lazy" src="/assets/img/proton-inverted.png" alt="Proton Logo Inverted" />
</p>
<p>Now go to Flows and Stages - Flows - choose your default authentication stage - click it then click stage bindings - Click edit stage to the right of your identification stage - expand Source settings and make sure you CTL + click your newly created SimpleLogin source.</p>
<p>You should be able to logout and try to to login with your Proton account!</p>
</div>
<footer class="post-footer">
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/">
<span class="title">« Prev</span>
<br>
<span>Resize Ubuntu VM Disk in Proxmox</span>
</a>
<a class="next" href="https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/">
<span class="title">Next »</span>
<br>
<span>How To Automate Jellyfin Issue Handling</span>
</a>
</nav>
</footer>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
<script>
document.querySelectorAll('pre > code').forEach((codeblock) => {
const container = codeblock.parentNode.parentNode;
const copybutton = document.createElement('button');
copybutton.classList.add('copy-code');
copybutton.innerHTML = 'copy';
function copyingDone() {
copybutton.innerHTML = 'copied!';
setTimeout(() => {
copybutton.innerHTML = 'copy';
}, 2000);
}
copybutton.addEventListener('click', (cb) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(codeblock.textContent);
copyingDone();
return;
}
const range = document.createRange();
range.selectNodeContents(codeblock);
const selection = window.getSelection();
selection.removeAllRanges();
selection.addRange(range);
try {
document.execCommand('copy');
copyingDone();
} catch (e) { };
selection.removeRange(range);
});
if (container.classList.contains("highlight")) {
container.appendChild(copybutton);
} else if (container.parentNode.firstChild == container) {
} else if (codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName == "TABLE") {
codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(copybutton);
} else {
codeblock.parentNode.appendChild(copybutton);
}
});
</script>
</body>
</html>

View file

@ -0,0 +1,360 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>Resize Ubuntu VM Disk in Proxmox | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l &#43;100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l ">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="Resize Ubuntu VM Disk in Proxmox" />
<meta property="og:description" content="1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l &#43;100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l " />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/" /><meta property="article:section" content="posts" />
<meta property="article:published_time" content="2024-02-06T02:58:07+00:00" />
<meta property="article:modified_time" content="2024-02-06T02:58:07+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Resize Ubuntu VM Disk in Proxmox"/>
<meta name="twitter:description" content="1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l &#43;100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l "/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Resize Ubuntu VM Disk in Proxmox",
"item": "https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Resize Ubuntu VM Disk in Proxmox",
"name": "Resize Ubuntu VM Disk in Proxmox",
"description": "1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l ",
"keywords": [
],
"articleBody": "1st step: Increase/resize disk from GUI console 2nd step: Extend physical drive partition and check free space with: sudo growpart /dev/sda 3 sudo pvdisplay sudo pvresize /dev/sda3 sudo pvdisplay 3rd step: Extend Logical volume sudo lvdisplay sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv sudo lvdisplay 4th step: Resize Filesystem sudo resize2fs /dev/ubuntu-vg/ubuntu-lv sudo fdisk -l ",
"wordCount" : "53",
"inLanguage": "en",
"datePublished": "2024-02-06T02:58:07Z",
"dateModified": "2024-02-06T02:58:07Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/posts/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
Resize Ubuntu VM Disk in Proxmox
</h1>
<div class="post-meta"><span title='2024-02-06 02:58:07 +0000 UTC'>February 6, 2024</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;53 words&nbsp;·&nbsp;Mafyuh
</div>
</header> <div class="toc">
<details >
<summary accesskey="c" title="(Alt + C)">
<span class="details">Table of Contents</span>
</summary>
<div class="inner"><nav id="TableOfContents"></nav>
</div>
</details>
</div>
<div class="post-content"><h1 id="1st-step-increaseresize-disk-from-gui-console">1st step: Increase/resize disk from GUI console<a hidden class="anchor" aria-hidden="true" href="#1st-step-increaseresize-disk-from-gui-console">#</a></h1>
<p><img loading="lazy" src="/assets/img/prox-resize.png" alt="Proxmox webui change" />
</p>
<h1 id="2nd-step-extend-physical-drive-partition-and-check-free-space-with">2nd step: Extend physical drive partition and check free space with:<a hidden class="anchor" aria-hidden="true" href="#2nd-step-extend-physical-drive-partition-and-check-free-space-with">#</a></h1>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo growpart /dev/sda <span class="m">3</span>
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo pvdisplay
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo pvresize /dev/sda3
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo pvdisplay
</span></span></code></pre></div><h1 id="3rd-step-extend-logical-volume">3rd step: Extend Logical volume<a hidden class="anchor" aria-hidden="true" href="#3rd-step-extend-logical-volume">#</a></h1>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo lvdisplay
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo lvdisplay
</span></span></code></pre></div><h1 id="4th-step-resize-filesystem">4th step: Resize Filesystem<a hidden class="anchor" aria-hidden="true" href="#4th-step-resize-filesystem">#</a></h1>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo fdisk -l
</span></span></code></pre></div>
</div>
<footer class="post-footer">
<ul class="post-tags">
</ul>
<nav class="paginav">
<a class="next" href="https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/">
<span class="title">Next »</span>
<br>
<span>Proton Mail - SimpleLogin authentik Social Login Setup</span>
</a>
</nav>
</footer>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
<script>
document.querySelectorAll('pre > code').forEach((codeblock) => {
const container = codeblock.parentNode.parentNode;
const copybutton = document.createElement('button');
copybutton.classList.add('copy-code');
copybutton.innerHTML = 'copy';
function copyingDone() {
copybutton.innerHTML = 'copied!';
setTimeout(() => {
copybutton.innerHTML = 'copy';
}, 2000);
}
copybutton.addEventListener('click', (cb) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(codeblock.textContent);
copyingDone();
return;
}
const range = document.createRange();
range.selectNodeContents(codeblock);
const selection = window.getSelection();
selection.removeAllRanges();
selection.addRange(range);
try {
document.execCommand('copy');
copyingDone();
} catch (e) { };
selection.removeRange(range);
});
if (container.classList.contains("highlight")) {
container.appendChild(copybutton);
} else if (container.parentNode.firstChild == container) {
} else if (codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName == "TABLE") {
codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(copybutton);
} else {
codeblock.parentNode.appendChild(copybutton);
}
});
</script>
</body>
</html>

277
posts/search/index.html Normal file
View file

@ -0,0 +1,277 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>Search | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="">
<meta name="description" content="search">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/search/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style"><link crossorigin="anonymous" rel="preload" as="fetch" href="../index.json">
<script defer crossorigin="anonymous" src="/assets/js/search.08e05469bdb256c7ac07101becb0f8f73deb8a2e7fc656044896538a7f8023e1.js" integrity="sha256-COBUab2yVsesBxAb7LD49z3rii5/xlYESJZTin&#43;AI&#43;E="></script>
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/search/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="Search" />
<meta property="og:description" content="search" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/posts/search/" /><meta property="article:section" content="posts" />
<meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Search"/>
<meta name="twitter:description" content="search"/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Search",
"item": "https://mafyuh.github.io/posts/search/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Search",
"name": "Search",
"description": "search",
"keywords": [
],
"articleBody": "",
"wordCount" : "0",
"inLanguage": "en",
"datePublished": "0001-01-01T00:00:00Z",
"dateModified": "0001-01-01T00:00:00Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/posts/search/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="list" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<header class="page-header">
<h1>Search <svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<circle cx="11" cy="11" r="8"></circle>
<line x1="21" y1="21" x2="16.65" y2="16.65"></line>
</svg>
</h1>
<div class="post-meta"></div>
</header>
<div id="searchbox">
<input id="searchInput" autofocus placeholder="Search ↵"
aria-label="search" type="search" autocomplete="off" maxlength="64">
<ul id="searchResults" aria-label="search results"></ul>
</div>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
</body>
</html>

429
posts/software/index.html Normal file
View file

@ -0,0 +1,429 @@
<!DOCTYPE html>
<html lang="en" dir="auto">
<head><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>Software | Mafyuh&#39;s Blog</title>
<meta name="keywords" content="Import 2023-08-26 04:06, Import 2023-09-08 02:16">
<meta name="description" content="Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI">
<meta name="author" content="Mafyuh">
<link rel="canonical" href="https://mafyuh.github.io/posts/software/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" hreflang="en" href="https://mafyuh.github.io/posts/software/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:title" content="Software" />
<meta property="og:description" content="Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://mafyuh.github.io/posts/software/" /><meta property="article:section" content="posts" />
<meta property="article:published_time" content="2023-08-26T00:13:40+00:00" />
<meta property="article:modified_time" content="2023-08-26T00:13:40+00:00" /><meta property="og:site_name" content="Mafyuh&#39;s Blog" />
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Software"/>
<meta name="twitter:description" content="Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI"/>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://mafyuh.github.io/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Software",
"item": "https://mafyuh.github.io/posts/software/"
}
]
}
</script>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Software",
"name": "Software",
"description": "Just a straight forward list of pretty much everything that makes up my homelab. Or systems I\u0026rsquo;ve ran in the past.\nOperating Systems\nUbuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers\nNginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI",
"keywords": [
"Import 2023-08-26 04:06", "Import 2023-09-08 02:16"
],
"articleBody": "Just a straight forward list of pretty much everything that makes up my homelab. Or systems Ive ran in the past.\nOperating Systems\nUbuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers\nNginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI\nGPT4ALL Stable Diffusion LocalAI Auto-GPT Comfy UI Arr Suite\nRadarr Sonarr Prowlarr Lidarr Jellyseer Tdarr Requesterr Real Debrid Client Wizarr ",
"wordCount" : "124",
"inLanguage": "en",
"datePublished": "2023-08-26T00:13:40Z",
"dateModified": "2023-08-26T00:13:40Z",
"author":{
"@type": "Person",
"name": "Mafyuh"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://mafyuh.github.io/posts/software/"
},
"publisher": {
"@type": "Organization",
"name": "Mafyuh's Blog",
"logo": {
"@type": "ImageObject",
"url": "https://mafyuh.github.io/assets/favicon/favicon.svg"
}
}
}
</script>
</head>
<body class="" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://mafyuh.github.io/" accesskey="h" title="Mafyuh&#39;s Blog (Alt + H)">
<img src="https://mafyuh.github.io/assets/favicon/favicon.svg" alt="" aria-label="logo"
height="35">Mafyuh&#39;s Blog</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
<ul class="lang-switch"><li>|</li>
</ul>
</div>
</div>
<ul id="menu">
<li>
<a href="https://mafyuh.github.io/guides/" title="Guides">
<span>Guides</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
</nav>
</header>
<main class="main">
<article class="post-single">
<header class="post-header">
<div class="breadcrumbs"><a href="https://mafyuh.github.io/">Home</a>&nbsp;»&nbsp;<a href="https://mafyuh.github.io/posts/">Posts</a></div>
<h1 class="post-title entry-hint-parent">
Software
</h1>
<div class="post-meta"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh
</div>
</header>
<div class="post-content"><p>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&rsquo;ve ran in the past.</p>
<p>Operating Systems</p>
<ul>
<li>Ubuntu 23.04</li>
<li>Ubuntu 22.04 (primary on most systems)</li>
<li>CentOS/Fedora 38 (only when Ubuntu doesnt play nice)</li>
<li>Debian 11</li>
<li>Proxmox 8</li>
<li>Windows 10/11</li>
<li>TrueNAS Scale (virtualized)</li>
<li>CasaOS (zimaboard)</li>
<li>pfSense</li>
</ul>
<p>Applications/Containers</p>
<ul>
<li><a href="https://nginxproxymanager.com/">Nginx Proxy Manager</a></li>
<li><a href="https://www.nginx.com/">Nginx</a></li>
<li><a href="https://httpd.apache.org/">Apache2</a></li>
<li><a href="https://traefik.io/traefik/">Traefik</a></li>
<li><a href="https://goauthentik.io/">Authentik</a></li>
<li><a href="https://docs.portainer.io/start/install-ce">Portainer</a></li>
<li><a href="https://yacht.sh/">Yacht</a></li>
<li><a href="https://adguard.com/en/adguard-home/overview.html">AdGuardHome</a></li>
<li><a href="https://pi-hole.net/">Pihole</a></li>
<li><a href="https://wazuh.com/">Wazuh</a></li>
<li><a href="https://www.zabbix.com/">Zabbix</a></li>
<li><a href="https://github.com/louislam/uptime-kuma">Uptime Kuma</a></li>
<li><a href="https://ghost.org/">Ghost</a> (this blog)</li>
<li><a href="https://wordpress.com/">Wordpress</a></li>
<li><a href="https://github.com/emersion/hydroxide">Hydroxide</a> (proton mail bridge)</li>
<li><a href="https://calibre-ebook.com/">Calibre</a></li>
<li><a href="https://oss.oetiker.ch/smokeping/">Smokeping</a></li>
<li><a href="https://openspeedtest.com/">Openspeedtest</a></li>
<li><a href="https://hub.docker.com/r/grafana/grafana">Grafana</a></li>
<li><a href="https://hub.docker.com/r/prom/prometheus">Prometheus</a></li>
<li><a href="https://www.influxdata.com/">InfluxDB</a></li>
<li><a href="https://hub.docker.com/_/postgres">PostgresSQL</a></li>
<li><a href="https://hub.docker.com/_/mysql">MySQL</a></li>
<li><a href="https://github.com/containrrr/watchtower">Watchtower</a></li>
<li><a href="https://guacamole.apache.org/doc/gug/guacamole-docker.html">Apache Guacamole</a></li>
<li><a href="https://www.ansible.com/overview/how-ansible-works">Ansible</a></li>
<li><a href="https://www.terraform.io/">Terraform</a></li>
<li><a href="https://www.packer.io/">Packer</a></li>
<li><a href="https://github.com/dani-garcia/vaultwarden">Vaultwarden</a></li>
<li><a href="https://kasmweb.com/">Kasm Workspaces</a></li>
<li><a href="https://jellyfin.org/">Jellyfin</a></li>
<li><a href="https://plex.tv">Plex</a></li>
<li><a href="https://www.twingate.com/">Twingate</a></li>
<li><a href="https://tailscale.com/">Tailscale</a></li>
<li><a href="https://github.com/juanfont/headscale">Headscale</a></li>
<li>Wireguard</li>
<li><a href="https://linkstack.org/">LinkStack</a></li>
<li><a href="https://n8n.io/">N8N</a></li>
<li><a href="https://gotify.net/">Gotify</a></li>
<li><a href="https://nextcloud.com/">Nextcloud</a></li>
<li><a href="https://github.com/immich-app/immich">Immich</a></li>
</ul>
<p>AI</p>
<ul>
<li>GPT4ALL</li>
<li>Stable Diffusion</li>
<li>LocalAI</li>
<li>Auto-GPT</li>
<li>Comfy UI</li>
</ul>
<p>Arr Suite</p>
<ul>
<li>Radarr</li>
<li>Sonarr</li>
<li>Prowlarr</li>
<li>Lidarr</li>
<li>Jellyseer</li>
<li>Tdarr</li>
<li>Requesterr</li>
<li>Real Debrid Client</li>
<li>Wizarr</li>
</ul>
</div>
<footer class="post-footer">
<ul class="post-tags">
<li><a href="https://mafyuh.github.io/tags/import-2023-08-26-0406/">Import 2023-08-26 04:06</a></li>
<li><a href="https://mafyuh.github.io/tags/import-2023-09-08-0216/">Import 2023-09-08 02:16</a></li>
</ul>
<nav class="paginav">
<a class="prev" href="https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/">
<span class="title">« Prev</span>
<br>
<span>How To Authenticate KASM via authentik</span>
</a>
<a class="next" href="https://mafyuh.github.io/archives/">
<span class="title">Next »</span>
<br>
<span>Archives</span>
</a>
</nav>
</footer>
</article>
</main>
<footer class="footer">
<span>&copy; 2024 <a href="https://mafyuh.github.io/">Mafyuh&#39;s Blog</a></span>
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
<script>
document.querySelectorAll('pre > code').forEach((codeblock) => {
const container = codeblock.parentNode.parentNode;
const copybutton = document.createElement('button');
copybutton.classList.add('copy-code');
copybutton.innerHTML = 'copy';
function copyingDone() {
copybutton.innerHTML = 'copied!';
setTimeout(() => {
copybutton.innerHTML = 'copy';
}, 2000);
}
copybutton.addEventListener('click', (cb) => {
if ('clipboard' in navigator) {
navigator.clipboard.writeText(codeblock.textContent);
copyingDone();
return;
}
const range = document.createRange();
range.selectNodeContents(codeblock);
const selection = window.getSelection();
selection.removeAllRanges();
selection.addRange(range);
try {
document.execCommand('copy');
copyingDone();
} catch (e) { };
selection.removeRange(range);
});
if (container.classList.contains("highlight")) {
container.appendChild(copybutton);
} else if (container.parentNode.firstChild == container) {
} else if (codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName == "TABLE") {
codeblock.parentNode.parentNode.parentNode.parentNode.parentNode.appendChild(copybutton);
} else {
codeblock.parentNode.appendChild(copybutton);
}
});
</script>
</body>
</html>

View file

@ -5,25 +5,25 @@
<loc>https://mafyuh.github.io/</loc>
<lastmod>2024-02-06T02:58:07+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/</loc>
<loc>https://mafyuh.github.io/posts/</loc>
<lastmod>2024-02-06T02:58:07+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/resize-ubuntu-vm-disk/</loc>
<loc>https://mafyuh.github.io/posts/resize-ubuntu-vm-disk/</loc>
<lastmod>2024-02-06T02:58:07+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/proton-mail-authentik-social-login-setup/</loc>
<loc>https://mafyuh.github.io/posts/proton-mail-authentik-social-login-setup/</loc>
<lastmod>2023-11-12T16:20:00+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/how-to-automate-jellyfin-issue-handling/</loc>
<loc>https://mafyuh.github.io/posts/how-to-automate-jellyfin-issue-handling/</loc>
<lastmod>2023-11-11T16:20:00+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/how-to-authenticate-guacamole-authentik-nginxproxymanager/</loc>
<loc>https://mafyuh.github.io/posts/how-to-authenticate-guacamole-authentik-nginxproxymanager/</loc>
<lastmod>2023-10-29T16:20:00+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</loc>
<loc>https://mafyuh.github.io/posts/how-to-authenticate-zammad-via-saml-with-nginx-proxy-manager/</loc>
<lastmod>2023-10-29T16:20:00+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/how-to-authenticate-kasm-via-authentik/</loc>
<loc>https://mafyuh.github.io/posts/how-to-authenticate-kasm-via-authentik/</loc>
<lastmod>2023-09-30T16:20:00+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/categories/</loc>
@ -41,10 +41,14 @@
<loc>https://mafyuh.github.io/categories/import-2023-09-08-0216/</loc>
<lastmod>2023-08-26T00:13:40+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/post/software/</loc>
<loc>https://mafyuh.github.io/posts/software/</loc>
<lastmod>2023-08-26T00:13:40+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/tags/</loc>
<lastmod>2023-08-26T00:13:40+00:00</lastmod>
</url><url>
<loc>https://mafyuh.github.io/archives/</loc>
</url><url>
<loc>https://mafyuh.github.io/posts/search/</loc>
</url>
</urlset>

View file

@ -12,8 +12,8 @@
<link rel="canonical" href="https://mafyuh.github.io/tags/import-2023-08-26-0406/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -117,8 +117,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span>Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
@ -151,7 +156,7 @@ Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI...</p>
</div>
<footer class="entry-footer"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/post/software/"></a>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/posts/software/"></a>
</article>
</main>

View file

@ -10,9 +10,9 @@
<atom:link href="https://mafyuh.github.io/tags/import-2023-08-26-0406/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Software</title>
<link>https://mafyuh.github.io/post/software/</link>
<link>https://mafyuh.github.io/posts/software/</link>
<pubDate>Sat, 26 Aug 2023 00:13:40 +0000</pubDate>
<guid>https://mafyuh.github.io/post/software/</guid>
<guid>https://mafyuh.github.io/posts/software/</guid>
<description>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&amp;rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers

View file

@ -12,8 +12,8 @@
<link rel="canonical" href="https://mafyuh.github.io/tags/import-2023-09-08-0216/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -117,8 +117,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span>Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>
@ -151,7 +156,7 @@ Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when
Nginx Proxy Manager Nginx Apache2 Traefik Authentik Portainer Yacht AdGuardHome Pihole Wazuh Zabbix Uptime Kuma Ghost (this blog) Wordpress Hydroxide (proton mail bridge) Calibre Smokeping Openspeedtest Grafana Prometheus InfluxDB PostgresSQL MySQL Watchtower Apache Guacamole Ansible Terraform Packer Vaultwarden Kasm Workspaces Jellyfin Plex Twingate Tailscale Headscale Wireguard LinkStack N8N Gotify Nextcloud Immich AI...</p>
</div>
<footer class="entry-footer"><span title='2023-08-26 00:13:40 +0000 UTC'>August 26, 2023</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;124 words&nbsp;·&nbsp;Mafyuh</footer>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/post/software/"></a>
<a class="entry-link" aria-label="post link to Software" href="https://mafyuh.github.io/posts/software/"></a>
</article>
</main>

View file

@ -10,9 +10,9 @@
<atom:link href="https://mafyuh.github.io/tags/import-2023-09-08-0216/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Software</title>
<link>https://mafyuh.github.io/post/software/</link>
<link>https://mafyuh.github.io/posts/software/</link>
<pubDate>Sat, 26 Aug 2023 00:13:40 +0000</pubDate>
<guid>https://mafyuh.github.io/post/software/</guid>
<guid>https://mafyuh.github.io/posts/software/</guid>
<description>Just a straight forward list of pretty much everything that makes up my homelab. Or systems I&amp;rsquo;ve ran in the past.
Operating Systems
Ubuntu 23.04 Ubuntu 22.04 (primary on most systems) CentOS/Fedora 38 (only when Ubuntu doesnt play nice) Debian 11 Proxmox 8 Windows 10/11 TrueNAS Scale (virtualized) CasaOS (zimaboard) pfSense Applications/Containers

View file

@ -12,8 +12,8 @@
<link rel="canonical" href="https://mafyuh.github.io/tags/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity="sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z&#43;V9&#43;cO1A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/img/newlogo.png">
<link rel="icon" type="image/png" sizes="16x16" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="https://mafyuh.github.io/assets/favicon/favicon.svg">
<link rel="apple-touch-icon" href="https://mafyuh.github.io/apple-touch-icon.png">
<link rel="mask-icon" href="https://mafyuh.github.io/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
@ -117,8 +117,13 @@
</a>
</li>
<li>
<a href="https://mafyuh.github.io/tags/" title="Tags">
<span class="active">Tags</span>
<a href="https://mafyuh.github.io/archives/" title="Archives">
<span>Archives</span>
</a>
</li>
<li>
<a href="https://mafyuh.github.io/search" title="Search (Alt &#43; /)" accesskey=/>
<span>Search</span>
</a>
</li>
</ul>