Wiki

Willkommen in meinem Wiki. Hier findest du Dokumentationen, Notizen und generell Infos aus dem Leben eines SysAdmins

@xtrc

1500€ PC Build

Aufgrund der Chipkrise und des Crypto-Hypes ist keine Grafikkarte enthalten!

CPUAMD Ryzen 9 5950X (16C/32T)
RAM32GB DDR4-3600 CL16
MainboardMSI XPG X570S Carbon Max Wifi
SSDKIOXIA EXCERIA G2 1TB
CPU-KühlerNoctua NH-D15
NetzteilCorsair RM RM850
GehäusePhanteks Eclipse P600S Glacier White
Weiterlesen

AMD Ryzen 7000

Am 29. Aug. 2022 hat AMD die neue Generation ihrer Desktop CPUs vorgestellt. Die neue Architektur auf Basis von Zen 4 und des neuen 5/5nm TSMC FinFET Fertigungsprozess, sind vielversprechend.

CPUKerneThreadsBasis-TaktTurbo-Takt S-C/M-C
Ryzen 5 7600X6124.7 GHz5.4 GHz/NA
Ryzen 7 7700x8164.5 GHz5.5 GHz/NA
Ryzen 9 7900X12244.7 GHz5.6 GHz/NA
Ryzen 9 7950X16324.5 GHz5.7 GHz/NA
Weiterlesen

Dev Workstation ’22

Aufgrund der Chipkrise und des Crypto-Hypes ist keine Grafikkarte enthalten!

CPUAMD Ryzen 9 5950X (16C/32T)
RAM64GB DDR4-3600 CL16 (2x 32GB)
MainboardASUS ProArt X570-Creator WIFI
SSDSamsung SSD 980 PRO 1TB inkl. Kühlkörper
CPU-KühlerNoctua NH-D15
NetzteilSeasonic Prime Ultra Titanium 750W
GehäuseFractal Design Define 7
Weiterlesen

Fail2Ban

Jeder Daemon/Service unter Linux produziert Log-Dateien. Es hat sich durchgesetzt, dass diese unter /var/log/ zu finden sind oder von einem Syslog-Daemon zentral gesammelt werden.

Die Log-Dateien geben dabei einen Einblick in die aktuellen Aufgaben, die der dazugehörige Daemon gerade abarbeitet. Das können Aufrufe einer Webseite sein, welche vom Websever protokolliert werden oder (fehlgeschlagene) Anmeldungen am SSH-Server. Es bietet sich also an, auf die Masse an Informationen zurückzugreifen und damit zu arbeiten.

Hier kommt fail2ban ins Spiel, welches sich selbst so beschreibt:

$ man fail2ban
FAIL2BAN(1)                                                                               General Commands Manual                                                                               

NAME
       fail2ban - a set of server and client programs to limit brute force authentication attempts.

DESCRIPTION
       Fail2Ban consists of a client, server and configuration files to limit brute force authentication attempts.

       The  server  program  fail2ban-server  is responsible for monitoring log files and issuing ban/unban commands.  It gets configured through a simple protocol by fail2ban-client, which can also read
       configuration files and issue corresponding configuration commands to the server.

Es kann also Log-Dateien parsen und anhand von Filtern (Regex) entscheiden ob eine erfolgreicher Login-Version oder nicht stattgefunden hat. Daraufhin kann bei zu viel fehlgeschlagenen Versuchen, die IP-Adresse des Verursachers geblockt werden.

Auch wenn die Manpage sehr spezifisch ist, lässt sich das generelle Konzept auf viele andere Anwendungnsbereiche ausweiten. Durch die individuelle Konfiguration von Regex-Filtern und dem Ban/Unban Kommando, ist es bspw. auch Möglich, dass bei N fehlgeschlagenen Logins ein Webhook oder Script aufgerufen wird.

Ein Ausführlicher Tutorial ist hier zu finden: Linode: Using Fail2ban to Secure Your Server

Weiterlesen

Intel CNVi

Intel Integrated Connectivity I/O interface beschreibt ein Feature neuerer Intel-Plattformen zur Integration von Netzwerk-Funktionen in der CPU und im Chipsatz.

In den meisten Fällen sind Netzwerk-Funktionen auf sogenannten ASICs (Application-specific integrated circuit) implementiert. Diese werden anschließend mit vielen zusätzlichen Komponenten auf einem PCB verbaut und bilden dann z. B. einen PCIe NIC.

(mehr …)
Weiterlesen

