Merge pull request 'develop to main' (#28) from develop into main
All checks were successful
ci / deploy (push) Successful in 42s

Reviewed-on: #28
This commit is contained in:
Stephan Hadan 2025-03-06 21:29:51 +01:00
commit 7ce63212e4
18 changed files with 447 additions and 3 deletions

View file

@ -1 +1 @@
04.03.2025
06.03.2025

View file

@ -2,6 +2,7 @@
page.title: Tätigkeitsübersicht
pdf: false
coments: false
status: new
---
# Tätigkeitsübersicht

View file

@ -35,6 +35,7 @@ Dieses Impressum gilt auch für die folgenden Social-Media-Präsenzen, Webseiten
* [https://techstack.hadan.de](https://techstack.hadan.de)
* [https://reaktionsfaehig.net](https://reaktionsfaehig.net)
* [https://status.hadan-it.com/status/reaktionsfaehig](https://status.hadan-it.com/status/reaktionsfaehig)
* [https://status.hadan-it.com/status/myprivatepage](https://status.hadan-it.com/status/myprivatepage)
## Vorbehalt der Nutzung für Text und Data-Mining

View file

@ -5,6 +5,10 @@ status: wip
---
# Pionierarbeit
!!! question "Ups ... ist da etwas noch nicht fertig? :face_with_raised_eyebrow:"
Ja, dieser Bereich ist noch nicht fertig . Da ich aber gerne die Betrachter meiner Website mit auf meine (Gedanken-)Reise nehmen möchte, stelle ich schon mal etwas ein. Dadurch kann man bereits frühzeitig sehen worin meine Intention mit dieser Einzelseite liegt. :nerd_face:
<figure markdown="span">
![Online-Store](images/shop.jpg){ loading=lazy }
<figcaption>Foto von <a href="https://unsplash.com/de/@reganography?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Samuel Regan-Asante</a> auf <a href="https://unsplash.com/de/fotos/illustration-roter-und-weisser-linien-cYNp8un5QkI?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Unsplash</a>

View file

@ -5,6 +5,10 @@ status: wip
---
# IT-Umzüge
!!! question "Ups ... ist da etwas noch nicht fertig? :face_with_raised_eyebrow:"
Ja, dieser Bereich ist noch nicht fertig . Da ich aber gerne die Betrachter meiner Website mit auf meine (Gedanken-)Reise nehmen möchte, stelle ich schon mal etwas ein. Dadurch kann man bereits frühzeitig sehen worin meine Intention mit dieser Einzelseite liegt. :nerd_face:
<figure markdown="span">
![Programmieren](images/moving.jpg){ loading=lazy }
<figcaption>Foto von <a href="https://unsplash.com/de/@handiworknyc?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Handiwork NYC</a> auf <a href="https://unsplash.com/de/fotos/frau-in-blauen-shorts-und-schwarzen-stiefeln-steht-tagsuber-neben-einem-gelb-weissen-lastwagen-x6pnKtPZ-8s?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Unsplash</a>

View file

@ -5,6 +5,10 @@ status: wip
---
# Zero-Trust-Security
!!! question "Ups ... ist da etwas noch nicht fertig? :face_with_raised_eyebrow:"
Ja, dieser Bereich ist noch nicht fertig . Da ich aber gerne die Betrachter meiner Website mit auf meine (Gedanken-)Reise nehmen möchte, stelle ich schon mal etwas ein. Dadurch kann man bereits frühzeitig sehen worin meine Intention mit dieser Einzelseite liegt. :nerd_face:
<figure markdown="span">
![Programmieren](images/security.jpg){ loading=lazy }
<figcaption>Foto von <a href="https://unsplash.com/de/@flyd2069?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">FlyD</a> auf <a href="https://unsplash.com/de/fotos/rosa-und-silbernes-vorhangeschloss-auf-schwarzer-computertastatur-F7aZ8G7gGBQ?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Unsplash</a>

View file

@ -0,0 +1,55 @@
---
pdf: false
comments: false
status: wip
---
# Was muss auf meine Clients?
!!! question "Ups ... ist da etwas noch nicht fertig? :face_with_raised_eyebrow:"
Ja, dieser Bereich ist noch nicht fertig . Da ich aber gerne die Betrachter meiner Website mit auf meine (Gedanken-)Reise nehmen möchte, stelle ich schon mal etwas ein. Dadurch kann man bereits frühzeitig sehen worin meine Intention mit dieser Einzelseite liegt. :nerd_face:
## Desktop-Clients
Meine Desktop-Client-Systeme richte ich komplett mit Ansible ein und den jeweiligen Paketmanagern und App-Stores des Systems (Linux: [dnf](https://rpm-software-management.github.io/) & [flatpak](https://flatpak.org/), macOS: [Homebrew](https://brew.sh/) & [Mac App Store](https://www.apple.com/de/app-store/)).
### Betriebssysteme
Als Desktop-Betriebssystem für Linux-Systeme setze ich auf [Fedora Workstation](https://fedoraproject.org/workstation/). Es bietet mir die Robustheit, die ich benötige und wird kontinuierlich weiterentwickelt, sodass ich natürlich auch die neuesten Entwicklungen unter Linux mitbekomme. Als primärer Window-Manager kommt [Cinnamon](https://de.wikipedia.org/wiki/Cinnamon_(Desktop-Umgebung)) zum Einsatz, neben anderen.
Für das Macbook Pro und den Mac mini kommt [macOS 15 (Sequoia)](https://www.apple.com/de/macos/macos-sequoia/) zum Einsatz.
[Windows 11](https://www.microsoft.com/de-de/windows/windows-11?r=1) virtualisiere ich mit [UTM](https://getutm.app/) auf meinem macMini und verwende es bei Bedarf.
### Meine Anwendungen
Ich versuche möglichst auf allen Betriebssystemen gleiche Anwendungen zu verwenden, um einen Umgewöhnungseffekt zu vermeiden. Dies gelingt mir nicht immer und ich benötige dann Alternativen. In der nachstehenden Tabelle sind meine All-Time-Favorites kategorisiert aufgeführt und unter welchen Betriebssystemen diese verfügbar sind.
Bevorzugt verwende ich natürlich FOSS-Anwendungen.
| Anwendung | Kategorie | Linux | macOS | Windows | Lizenz |
| ------------------------------------------------------------------- | ------------------- | ----- | ----- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| [Amperfy](https://apps.apple.com/de/app/amperfy-music/id1530145038) | Musikplayer | ❌ | ✅ | ❌ | [GPLv3+](https://www.gnu.org/licenses/gpl-3.0.txt) |
| [Brave](https://brave.com/) | Browser | ✅ | ✅ | ✅ | [MPL-2.0](https://www.mozilla.org/media/MPL/2.0/index.f75d2927d3c1.txt)/[LGPLv2.1](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt) |
| [GIMP](https://www.gimp.org/) | Grafiksoftware | ✅ | ✅ | ✅ | [LGPLv3+](https://www.gnu.org/licenses/lgpl-3.0.txt) und [GPLv3+](https://www.gnu.org/licenses/gpl-3.0.txt) |
| [LibreOffice](https://de.libreoffice.org/) | Office-Paket | ✅ | ✅ | ✅ | [MPL-2.0](https://www.mozilla.org/media/MPL/2.0/index.f75d2927d3c1.txt) |
| [LibreWolf](https://librewolf.net/) | Browser | ✅ | ✅ | ✅ | [MPL-2.0](https://www.mozilla.org/media/MPL/2.0/index.f75d2927d3c1.txt) |
| [Vivaldi](https://vivaldi.com/de/) | Browser | ✅ | ✅ | ✅ | [Freeware](https://de.wikipedia.org/wiki/Freeware) (Teile von Dritten: MPL, GPL, BSD, Apache etc.) |
| [VSCodium](https://vscodium.com/) | Quelltext-Editor | ✅ | ✅ | ✅ | [MIT License](https://raw.githubusercontent.com/VSCodium/vscodium/refs/heads/master/LICENSE) |
| [Waterfox](https://www.waterfox.net/) | Browser | ✅ | ✅ | ✅ | [MPL-2.0](https://www.mozilla.org/media/MPL/2.0/index.f75d2927d3c1.txt) |
| [Zoom](https://www.zoom.com/) | Videoconferencing | ✅ | ✅ | ✅ | Proprietär |
| [Zotero](https://www.zotero.org/) | Literaturverwaltung | ✅ | ✅ | ✅ | [AGPL v3](https://www.gnu.org/licenses/agpl-3.0.txt) |
| | | | | | |
### Meine Command-Line-Tools
| Tool | Kategorie | Linux | macOS | Windows | Lizenz |
| ---- | --------- | ----- | ----- | ------- | ------ |
| | | | | | |
## Mobile Clients
### Meine Anwendungen
| Anwendung | Kategorie | iOS | iPadOS | Android | Fire OS | Lizenz |
| --------- | --------- | --- | ------ | ------- | ------- | ------ |
| | | | | | | |

View file

@ -9,3 +9,41 @@ Da ich mich mit vielen verschiedenen Themen beschäftige, habe ich meinen Tech-S
!!! question "Was ist eine Awesome-List?"
Eine **Awesome-List** ist eine kuratierte Sammlung von Links und Ressourcen zu einem bestimmten Thema, die von der Community gepflegt wird. Sie dient als hilfreiche Übersicht und Inspirationsquelle für Entwickler und Interessierte.
Daneben möchte ich meinen privaten Tech-Stack an dieser Stelle präsentieren.
<div class="grid cards" markdown>
- :fontawesome-brands-osi:{ .lg .middle } __Mein FOSS-Stack__
---
Was setze ich denn privat für FOSS-Services ein? Wie habe ich das realisiert? Und was wird noch kommen?
[:octicons-arrow-right-24: Zu meinem FOSS-Stack](/techstack/myfoss-stack/)
- :fontawesome-solid-laptop:{ .lg .middle } __Was muss auf meine Clients?__
---
Was muss auf meine Client-Systeme? Wie verwalte ich die Inhalte?
[:octicons-arrow-right-24: Zu meinen Client-Anwendungen](/techstack/client-software/)
- :material-desk:{ .lg .middle } __Mein Arbeitsplatz__
---
Wie ist mein Arbeitsplatz ausgestattet? Welche technischen Geräte kommen zum Einsatz?
[:octicons-arrow-right-24: Zu meinem Desk-Setup](/techstack/myworkplace/)
- :material-view-gallery-outline:{ .lg .middle } __Testimonials__
---
Ein paar Screenshots meiner Services in Galerie-Form aufbereitet.
[:octicons-arrow-right-24: Zu den Testimonials](/techstack/testimonials/)
</div>

View file

@ -0,0 +1,167 @@
---
pdf: false
comments: false
status: new
---
# Mein persönlicher FOSS-Stack
Da ich auch privat weitestgehend auf FOSS (Freie und Open-Source-Software) setze, möchte ich meine persönlichen Präferenzen und mein Setup nicht unerwähnt lassen.
!!! info
FOSS bedeutet Freie und Open-Source-Software. Das bedeutet nicht, dass die Software kostenlos ist. Das bedeutet, dass der Quellcode der Software für alle offen ist und jeder den Code frei verwenden, studieren und ändern kann. Dieses Prinzip ermöglicht es anderen, wie in einer Community zur Entwicklung und Verbesserung einer Software beizutragen.
## Mein Hardware-Setup für meine Services
### Interne (Server-)Systeme
Ich habe zwei zentrale (Server-)Systeme, welche ich für besonders kritische Anwendungen daheim nutze und ich unbedingt die Datenhoheit darüber behalten möchte.
Alle Services werden in Docker-Compose-Stacks bzw. Podman-Compose-Stacks bereitgestellt (wenn nicht anderweitig erwähnt). Einige Docker-Compose-Stacks sind auf allen VPS identisch:
* [Borgmatic](https://torsion.org/borgmatic/) - Borg Backup & Restore für meine Instanzen und die zugehörigen Datenbanken.
* [Diun](https://crazymax.dev/diun/) - **D**ocker **I**mage **U**pdate **N**otifier zur Überwachung der Aktualität der Docker-Images
* [Node exporter](https://github.com/prometheus/node_exporter) - Exporter für Node-Metriken (Prometheus)
* [Cadvisor](https://github.com/google/cadvisor) - Metriken zu laufenden Docker Containern für Prometheus
* Wenn Podman im Einsatz ist: [Podman exporter](https://github.com/containers/prometheus-podman-exporter) - Exporter für Podman-Metriken (Prometheus)
* [Nginx Proxy Manager](https://nginxproxymanager.com/) - - der Reverse-Proxy für die Bereitstellung der Services und Zertifikate. Intern verwende ich die DNS-Challenge zur Bereitstellung der Zertifikate.
Das zentrale System ist ein leider schon etwas betagtes [Lenovo ThinkCentre M93p Tiny](https://www.thinkstore24.de/pc-workstation/529/lenovo-thinkcentre-m93p-tiny-intel-core-i5-4570t-2.9-ghz-8gb-ram-256gb-ssd-windows-10?srsltid=AfmBOoonBoVP0jvYFLmkRprVyHXqpHdyR8b_a9MybbTpQx1LJ1djZ6Vj), welches ich ein wenig aufgerüstet habe. Hierauf befinden sich folgende Anwendungen:
* **Betriebssystem:**
* [Debian](https://www.debian.org) 12 (Bookworm)
* **Software:**
* [Docker](https://www.docker.com/) für die Bereitstellung nachfolgender Softwarestacks:
* [Pi-hole](https://pi-hole.net/) als Tracking- und Werbeblocker sowie als lokaler DNS-Server
* [Open WebUI](https://openwebui.com/) - mein Web UI für meine private Ollama- und LocalAI-Instanz
* [OpenProject](https://www.openproject.org/) - mein privates Projekt- und Time-Tracking-Tool
* [Nextcloud](https://nextcloud.com/) - mein privater Microsoft 365 - Ersatz (inkl. Online-Office Collabora CODE) und Whiteboard (auf Basis von Excalidraw)
* [XWiki](https://xwiki.org) - mein privates Wiki für interne Dokumentationen
* [BorgWarehouse](https://borgwarehouse.com/) - eine BorgWarehouse-Instanz für die Sicherung aller meiner internen und externen Instanzen via Borgmatic auf mein internes NAS
* [Borgmatic](https://torsion.org/borgmatic/) - sichert die Daten meines Stacks entsprechend auf mein internes NAS
* [SearXNG](https://docs.searxng.org/) - meine private Suchmaschine
* [Semaphore UI](https://semaphoreui.com/) - meine UI für Ansible, OpenTofu, Bash, Powershell und Python
* [Calibre Web](https://github.com/janeczku/calibre-web) - mein privater E-Book-Manager und -Viewer
* [Cops](https://github.com/mikespub-org/seblucas-cops) - mein OPSD-Feed um die E-Books auf meinen Tablets bereitstellen zu können
Für meinen lokalen AI-Stack verwende ich einen [Mac mini mit M1-Prozessor und 16 GB RAM sowie 512 GB SSD](https://support.apple.com/en-us/111894), dieser ist für meine damit verbundenen Use-Cases völlig ausreichend und es laufen schon einige spannende Modelle darauf. Natürlich verwende ich ihn ebenso als Desktop-System. Folgende Anwendungen für meinen Stack kommen zum Einsatz:
* **Betriebssystem:**
* [macOS](https://www.apple.com/de/macos/macos-sequoia/) "Sequoia" 15
* **Software:**
* [Podman](https://podman.io/) zur Bereitstellung folgender Services:
* [LibreTranslate](https://libretranslate.com/) - Meine Übersetzungs-API.
* Meine AI-Services lasse ich (noch) nicht via Podman laufen, obwohl die GPU von macOS an die Container durchgereicht werden kann, ist die Geschwindigkeit noch recht langsam.
* [Ollama](https://ollama.com/) - Stellt die von mir verwendeten Large-Language-Models (LLMs) bereit
* [LocalAI](https://localai.io/) - Stellt mir kleinere LLMs, Whisper (Speech-to-Text), Vision-Modelle, Reranker-Modelle, Embeddings-Modelle und Modelle zur Bilderzeugung über eine OpenAI-kompatible Schnittstelle bereit
* [Homebridge](https://homebridge.io/) - Homebridge ermöglicht mir die Integration von Smart Home-Geräten, die HomeKit nicht von Haus aus unterstützen. Mein zentraler HomeKit-Server ist ein Apple TV 4k (2. Generation mit Wifi+Ethernet).
* [Emby Server](https://emby.media) - Emby bringt meine persönlichen Videos, Musik, Fotos, Podcasts und Live-Fernsehen zusammen.
Einzelne Services kann ich aus dem Internet erreichen, hierzu habe ich [Wireguard](https://www.wireguard.com/)-Tunnel bereitgestellt, um die DS-Lite-Einschränkungen hinsichtlich mangelnder Public-IPs zu umgehen.
Beide o.g. Systeme sind mit einem QNAP-NAS der Baureihe [TS-212P](https://www.qnap.com/de-de/product/ts-212p) verbunden, welches mir als zusätzlicher Storage (auch für Backups) dient.
### Externe VPS-Systeme
Als Betriebssystem setze ich grundsätzlich bei allen Systemen auf [Debian](https://www.debian.org) 12 (Bookworm). Alle Services werden in Docker-Compose-Stacks bereitgestellt auf sechs VPS.
Einige Docker-Compose-Stacks sind auf allen VPS identisch:
* [Borgmatic](https://torsion.org/borgmatic/) - Borg Backup & Restore für meine Instanzen und die zugehörigen Datenbanken.
* [Diun](https://crazymax.dev/diun/) - **D**ocker **I**mage **U**pdate **N**otifier zur Überwachung der Aktualität der Docker-Images
* [Node exporter](https://github.com/prometheus/node_exporter) - Exporter für Node-Metriken (Prometheus)
* [Cadvisor](https://github.com/google/cadvisor) - Metriken zu laufenden Docker Containern für Prometheus
* [Nginx Proxy Manager](https://nginxproxymanager.com/) - der Reverse-Proxy für die Bereitstellung der Services und Zertifikate, wenn nicht anders erwähnt.
Mein favorisierter Hosting-Dienstleister ist [ETH-Services](https://www.eth-services.de/), welcher mir die entsprechenden virtualisierten Systeme unkompliziert, schnell und kostengünstig bereitstellt. Ein VPS läuft noch bei [OVH](https://www.eth-services.de/). Die Services werden in Rechenzentren in Deutschland bereitgestellt.
Meine Domains beziehe und verwalte ich über [OVH](https://www.ovhcloud.com/de/). Zusätzlich verwende ich die Optionen [Domain Name System Security Extension (DNSSEC)](https://de.wikipedia.org/wiki/Domain_Name_System_Security_Extensions) und [Anycast DNS](https://www.ovhcloud.com/en/domains/options/dns-anycast/).
#### Mein Mailserver
Mein Mailsetup besteht aus einem [Mailcow-dockerized-Stack](https://mailcow.email/de/). Alle Komponenten werden mittels Docker-Containern bereitgestellt. Diese umfassen:
* [ACME](https://letsencrypt.org/) - Automatische Generierung von Let's Encrypt Zertifikaten
* [ClamAV](https://www.clamav.net/) - Antiviren-Scanner
* [Dovecot](https://www.dovecot.org/) - IMAP/POP-Server zum Abrufen von E-Mails mit integrierter Volltextsuchmaschine "Flatcurve"
* [MariaDB](https://mariadb.org/) - Datenbank zur Speicherung von Benutzerinformationen etc.
* [Memcached](https://www.memcached.org/) - Cache für den Webmailer SOGo
* [Netfilter](https://github.com/mkuron) - Fail2ban-ähnliche Integration
* [Nginx](https://nginx.org/) - Webserver für Komponenten des Stacks
* [Olefy](https://github.com/HeinleinSupport/olefy) - Analyse von Office-Dokumenten auf Viren, Makros, etc.
* [PHP](https://php.net/) - Programmiersprache der meisten webbasierten mailcow-Anwendungen
* [Postfix](http://www.postfix.org/) - MTA (Mail Transfer Agent) für den E-Mail-Verkehr im Internet
* [Redis](https://redis.io/) - Speicher für Spam-Informationen, DKIM-Schlüssel, etc.
* [Rspamd](https://www.rspamd.com/) - Spamfilter mit automatischem Lernen von Spam-Mails
* [SOGo](https://sogo.nu/) - Integrierter Webmailer und Cal-/Carddav-Schnittstelle
* [Unbound](https://unbound.net/) - Integrierter DNS-Server zur Überprüfung von DNSSEC usw.
* Watchdog - Zur grundlegenden Überwachung des Container-Status innerhalb von mailcow
Zur weiteren Absicherung meiner Instanz verwende ich [CrowdSec](https://www.crowdsec.net/), welches mit Mailcow verbunden ist. Ebenso habe ich einige empfohlene Hardening-Maßnahmen durchgeführt.
[DomainKeys Identified Mail (DKIM)](https://de.wikipedia.org/wiki/DomainKeys_Identified_Mail), [Domain-based Message Authentication, Reporting, and Conformance (DMARC)](https://de.wikipedia.org/wiki/DMARC) und [Sender Policy Framework (SPF)](https://de.wikipedia.org/wiki/Sender_Policy_Framework) sind für alle meine Domains eingerichtet.
Daneben habe ich auch [MTA-STS (Strict Transport Security)](https://www.frankysweb.de/mta-sts-strict-transport-security/) für jede Domain bereitgestellt und natürlich [DNS-based Authentication of Named Entities (DANE)](https://de.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities).
Meine E-Mails werden grundsätzlich mit [Pretty Good Privacy (PGP)](https://de.wikipedia.org/wiki/Pretty_Good_Privacy) signiert und bei Bedarf auch verschlüsselt, für primäre und wichtige E-Mail-Adressen stelle ich zusätzlich [Secure / Multipurpose Internet Mail Extensions (S/MIME)](https://de.wikipedia.org/wiki/S/MIME) bereit.
#### Meine Services
Im folgenden beschreibe ich die durch mich derzeit aufgebauten Services nach Kategorien:
* **Automation & Workflows & KI-Agenten**
* [n8n](https://n8n.io/) - Die weltweit beliebteste Plattform zur Workflow-Automatisierung für technische Teams. Ich baue mir damit entsprechend KI-Agenten, welche bestimmte Tasks für mich durchführen (bspw. Basic Content für Blogposts erstellen oder für mich Termine vereinbaren). Interagieren kann ich mit den Diensten via [NocoDB](https://nocodb.com/) (bspw. indem ich Informationen hinzufüge und diese dann gescheduled abgearbeitet werden durch n8n), durch manuelles Triggern in n8n selbst, durch [Telegram](https://telegram.org/) (bietet einige Vorteile, da n8n dadurch getriggert werden kann, suche noch eine OSS-Alternative) oder [Open Web UI](https://openwebui.com/). Sehr schön ist es ebenso, dass ich Forms/Chatfenster aus n8n auch auf meine Websites integrieren kann. In diesem Stack sind weitere Komponenten enthalten:
* [SearXNG](https://docs.searxng.org/) - meine private Suchmaschine (welche so konfiguriert ist, dass sie JSON ausgibt um damit in n8n weiterarbeiten zu können)
* [Qdrant](https://qdrant.tech/) - Die führende Open-Source-Vektordatenbank und Ähnlichkeitssuchmaschine zur Verarbeitung hochdimensionaler Vektoren für leistungsstarke und umfangreiche KI-Anwendungen. Dies werde ich vmtl. demnächst durch [Supabase](https://supabase.com/) ersetzen, da ich damit sehr sauber Dokumente im Vektorstore ersetzen/aktualisieren kann - natürlich [selbst gehosted](https://supabase.com/docs/guides/self-hosting).
* [openai-edge-tts](https://git.hadan-it.com/ai/openai-edge-tts) - Dieses Projekt bietet eine lokale, OpenAI-kompatible Text-to-Speech (TTS) API unter Verwendung von edge-tts. Es emuliert den OpenAI-TTS-Endpunkt (/v1/audio/speech) und ermöglicht es Benutzern, Sprache aus Text mit verschiedenen Sprachoptionen und Wiedergabegeschwindigkeiten zu erzeugen, genau wie die OpenAI-API. Sehr schöne Beispiele sind hier zu finden: [https://tts.travisvn.com/](https://tts.travisvn.com/)
* [Valkey](https://valkey.io/) - Der Redis-Fork Valkey wird von mir in n8n hptsl. für das "Kurzzeitgedächtnis" verwendet, damit sich KI-Agents auch an Gesprächsinhalte erinnern können.
* Dasselbe gilt für [PostgreSQL](https://www.postgresql.org/), welches neben dem "Kurzzeitgedächtnis" auch Informationen von n8n selbst speichert.
* **Benachrichtigungsdienste:**
* [ntfy](https://ntfy.sh/) - ntfy (sprich: notify) ist ein einfacher HTTP-basierter Pub-Sub-Benachrichtigungsdienst. Mit ihm kann ich von jedem Computer aus über Skripte und/oder über eine REST-API Benachrichtigungen an mein Telefon oder meinen Desktop senden. Es ist unendlich flexibel und 100% freie Software.
* **Identitätsmanagement (IdM):**
* [Keycloak](https://www.keycloak.org/) - Keycloak ist ein Open-Source-Softwareprodukt, das Single Sign-On mit Identitäts- und Zugriffsmanagement für moderne Anwendungen und Dienste ermöglicht. Dies baue ich gerade auf, es soll SSO für die von mir bereitgestellten Services erlauben, da hptsl. ich alleine diese Services verwende, ist es ausreichend, wenn ich die Benutzerinformationen in einer [PostgreSQL](https://www.postgresql.org/)-Datenbank vorhalte. Keycloak ist derzeit auch der einzige Host auf dem ich bereits [Traefik](https://traefik.io/) einsetze. Um mit Keycloak zu experimentieren verwende ich den [Notion](https://www.notion.so/)-Clone [Outline](https://www.getoutline.com/), welcher eine Anmeldung via Keycloak erlaubt.
* **Kommentar-Service:**
* [Isso](https://isso-comments.de/) - Isso ist ein Kommentar-Service vergleichbar mit Disqus. Ohne Cookies mit Moderatorfunktion.
* **Monitoring & Observability:**
* [Alertmanager](https://prometheus.io/docs/alerting/latest/alertmanager/) - Der Alertmanager verarbeitet Alarme, die von Client-Anwendungen wie dem Prometheus-Server gesendet werden. Er kümmert sich um die Deduplizierung, Gruppierung und Weiterleitung an die richtige Empfängerintegration wie E-Mail oder ntfy. Er kümmert sich auch um das Stummschalten und Sperren von Alarmen.
* [Grafana](https://github.com/grafana/grafana) - Die offene und komponierbare Observabilitäts- und Datenvisualisierungsplattform. Visualisieren Sie Metriken, Protokolle und Traces aus verschiedenen Quellen wie Prometheus, Loki, Elasticsearch, InfluxDB, Postgres und vielen mehr.
* [Healthchecks](https://healthchecks.io/) - Dieser Dienst erlaubt mir einfache und effektive Cron-Job-Überwachung. Ich werde benachrichtigt, wenn meine Backups (inkl. Log-Übergabe), wöchentlichen Berichte, Cron-Jobs und geplanten Aufgaben nicht pünktlich ausgeführt werden. Benachrichtigt werde ich via E-Mail oder ntfy. Das die Software auch [selbst gehosted](https://healthchecks.io/docs/self_hosted/) werden kann ist ebenso sensationell!
* [Prometheus](https://prometheus.io/) - Ein Open-Source-Überwachungssystem mit einem dimensionalen Datenmodell, einer flexiblen Abfragesprache, einer effizienten Zeitreihendatenbank und einem modernen Alarmierungskonzept. Neben dem bereits oben genannten [Node exporter](https://github.com/prometheus/node_exporter) und [Cadvisor](https://github.com/google/cadvisor) kommen weitere Exporter zum Einsatz um Metriken einzusammeln:
* [Blackbox exporter](https://github.com/prometheus/blackbox_exporter) - Der Blackbox-Exporter ermöglicht Blackbox-Sondierungen von Endpunkten über HTTP, HTTPS, DNS, TCP, ICMP und gRPC.
* [Fritz!Box Upnp statistics exporter](https://github.com/sberk42/fritzbox_exporter) - Zur Überwachung und statistischen Erfassung meiner Fritz!Box für Prometheus
* [Pi-hole Prometheus Exporter](https://github.com/eko/pihole-exporter) - Pi-hole Prometheus Exporter
* [Uptime Kuma](https://uptime.kuma.pet/) - Uptime Kuma ist ein einfach zu bedienendes, selbst gehostetes Überwachungstool. Neben dem ausführlichen Monitoring durch Prometheus bediene ich mich hier eines einfachen zusätzlichen selbst-gehosteten Dienstes. Es monitored mir hptsl. die Verfügbarkeit und die User Experience. Ebenso erstelle ich damit leicht Statusseiten, wie [diejenige](https://status.hadan-it.com/status/myprivatepage) für meine persönliche Website.
* **No-/Low-Code-Anwendungen:**
* [FlowiseAI](https://flowiseai.com/) - FlowiseAI ist ein Open-Source-Low-Code-Tool für Entwickler zur Erstellung von kundenspezifischen LLM-Orchestrierungsabläufen und KI-Agenten. Ich verwende es ergänzend, um Dinge zu realisieren, die ich mit [n8n](https://n8n.io/) nicht erstellen kann.
* [NocoDB](https://nocodb.com/) - NocoDB ermöglicht den Aufbau von No-Code-Datenbanklösungen mit der Leichtigkeit von Tabellenkalkulationen. Ich setze das hptsl. in Verbindung mit [n8n](https://n8n.io/) ein um Informationen bereitzustellen und von [n8n](https://n8n.io/) abzuspeichern/anzureichern. Ebenso dient es mir in einigen KI-Agents als "Langzeitgedächtnis" (bspw. über meine Person).
* **Projekt- & Aufgabenverwaltung:**
* [WeKan](https://wekan.github.io/) - Das Open-Source-Kanban (erstellt mit Meteor). Eine Software, welche ich seit Jahren begleite und die ein wunderbarer Ersatz für Trello ist. Derzeit verwende ich es hptsl. in Verbindung mit [n8n](https://n8n.io/) und KI-Agenten.
* **Quellcode-Verwaltung und Build-Pipelines:**
* [Forgejo](https://forgejo.org/) - Forgejo ist ein selbst gehostetes, leichtgewichtiges SCM-Werkzeug. Es ist einfach zu installieren und wartungsarm und erfüllt einfach seine Aufgabe. Ebenso verwende ich Forgejo als Artefakt-Repository (bspw. als Docker Registry). Forgejo ist ein Fork von Gitea.
* [Forgejo Actions](https://forgejo.org/docs/latest/user/actions/) - Forgejo Actions bietet Continuous Integration (CI), die von den Dateien im Verzeichnis .forgejo/workflows eines Repositorys gesteuert wird, mit einer Webschnittstelle zur Anzeige der Ergebnisse. Die Syntax und Semantik der Workflow-Dateien wird den Benutzern von GitHub Actions vertraut sein.
* [Renovate Bot](https://github.com/renovatebot) - Ein Bot für automatische Aktualisierungen von Abhängigkeiten.
* **Servicemanagement:**
* [FreeScout Help Desk](https://freescout.net/) - FreeScout ist ein superleichter und leistungsstarker Open-Source-Helpdesk und ein gemeinsamer Posteingang, geschrieben in PHP (Laravel-Framework). Es ist ein selbst gehosteter Klon von HelpScout. Dient bei mir als Posteingang für meine Support-Adressen und meine Non-Personal-Mailboxes (NPM).
* **Social Media:**
* [Postiz](https://postiz.com/) - Postiz bietet alles, was man braucht, um Beiträge in den sozialen Medien zu verwalten, ein Publikum aufzubauen, Leads zu gewinnen und mein Geschäft auszubauen.
* **Sonstige (nicht kategorisierbar) Dienste:**
* [FreshRSS](https://freshrss.org/index.html) - FreshRSS ist ein selbstgehosteter RSS- und Atom-Feed-Aggregator. Er ist leichtgewichtig, einfach zu bedienen, leistungsstark und anpassbar. Hiermit verwalte ich interessante RSS-Feeds und erhalte die neuesten Informationen zu für mich interessante Themengebiete.
* [Heimdall](https://heimdall.site/) - Heimdall ist meine persönliche Browser-Startseite, mit integrierter Suchmaske (leider noch nicht mit SearXNG) und all meinen Anwendungen und Zugängen.
* [Kutt](https://kutt.it/) - URL-Shortener. Ich verkürze hiermit bspw. meine Blog-URLs. Beispiel: [https://hadan.li/fh52Ww](https://hadan.li/fh52Ww)
* [LinkStack](https://linkstack.org/) - LinkStack ist meine selbstgehostete Open-Source-Linktree-Alternative. LinkStack ist eine hochgradig anpassbare Link-Sharing-Plattform mit einer intuitiven, einfach zu bedienenden Benutzeroberfläche. Mangels Feldern und Feldlänge in Social Media Netzwerken stelle ich hierüber meine wichtigsten Links bereit, mein Impressum, meine Datenschutzerklärung und meine Kontaktinformationen. Ein Testimonial gibt es [hier](https://linkstack.hadan-it.com/@stiebke).
* [Linkwarden](https://linkwarden.app/) - Kollaboratives All-in-One-Tool zum Sammeln und Aufbewahren nützlicher Webseiten und Dokumente.
* [Shields.io](https://github.com/badges/shields) - Prägnante, konsistente und lesbare Badges. Beispiel: ![Mastodon Follow](https://shields.hadan-it.com/mastodon/follow/109288171286108793?domain=freiburg.social)
* **Web-Analytics:**
* [umami](https://umami.is/) - Umami ist ein datenschutzorientiertes Open-Source-Webanalysetool, das als Alternative zu Google Analytics dient. Es bietet wichtige Einblicke in den Website-Traffic, das Nutzerverhalten und die Leistung, wobei der Datenschutz im Vordergrund steht. Im Gegensatz zu vielen herkömmlichen Analyseplattformen sammelt und speichert Umami keine personenbezogenen Daten, sodass keine Cookies erforderlich sind, und ist GDPR- und PECR-konform. Umami ist leichtgewichtig und einfach einzurichten und kann selbst gehostet werden, sodass die Nutzer die volle Kontrolle über ihre Daten haben.
### Planung für die Zukunft
Natürlich ist mein FOSS-Stack noch nicht final und wird es sicherlich auch nie sein. Ich habe folgende zukünftige Änderungen geplant:
* [ ] [Pi-hole](https://pi-hole.net/) redundant auf zwei [Raspberry Pi](https://www.raspberrypi.com/)s auslagern
* [ ] Mein [Wireguard](https://www.wireguard.com/)-Setup für DS-Lite auf [Pangolin](https://github.com/fosrl/pangolin) umstellen
* [ ] Umstellung ThinkCentre von [Docker](https://www.docker.com/) auf [Podman](https://podman.io/)
* [ ] Umstellung von [Nginx Proxy Manager](https://nginxproxymanager.com/) auf [Traefik](https://traefik.io/)
* [ ] Upgrade des Mac Mini (mehr RAM), besserer Mx-Prozessor
* [ ] Mehr Raspberry Pis oder Klein-PCs ... Jeff Geerling's [Blog-Post](https://www.jeffgeerling.com/blog/2025/intel-n100-better-value-raspberry-pi) ist spannend hierzu.
* [ ] Trend geht zu Mini-Racks ... ebenso Blog-Posts [1](https://www.jeffgeerling.com/blog/2025/project-mini-rack-compact-and-portable-homelabs) und [2](https://www.jeffgeerling.com/blog/2025/project-mini-rack-what-have-we-started) von Jeff Geerling, sieht irgendwie cool und aufgeräumt aus.

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 KiB

View file

@ -0,0 +1,139 @@
---
pdf: false
comments: false
status: new
---
# Mein (Heim-)Arbeitsplatz
![Mein Arbeitsplatz](images/workplace.jpg)
Wichtig ist mir ein ergonomischer, gut ausgeleuchteter und geräumiger Arbeitsplatz, auf dem ich mich entsprechend "ausbreiten" kann und alle notwendigen Arbeitsutensilien griffbereit habe.
Als ausgebildeter ISO27001-Experte halte ich auch daheim eine strikte Clean-Desk-Policy ein :thumbs_up:.
Ein besonderes Augenmerk will ich bei zukünftigen Ersatzbeschaffungen auf nachhaltige und datenschutzfreundliche Tech-Produkte legen; weniger US-/China-Big-Tech-Produkte, gerne auch gebraucht, gerne aus Europa.
## Meine Arbeitsplatzausstattung
### Büromöbel
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | ---------------------- | ----------------- | ----------- |
| IKEA | BEKANT weiß 160x80cm | Schreibtisch | neu |
| KERDOM | Bürostuhl weiß/schwarz | Schreibtischstuhl | neu |
| SONGMICS | Rollcontainer, weiß | Rollcontainer | neu |
### Zubehör
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ------------ | ----------------------------------------------- | ----------------- | ----------- |
| AKB Hardware | Verstellbare Abstandshalter für den Schreibtsch | Abstandshalter | neu |
| Anker | Kabelmanager, weiß, magnetisch | Kabelmanagement | neu |
| Aothia | Großer Monitorständer | Monitorstand | neu |
| ErGear | Monitor-Halterung für 13-32" Monitore | Monitor-Halterung | neu |
| Ezoon | Handballenauflage für Keychron-Tastatur | Ergonomie | neu |
| HUANUO | Fußstütze | Ergonomie | neu |
| IKEA | KOLON Fußbodenschutz (100x120cm) | Fußbodenschutz | neu |
| IKEA | SKÅDIS, Lochplatte 56x56cm | Aufbewahrung | neu |
| Morris | Morris der Esel - Schreibtisch-Memohalter | Memohalter | neu |
| NEEWER | Mikrofonspinne für Kondensatormikrofon | Mikrofonspinne | neu |
| New bee | Kopfhörer-Ständer weiß | Kopfhörer-Ständer | neu |
| Relaxdays | Stiftablage 3-teilig Bambus | Ablagesystem | neu |
| SIQUK | Kabelclips, weiß | Kabelmanagement | neu |
| Umbra | Woodrow Papierkorb weiß/natur | Papierkorb | neu |
| Uvistare | Mikrofonarm schwarz | Mikrofonarm | neu |
| Vaydeer | Vertikaler Laptop-Ständer | Laptop-Stand | neu |
| YSAGi | Schreibtischunterlage Azurblau 60x35cm | Unterlage | neu |
## Meine technische Ausstattung
### Beleuchtung
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | --------------------------------------------- | ------------ | ----------- |
| Govee | Glide Wall Light | Smart Lights | neu |
| Govee | RGBICWW WiFi + Bluetooth Flow Plus Light Bars | Smart Lights | neu |
| Govee | LED Strip Lights | Strip Lights | neu |
| OOWOLF | LED Monitorlampe mit Fernbedienung | Monitorlampe | neu |
| VOCOlinc | Smart Desk Lamps With Wireless Charge | Smart Lights | gebraucht |
### Computer
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | -------------------------------------------------------------------------------------- | ------------ | ----------- |
| Apple | Mac mini (2020, M1, 16 GB RAM, 512 GB SSD) | Computer | gemietet |
| Lenovo | ThinkCentre M93p Tiny (2015, Intel Core i5-4590T CPU @ 2.00GHz, 16 GB RAM, 512 GB SSD) | Computer | gebraucht |
### Drucker
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | --------------------------- | --------------------- | ----------- |
| Epson | WorkForce WF-2860DWF (2021) | Multifunktionsdrucker | neu |
### Eingabegeräte
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | -------------------------------------------- | ------------- | ----------- |
| Apple | Magic Keyboard Wireless | Tastatur | neu |
| Apple | Magic Mouse 2 | Maus | neu |
| Apple | Magic Trackpad 2 | Trackpad | neu |
| Elgato | Stream Deck MK.2 | Controller | neu |
| Keychron | K2 84 Tasten Hot-swap-fähige Tastatur | Tastatur | gebraucht |
| Logitech | Magic Keys S weiß | Tastatur | neu |
| Logitech | MX Master 3S weiß | Maus | neu |
| Logitech | Crayon Digitaler Zeichenstift für ipad Air 4 | Zeichenstift | neu |
| Wacom | Intuos pen & touch small | Zeichentablet | neu |
### Monitore
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | ----------------------- | ------------ | ---------------------- |
| Corprit | Portabler Monitor 15,6" | Monitor | neu |
| Dell | Ultrasharp U2721DE 27" | Monitor | gemietet, dann gekauft |
### Notebooks
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | --------------------------------------------------------- | ------------ | ---------------------- |
| Apple | MacBook Pro 13" (2020, 8 GB RAM, 256 GB SSD, Intel-based) | Notebook | gemietet, dann gekauft |
| HP | Elitebook 820 G1 (2014, 8 GB RAM, 1 TB SSD, Intel-based) | Notebook | gebraucht |
### Phones
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | -------------------------------- | ------------ | ----------- |
| Apple | iphone 13 Max Pro (2021, 128 GB) | Smartphone | gemietet |
| Xiamoi | Redmi Note 10 (2021, 128 GB) | SmartPhone | neu |
### Smartwatch
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | -------------------- | ------------ | ----------- |
| Apple | Watch Series 7 (GPS) | Smartwatch | gemietet |
### Sonstiges Zubehör
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ------------------ | -------------------------------------------- | -------------------- | ----------- |
| CREATIVE | Pebble V3 weiß | Desktop-Lautsprecher | neu |
| Soundcore by Anker | Q30 Bluetooth Kopfhörer (2023) | Kopfhörer | neu |
| Sitecom | CN-385 Schnittstellenhub USB 3.2 Gen 1 Typ C | Adapter | neu |
| UHURU | USB PC Podcast Mikrofon (Kondensator) | Mikrofon | neu |
| ZOOM | H2n Handy Recorder | Handy Recorder | gebraucht |
| ZOOM | R16 Mehrspurrecorder | Mehrspurrecorder | gebraucht |
### Storage
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | ------------------ | ------------ | ----------- |
| QNAP | TS-212P (5 TB HDD) | NAS | gebraucht |
### Tablets
| Hersteller | Modell | Beschreibung | Kaufzustand |
| ---------- | ------------------------------------------------------- | ------------ | ---------------------- |
| Amazon | Fire HD 10 Plus 32 GB (2021) | Tablet | neu |
| Apple | iPad Air 4 WiFi 64 GB (2020) | Tablet | gemietet, dann gekauft |
| Apple | iPad Air 5 WiFi 64 GB (2022) | Tablet | gemietet |
| Huawei | MediaPad M5 Lite BAH2-L09 32 GB, WLAN + Cellular (2018) | Tablet | gebraucht |

Binary file not shown.

After

Width:  |  Height:  |  Size: 536 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 400 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 594 KiB

View file

@ -0,0 +1,22 @@
---
pdf: false
comments: false
status: new
---
# Testimonials
Ich möchte gerne ein paar Screenshots meiner Installationen bereitstellen um einen Einblick in die einzelnen Services zu erlauben.
!!! tip "Tipp"
Der Klick auf ein Einzelbild öffnet eine Bildgalerie und man kann komfortabel durch die Bilder klicken.
![Mein Pi-hole-Dashboard](images/pihole-dashboard.png){data-gallery="testimonials"}
![Grafana-Dashboard für meine Mailcow-Instanz](images/grafana-mailcow-dashboard.png){data-gallery="testimonials"}
![Mit VSCodium realisiere ich meine Markdown-Dokumente, hier für meine persönliche Website](images/vscodium-markdown-development.png){data-gallery="testimonials"}
![Eine Übersicht von Arbeitspaketen in einem Projekt unter OpenProject](images/openproject-work-packages.png){data-gallery="testimonials"}
![Das Umami-Dashblard für meine persönliche Website](images/umami-dashboard.png){data-gallery="testimonials"}

View file

@ -123,6 +123,7 @@ plugins:
cards_layout_options:
background_color: "#151819"
color: "#5FFFD7"
- glightbox
- macros
# Additional configuration
@ -152,9 +153,12 @@ extra:
link: https://hadanit.slack.com/team/U04BLKQF2M8
- icon: simple/pixelfed
link: https://pixelfed.de/users/stiebke
- icon: fontawesome/solid/signal
link: https://status.hadan-it.com/status/myprivatepage
name: Statusseite dieser Website
- icon: fontawesome/solid/rss
link: https://stephan.hadan.de/rss/
name: RSS-Feeds dieser Webseite
name: RSS-Feeds dieser Website
isso:
custom_url: https://comments.hadan-it.com
status:
@ -225,7 +229,12 @@ nav:
- Das Programmierprojekt: projects/profiles/programming/index.md
- Welches Fahrzeug passt zu mir?: projects/profiles/lifestyle-konfigurator/index.md
- Zero-Trust-Security: projects/profiles/zero-trust-security/index.md
- Tech-Stack: techstack/index.md
- Tech-Stack:
- Überblick: techstack/index.md
- Mein FOSS-Stack: techstack/myfoss-stack/index.md
- Mein Arbeitsplatz: techstack/myworkplace/index.md
- Was muss auf meine Clients?: techstack/client-software/index.md
- Testimonials: techstack/testimonials/index.md
- Kontakt: contact/index.md
- Datenschutz: dataprivacy/index.md
- Impressum: imprint/index.md