Copyright © KC Green

Infrastructure

Archlinux via PXE von Netboot Image starten

 infrastructure   reference 

Archlinux mit Hilfe von PXE von einem Netboot Image aus dem Internet starten
Heute hatte ich nach einer BIOS-, bzw. UEFI-Aktualisierung meines Mainboards ein unerwartetes Problem; alle meine EFI-Booteinträge wurden zurückgesetzt. Selbstverständlich hatte ich kein (freies) Medium zur Hand, von dem ich entweder eine Live-Linux Umgebung oder eine EFI-Shell hätte booten können. Glücklicherweise bringen die meisten UEFIs heutzutage eine gute Unterstützung für PXE (Preboot eXecution Environment), bzw. iPXE mit. Hierfür muss dann im BIOS oder UEFI lediglich der Netzwerkstack aktiviert und der richtige Booteintrag ausgewählt werden.

AWS/S3 API kompatibler Object-Storage mit MinIO

 infrastructure   howto 

Produktionsreifer, verteilter Object-Storage in Kubernetes

MinIO ist ein offenes, AWS/S3 API kompatibles Object-Storage System, welches hervorragend dazu geeignet ist, in Kubernetes betrieben zu werden. Die Installation einer produktionsreifen Konfiguration gestaltet sich äußerst einfach.

Die einzigen beiden Voraussetzungen sind der Zugriff auf einen Kubernetes Cluster und HELM (in Version 3). Sollte der Cluster noch nicht bereit stehen, kannst du natürlich Minikube verwenden oder dir einmal k3s ansehen, damit kann man in wenigen Sekunden einen schlüsselfertigen Single-Node Kubernetes Cluster aufsetzen. Den Kubernetes Paketmanager HELM werden wir für die Installation von MinIO verwenden.

Port-knocking mit HA-Proxy

 infrastructure   howto 

Einfaches port-knocking Setup unter Verwendung von sticky-sessions in HA-Proxy
Diesen Artikel beginne ich direkt einmal mit einer Warnung: Selbstverständlich bietet port-knocking keinen echten Schutz vor einem Angriff. Hiermit verschleierte Dienste sollten immer noch durch übliche weitere Faktoren wie z.B. Authentifikation und rate-limiting geschützt werden! Aber nachdem ich mich ja unter anderem hier bereits als großen Freund der port-knocking Methode bekannt habe, folgt nun eine kleine Anleitung, wie man mit Hilfe von sticky-sessions unter HA-Proxy, Zugang zu versteckten backends freigeben kann.

Protokoll-basiertes routing mit HA-Proxy

 infrastructure   howto 

Mit HA-Proxy TCP-Datenverkehr analysieren und auf Basis des Protokolltyps weiterverarbeiteten
TBD

Dynamische HA-Proxy Konfiguration

 infrastructure   howto 

Alternative zur statischen, monolithischen Konfiguration; wie man HA-Proxy dynamisch und microservice-orientiert konfiguriert
XXX

Dienste mit TOR und Onioncat über das Internet freigeben

 infrastructure   howto 

Mit Hilfe von TOR und Onioncat interne Dienste über das Internet unter Umgehung von NAT verfügbar machen

In einem recht restriktivem Netzwerk benötigte ich eine Möglichkeit, um auf diverse interne Dienste über das Internet zugreifen zu können. Diesen Anlass nahm ich als Gelegenheit um etwas mit TOR und Onioncat herumzuspielen. Mein primäres Ziel war es, sicheren Zugriff auf den internen Mailserver zu gewähren, sodass man E-Mails abrufen kann ohne direkt mit dem LAN verbunden zu sein.

TOR dient hier lediglich als Transportebene, so ist keine Portweiterleitung im Router notwendig. Onioncat wird als hidden-service bereitgestellt und erzeugt ein Overlay-Netzwerk, welches IPv6 als Protokoll auf Layer 3 verwendet. Die Dienste sind dann später über eine statische IPv6 Adresse via TOR/Onioncat erreichbar.

Lokale Kubernetes Testumgebung mit Packer und Virtualbox

 infrastructure   reference 

Mit Packer erzeugtes Virtualbox-Image das eine lokale Testumgebung für Kubernetes und Rancher/Rio bereitstellt
XXX

Bare-metal RaspberryPi Kubernetes Cluster mit HypriotOS

 infrastructure   howto 

Setup eines hochverfügbaren 'bare-metal' k3s Cluster unter HypriotOS (64bit)

Hier sehen wir uns an, wie man einen Multi-Master Kubernetes Cluster auf Basis von Rancher/k3s aufsetzt. Als Hardwareplattform verwende ich fünf Raspberry Pi 3b+ in einem Picocluster auf denen HypriotOS läuft.

Die Hochverfügbarkeit des Kubernetes Clusters wird durch die Verwendung von HA-Proxy und keepalived erreicht. Eine virtuelle Failover IP-Adresse zeigt so immer auf einen verfügbaren Kubernetes Apiserver. Persistenter Speicherplatz mit Unterstützung für read-write many Zugriff wird Dank Rook über ein verteiltes Clusterfilesystem bereitgestellt, der den verfügbaren Speicherplatz der RPi SD-Karten nutzt.

Davmail als Gateway für M$ Exchange (IMAP/SMTP/CalDAV)

 infrastructure   howto 

Davmail als Gateway für Microsoft Exchange verwenden und an den lokalen Mail- und Caldav-/Carddav-Client anbinden
DavMail ist ein offenes POP/IMAP/SMTP/Caldav/Carddav/LDAP Gateway. Bestens geeignet, um Microsoft Mailserver (Exchange, Office 365, ..) mit jedem beliebigen E-Mail Client nutzen zu können. TODO: https://git.sr.ht/~ff0x/davmail Anbindung an: vdirsyncer, offlineimap, mutt, khal und khard Referenz zu: mutt/offlineimap

Dateien mit Hilfe von zssh übertragen

 infrastructure   howto 

zssh - ein Wrapper für SSH mit Unterstützung für ZMODEM
ZMODEM war ursprünglich ein proprietäres Dateitransfer-Protokoll der Firma Omen Technologies Inc.. Das 1986 von Chuck Forsberg entwickelte Protokoll ist nun weitestgehend freie Software. Die Linux Implementierung lrzsz basiert auf dem letzten, unter public domain veröffentlichten Release, von rzsz. Neben ZMODEM gibt es weitere Varianten des Protokolls, wie XMODEM, YMODEM, SEXYZ und SyncTERM. Das lrzsz Paket besteht aus den Programmen: rb, rx, rz, sb, sx und sz. Manche werden zum Senden von Daten via X/Y/ZMODEM benötigt, andere zum Empfangen.