NFS

Port 2049 (ab NFSv4)

Beschreibung
Das Network File System ist ein Protokoll für die Freigabe von Dateien unter *nix

*nix-Pakete

  • Debian/Ubuntu: nfs-common nfs-kernel-server
  • Fedora/CentOS/RHEL: nfs-utils
  • openSUSE/SUSE Enterprise: nfs-client nfs-kernel-server
Weiterlesen

Samba/smb/CIFS

Ports
137/udp, 138/udp, 139, 139/udp, 445, 445/udp

Beschreibung
Server Message Block ist ein Protokoll für die Freigabe von Datei- und Druck-Diensten in einem Netzwerk. Am bekanntesten wohl durch die „Freigabe“-Funktion von Windows. Unter *nix besteht mit Samba ein zu dem SMB-Protokoll kompatibler Server- und Client-Service.

*nix-Pakete

  • Debian/Ubuntu: samba
  • Fedora/CentOS/RHEL: samba
  • openSUSE/SUSE Enterprise: samba
Weiterlesen

ZFS – Begrifflichkeiten und Erklärungen

VDEV

Ein virtuelles Gerät (virtual device, vdev) ist ein Verbund aus blockorientierten Geräten (LinuxWiki: Block-Device) welche zu einem (virtuellen) Gerät zusammengefasst werden.

Pool

Ein Pool umfasst ein oder mehrere vdevs, welche unterschiedlich konfiguriert (verschiedene RAID-Typen) sein können und ein paar globale Einstellunngen, welche auf alle enthaltenen vdevs zutreffen (deduplizierung, kompression uvm.).

RAIDZx

N = Anzahl FestplattenStripeMirrorRAIDZ1RAIDZ2RAIDZ3
Min. Festplatten12245
Fehlertolleranz0N-1123
Größe Parität0(N-1)/N123
Die Parität wird über alle Festplatten verteilt.

ARC – Lesecache im RAM

Der Adaptive Replacement Cache (https://www.usenix.org/legacy/events/fast03/tech/full_papers/megiddo/megiddo.pdf) wird von ZFS im RAM abgelegt und enthält häufig angefragten Daten. Demnach sollte der RAM im Hostsystem so groß wie möglich sein. Empfohlen wird ZFS nicht mit weniger als 32GB RAM zu verwenden. Im Detail kann dies jedoch je nach Anwendungsfall variieren.

L2ARC – Lesecache auf SSDs

Level-2-ARC ist eine Lösung für kleine Budgets oder besondere Anforderungen. Dabei wird ein Teil der Daten aus dem ARC, wenn dieser voll ist, in den L2ARC geschoben. Es sollte klar sein, dass ausschließlich enterprise ssds als L2ARC verwendet werden sollten, da es sonst zu einer überaus schlechteren Performance führen kann, als ohne L2ARC und vollem ARC. Stichwort: Latenz

ZIL / LOG – Schreibcache auf SSDs

Um sicherzustellen, dass ein Schreibvorgang abgeschlossen ist, wird jeder Vorgang nach Abschluss bestätigt. Sobald bspw. das Betriebssystem nach einem Schreibvorgang eine solche Bestätigung erhält, ist wohldefiniert, dass die geschriebenen Daten an der vorgegeben Stelle vorhanden sind.

Dieses verhalten führt aber zu Problemen bei Festplatten. Da die Latenz einer Festplatte (Signalweg, Bewegung Lese-/Schreibkopf etc.) sehr hoch ist, kann es bei vielen paralellen Vorgängen dazu führen, dass das Hostsystem im sogenannten „iowait“ einfriert.

Als Antwort auf das Problem bietet ZFS die Möglichkeit, einen Schreibcache zu konfigurieren. Diese fängt alle Schreibvorgänge ab und muss immer schneller als der „echte“ Pool aus (wahrscheinlich) Festplatten. Da der ZIL nur mit SSDs eingerichtet werden sollte, ist klar, dass durch die verringerte Latenz es zu wesentlich weniger iowait kommt.

Bei der Umsetzung sollte jedoch darauf geachtet werden, dass der ZIL immer als Mirror betrieben werden muss, die SSDs PLP besitzen und das Hostsystem über eine UPS verfügt. Da die Daten im ZIL noch nicht auf den Pool geschrieben wurden, würde es ansonsten bei einem Stromausfall oder Hard-reset zu Datenverlust kommen.

Prefetch

demnächst

Demand

demnächst

Weiterlesen