Alle Beiträge von adlerweb

Stromverbrauch von Switchen

In letzter Zeit hatte ich an diversen Stellen kurzfristig Netze umbauen müssen und daher diverse Switche in die Hand bekommen. Da ich bei meinem letzten Video doch etwas überrascht war, dass einige Switche einen sehr hohen Stromverbrauch zeigten hatte ich die Gelegenheit genutzt und bei verschiedensten Modellen im Fast-Leerlauf den Verbrauch gemessen und in eine Tabelle gepackt.

https://github.com/adlerweb/SwitchPower/

PostgreSQL-Update im Docker-Stil

Docker. Eigentlich ja ganz praktisch, wenn man „mal schnell“ ein Softwarepaket trotz überschaubarer Wartbarkeit mit überschaubarem Aufwand ausrollen möchte, ab und an aber auch ein zuverlässiger Quell für Facepalm-Momente. So auch Heute: Nach dem Update einer mit docker-compose zusammengesetzten Anwendung ging nichts mehr. Der Maintainer hatte dort von postgres:10 auf postgres:11 aktualisiert. Kleines Update sollte man meinen, die PostgreSQL-Images für Docker sind jedoch technisch nicht in der Lage Daten älterer Installationen zu migrieren. Folglich zeigte sich im Log vor dem Absturz folgende Meldung:

postgres_1 | FATAL: database files are incompatible with server
postgres_1 | DETAIL: The data directory was initialized by PostgreSQL version 10, which is not compatible with this version 11.6.

Was auf „normalen“ Servern mit pg_upgrade schnell geregelt und bei einigen Distributionen gar automatisiert ist, wird mit Docker ein paar Nummern komplizierter. Der Offizielle Weg: Backup machen, neu aufsetzen, importieren. Eigentlich wollte ich durch Docker Arbeit sparen, nicht mir weitere aufhalsen.

Glück im Unglück: Tianon Gravi hat auf GitHub und Docker Hub ein passendes System bereitgestellt, mit welchem man die Daten schnell zwischen verschiedenen PostgreSQL-Versionen migrieren kann.

Im Folgenden gehe ich davon aus, dass ein Named Volume „postgres-data“ existiert und alle darauf zugreifenden Container gestoppt sind.

Achtung, Fallstrick: Nutzt man docker-compose, so ändern sich die Volume-Namen. Ein Named Volume „postgres-data“ der Applikation „foobar“ heißt in Wahrheit „foobar_postgres-data„. Im Zweifel nochmal mit „docker volume ls“ prüfen.

  1. Fangen wir mit dem üblichen an: Backups. Bei Bind-Mounts kopiert man einfach den Quellordner passend zurecht, bei Named Volumes kann man diese üblicherweise unter /var/lib/docker/volumes/ finden oder mit docker-clone-volume duplizieren. Ich hatte postgres-data hierzu auf postgres-data-src und postgres-data-bck dupliziert.
  2. Weiter geht es mit dem Umwandeln der Datenbank. Hierzu nimmt man das Image mit den passenden Versionsnummern für Quell- und Zielversion.
    docker run --rm -v postgres-data-src:/var/lib/postgresql/10/data -v postgres-data-dst:/var/lib/postgresql/11/data tianon/postgres-upgrade:10-to-11
    Hiermit wird ein neues, mit PostgreSQL 11 kompatibles, Volume erzeugt, welches alle bisherigen Daten enthalten sollte.
  3. Leider gibt es in der aktuellen Version einen bekannten Bug, welche die Zugriffe in pg_hba.conf abweichend von den Dateien der offiziellen Images konfiguriert. Dies führt mit vielen Images zu Zugriffsfehlern. Um die Datei per hand zu editieren startet man entweder einen passenden Container oder greift über das Dateisystem des Hosts auf diese zu. In meinem Fall nutzte ich letztere Methode über die Datei /var/lib/docker/volumes/postgres-data-dst/_data/pg_hba.conf. An das Ende dieser wird folgende Zeile angefügt:
    host all all all md5
  4. Am Ende ändert man entweder den Volume-Eintrag seiner docker-compose.yml oder kopiert das neue Image passend zurück. In meinem Fall klang letzteres sinnvoller. Einen Befehl zum Umbenennen von Volumes ist Docker bis Heute nicht bekannt, daher bleibt hier nur das ursprüngliche Volume mit docker volume rm postgres-data zu löschen und postgres-data-dst – wie zuvor – mit docker-clone-volume oder im Dateisystem zum korrekten Volume-Namen zu klonen.

Warum man das nicht automatisiert erschließt sich mir nicht so ganz. Vermutlich beschränkt sich der Benutzerkreis hauptsächlich auf Entwickler, die ohnehin immer von 0 starten, und Enterprise-Häuser, die gemäß Fire-and-forget Systeme ohne Update bis zur Explosion betreiben.

Yubikey: Nicht ganz unkaputtbar

tl;dr: YubiKeys nicht am Schlüsselbund festmachen

Wenn es um Security-Tokens geht, hat YubiCo mit seinem YubiKey klar die Nase vorn. Nicht zuletzt, da diese so ziemlich die ersten Geräte waren, welche die gängigsten Sicherheitsmechanismen in einem Gerät vereinen konnten. Vor allem U2F, TOTP (aka Google Authenticator) und PGP sind bei mir fast dauerhaft im Einsatz. Mit dieser Kombination kann ich 2-Faktor-Anmeldung auf Webseiten nutzen, E-Mails signieren und entschlüsseln, mich auf SSH-Servern anmelden und Zugriff auf lokale Dateien und Programme absichern. Auch Zertifikate, aka X.509, sind eine praktische Sache, können sie doch für Logins in Windows-Netzen, S/MIME oder das signieren von Dokumenten unter Windows genutzt werden. Zwar lassen sich all diese Mechanismen auch ohne Dongle nutzen, dieser bringt jedoch zwei wichtige Sicherheitsverbesserungen mit sich: Der Zugriff ist nur möglich, wenn das Gerät eingesteckt ist, sodass eine „versehentliche“ Nutzung erschwert wird. Zudem sind die privaten Schlüssel auf einem – vorzugsweise sicheren – Microcontroller gespeichert und können das Gerät nicht mehr verlassen.

Ich selbst bin Ende 2016 auf den YubiKey NEO * umgestiegen. Dieser kann per USB oder NFC genutzt werden. Letzteres ist z.B. für Logins oder Mailverkehr am Handy interessant. Etwas bedenken hatte ich, da USB-Sticks bei mir selten lange überleben und ein YK nicht gerade günstig ist. Das Werbesersprechen „unkaputtbar“, die robust aussehende Form und Empfehlungen aus dem Bekanntenkreis überzeugten jedoch am Ende. Seit dem ist er Stammgast an meinem Schlüsselbund, somit ständiger Begleiter und wird entsprechend viel genutzt.

YubiKey NEO an Schlüsselbund
YubiKey Neo an Schlüsselband

Schnellvorlauf November letzten Jahres, also 2 Jahre nach dem Kauf. Einiges hatte sich getan, aber der YK verrichtete noch anstandslos seine Dienste. Also fast. Von einem Tag auf den Anderen war NFC nicht mehr nutzbar und ich somit auf die Nutzung am PC beschränkt. Kein Beinbruch, Handy-Logins nutze ich eher selten, allerdings auch kein Pluspunkt für mein Vertrauen in die Haltbarkeit. Ich vermutete einen Softwarefehler, alternativ eine Einwirkung durch statische Aufladung. Beides Dinge, die nicht passieren sollten. Auch sonst zeigten sich Schwächen: Aus Sicherheitsgründen ist es nicht möglich die Firmware der Geräte zu aktualisieren. Hierdurch war ich bei PGP auf Keys mit maximal 2048 Bit limitiert. Noch OK, aber auch nicht toll. Einzige Möglichkeit auch in den Genuss neuerer Verfahren zu kommen wäre ein neueres Modell, diese hatten zum damaligen Zeitpunkt jedoch kein NFC und nutzten für PGP nun statt einer Open-Source-Lösung eine Eigenentwicklung des Herstellers, welcher sich nicht einsehen ließ.

Meh. Roughly 2 years after I bought my @yubico #Yubikey Neo it already failed. USB luckily still OK, but NFC completely dead. Really hoped these things would be more durable :<

adlerweb|BitBastelei@adlerweb, 2018-11-21

Da die neueren Modelle für mich keine Option waren wandte ich mich via Twitter an den Hersteller. Unter „unkaputtbar“ verstehe ich etwas Anderes, als 2 Jahre und somit knapp über den regulären Gewährleistungen. Meine Intention: Ich wollte wissen was da schief gelaufen ist, ob es eventuell durch einen Reset o.Ä. behoben werden kann, wie man das verhindern kann und ob bei zukünftigen Modellen dieses Problem umgangen werden kann. Man verwies mich auf das Ticketsystem, antwortete dort jedoch nur mit Textblöcken. Nach meiner Info, dass ich die Diskusion in dem Fall für Sinnlos hielt bot man mir den Austausch gegen einen neuen Neo an. Da auf Grund der alternden PGP-Unterstützung und der unbekannten Fehlerursache das Modell eher auf meiner Abschussliste war lehnte ich dankend ab und nutzte mein Modell per USB weiter.

10 Monate später sprach mich ein Mitglied des lokalen Hackerspace auf den YubiKey an. Ein Arbeitskollege hätte da einen unschönen Ausfall mit seinem Key gehabt. Das ABS-Gehäuse wäre durch den Schlüsselring durchgescheuert und das Gerät hätte den Dienst versagt. Könnte das mit meinem Problem zu tun haben? Sure enough: Auch bei mir ist das Plastik im Bereich des Schlüsselrings schon sehr abgenutzt. Dass das ein technisches Problem verursachen könnte hatte ich gar nicht auf dem Schirm.

Abgenutzter Bereich am Schlüsselring-Loch eines YubiKey NEO

Zudem: ABS? Durchscheuern? Ich hatte vermutet, dass unter der Plastik-Packung noch ein Metallring eingearbeitet wäre, welche das ganze etwas verstärkt. Aber jetzt, wo ich das höre – hm, ja, da reflektiert ja etwas. Ein Blick unter dem Mikroskop verrät recht schnell, was mein NFC getötet hat: die Antenne ist um das Schlüsselring-Loch gelegt und inzwischen durchgescheuert. WTF.

Beschädigte NFC-Antenne an einem YubiKey NEO

Erinnert Ihr euch dran, dass ich ABS sagte? ABS kennt man ja auch von 3D-Druckern, hier ist es üblich mit Aceton das Plastik nach dem Druck anzulösen und zu glätten. Mit entsprechenden Konzentrationen kann man das Plastik aber auch einfach wegschmelzen. Exakt dies hat HexView mit einem YubiKey Neo gemacht, sodass sich das Innenleben in voller Pracht bewundern lässt. Glücklicherweise sieht es so aus, als ob hier wirklich nur die Antennen vorbeilaufen und ein Ausfall eher nicht wahrscheinlich ist. Trotzdem würde ich jedem mit YubiKey NEO raten, an dieser Stelle mit Aceton das Plastik anzulösen und mit mehr ABS oder gar einem Metallring zu verstärken um Ausfälle durch Abnutzung zu vermeiden.

Ich selbst bin etwa an selber Stelle wie vorher: Ich werde den NEO wohl weiter nutzen. Zwar hat man inzwischen den YubiKey 5 NFC * herausgebracht, welcher wieder NFC kann, auch längere Keys für PGP unterstützt und das bei mir ursächliche Schlüsselring-Loch verstärkt hat, allerdings sind mir sowohl die fehlenden Quellen als auch die unschöne Reaktion des Supports doch eher sauer aufgestoßen. Hätte man mir bei meiner Nachfrage geantwortet, dass es vermutlich ein bekanntes Problem wäre und man das in der nächsten Produktversion angehen würde – ich hätte sie vermutlich direkt nach dem Release hier liegen gehabt. Leider mangelt es aber auch an Konkurrenz. Viele Keys wie z.B. Thetis oder Googles TitanKey nutzen ausschließlich U2F. Toll für’s Web, aber meine Hauptanwendung ist eher PGP. TOTP sucht man bei allen vergeblich, ließe sich mit etwas Gebastel aber halbwegs brauchbar in Software nachbilden – freie Standards haben so ihre Vorteile. Etwas besser sieht es bei NitroKey aus, hier ist GPG, TOTP und X.509 verfügbar. Leider ist U2F nur als separates Gerät erhältlich und TOTP mit 15 Einträgen etwas knapp (YubiKey Neo 28, YubiKey 5: 32). Da es sich um einen freien Algorithmus handelt könnte man aber, zumindest bei der TOTP-Limitierung, mit etwas Software nachhelfen. Ein Auge habe ich zudem noch auf Somu. Dieses Crowdfunding-Projekt dreht sich primär um einen U2F und FIDO2-Stick, als Stretch-Goal hat man jedoch GPG und SSH auf dem Plan. Alles soll am Ende Open Source sein, was sich auch eher positiv anhört. Ob sie am Ende liefern können, was sie versprechen, werde ich dann ja sehen.

In eine vorherigen Variante des Artikels wurde angegeben, dass NitroKey kein TOTP könne. Dies ist nicht korrekt, sowohl Nitrokey Pro 2 und Nitrokey Storage 2 können jeweils 15 TOTP-Einträge speichern.

Nginx: allow mit dynamic DNS

Wenn man Webseiten mit Backend betreibt ist es oft eine gute Idee die Verwaltungsbereiche nur von bestimmten IPs oder Netzen zuzulassen. Unter nginx gibt es hierzu den allow-Befehl, mit welchem man IPs und Netze angeben kann. Ich verwende dies z.B. häufig um nur interne IP-Bereiche oder per VPN angebundene Clients zuzulassen. Für ein aktuelles Projekt sollte jedoch auf ein VPN verzichtet werden. Theoretisch kein Problem – externe IP rein und fertig, aber leider ist es auch 2019 noch in Deutschland für viele Anschlussarten üblich bei Trennung und erneutem Verbinden eine andere IP-Adresse zuzuweisen. Für eingehende Verbindungen lässt sich dies mittels dynamischen DNS-Einträgen schnell in den Griff bekommen, jedoch ist das für das hiesige Konstrukt keine Option, da nginx mit solchen Einträgen nicht sinnvoll umgehen kann. Im Netz finden sich einige Helper-Scripte, welche den DNS regelmäßig Prüfen, die Konfiguration anpassen und den Webserver passend umkonfigurieren. Leider sind diese oft eher alt und nur auf das schon seit Jahrzehnten veraltete IPv4 ausgelegt. Als Abhilfe habe ich meine Anforderungen in ein kleines Python-Script gegossen. Für IPv6 wird von der aufgefundenen IP auf ein /48er Netz geschlossen und dieses freigegeben, sollte euer Provider nur ein /56er oder gar /64er rausrücken muss dass ggf. angepasst werden.

Vorbedingung ist, dass nginx die neue Konfiguration findet. Um es einfach zu halten stehen die dynamischen Einträge in einer separaten Textdatei, welche an passender Stelle per include eingebunden wird. Statische Einträge können, sofern vorhanden, an der üblichen Stelle bleiben.

[…]
location /admin {
        allow 192.168.0.0/24;
        include /etc/nginx/dyndns.conf;
        deny all;
        […]

Das eigentliche Script nutzt nach meinem Wissen keine externen Module und sollte somit auf jedem System mit Python 3 laufen. Es werden alle IPv4- und IPv6-Adressen abgerufen. Der angegebene Port (80) ist irrelevant, da nur die IPs genutzt werden. Die Konfiguration wird mittels MD5 auf Änderungen geprüft, liegt eine solche vor wird per Systemd eine reload ausgelöst. Ich habe die Datei mit in den nginx-Konfigurationsordner als /etc/nginx/dyndns.py gepackt – nicht schön, aber passte besser in die bereits vorhandene Struktur und Verwaltung.

#!/usr/bin/python3
import socket
import subprocess
import hashlib
import ipaddress


def md5(fname):
    hash_md5 = hashlib.md5()
    with open(fname, "rb") as f:
        for chunk in iter(lambda: f.read(4096), b""):
            hash_md5.update(chunk)
    return hash_md5.hexdigest()



before = md5("/etc/nginx/dyndns.conf")
cfg = open("/etc/nginx/dyndns.conf", "w")
addrs = socket.getaddrinfo("DEIN.DYNAMISCHER.DNS", 80, type=socket.SOCK_STREAM)
for addr in addrs:
    out = ""
    ip = ipaddress.ip_address(addr[4][0])
    if ip.version == 6:
        ip = ipaddress.ip_network(str(addr[4][0]) + "/48", False)
        out = (str(ip.network_address) + "/" + str(ip.prefixlen))
    else:
        out = addr[4][0]
    cfg.write("allow\t\t" + out + ";\t#Dynamic DNS\n")

cfg.close()

after = md5("/etc/nginx/dyndns.conf")

if before != after:
    #DNS has changed
    #print("RELOAD")
    subprocess.call('/usr/bin/systemctl reload nginx', shell=True)

Das Script muss regelmäßig gestartet werden um Änderungen zu prüfen. Wenn der zugehörige DNS-Dienst auf dem selben System läuft kann man möglicherweise auf Hooks zurückgreifen, andernfalls muss es zeitbasiert über Cron oder Timer laufen. Für letzteres mit einem Intervall von 5 Minuten legt man die Datei /etc/systemd/system/nginx-dyndns.timer an und füllt sie wie folgt:

[Unit]
Description=Nginx DNS updater

[Timer]
OnBootSec=0min
OnUnitInactiveSec=5m

[Install]
WantedBy=timers.target

Dazu benötigt man noch einen passenden Service, welcher unter /etc/systemd/system/nginx-dyndns.service definiert wird:

[Unit]
Description=Nginx DNS updater

[Service]
Type=oneshot
Nice=19
IOSchedulingClass=2
IOSchedulingPriority=7
ExecStart=/usr/bin/python3 /etc/nginx/dyndns.py

Last but not least wird der Timer eingeschaltet:

systemctl enable --now nginx-dyndns.timer

Sound Blaster Roar 2 öffnen

Sound Blaster Roar 2, Schwarz, Vorderseite

Der Sound Blaster Roar 2 von Creative ist ein tragbarer Lautsprecher mit Bluetooth (aptX), USB, Kartenleser, NFC, Akku, Powerbankfunktion und allem anderen technischen Schnickschnack, den man eventuell brauchen könnte.

Sound Blaster Roar 2, Schwarz, Anschlüsse und erweitertes Bedienfeld mit defekter Strombuchse

Ein solcher ist beim hiesigen Reparaturcafe aufgeschlagen. Durch einen Sturz waren Stecker des 15V/1.xA-Netzteils und Buchse im Gerät beschädigt – wohl etwas zu viel Bass. Bei einem aktuellen Preis von 125€ (Werbung: Produkt auf Amazon*) ist ein Austausch lohnenswert, jedoch hat das Öffnen etwas Kreativität abverlangt. Also mal schnell zusammengefasst, wie man an das Innere gelangt.

Wichtig: Da ein Akku verbaut ist sollte man beim Arbeiten besonders vorsichtig sein – ein kurzgeschlossener Li-Ion ist nichts, was man auf dem Basteltisch haben möchte.

Sound Blaster Roar 2, Abgenommene Frontplatte und Lautsprecherabdeckung. Positionen der Schrauben aus dem Gedächtnis markiert

Im ersten Schritt nimmt man die silberne Abdeckung über den Tasten ab. Auch wenn sie sich wehrt: sie ist nur geklebt. Darunter finden sich, neben einigen Tastern und dem Gesteckten LED/NFC-Modul, drei Schrauben um auch das darunterliegende Drahtgitter zu entfernen. zum Vorschein kommen drei Lautsprecher, die Äußeren sind mit etwas Schaumstoff abgedeckt. Alle Bauteile sind mit selbstklebenden Schaumstoffstreifen als Dichtung versehen um den innen entstehenden Luftdruck auf die seitlichen „Bassboxen“ zu leiten. Durch etwas Suchen lassen sich unter den seitlichen Dichtungen die Schrauben zum letztendlichen Öffnen des Gehäuses lokalisieren. Vorsicht: Hier sind zum Teil unterschiedliche Typen verbaut, also Besser die Quelle der Schrauben markieren.

Sound Blaster Roar 2, Hauptplatine

Im Inneren findet sich eine Hauptplatine, welche nahezu alle Funktionen abdeckt. Der Akku, bestehend aus zwei 18650-Zellen, ist an der Vorderseite verklebt. Die vielen Kabel zwischen PCB und Perepherie scheinen alle gesteckt. Glücklicherweise sind sie lang genug, um auch ohne vollständiges Zerlegen Zugang zu den Komponenten und Schrauben zu erhalten.

Etwas ungewöhnlich ist der Bereich um die Anschlüsse herum: Dort findet sich eine weitere Plastikabdeckung, welche sowohl innen als auch außen verschraubt ist. Zusammen mit einer weitere Schaumstofftichtung sogt diese dafür, dass auch hier kein Druck aus dem Gehäuse entweicht.

Sound Blaster Roar 2, Defekte Strombuchse

Ist auch dieses Hindernis verschwunden erhält man Schlussendlich Zugang zu den Anschlüssen. In diesem Fall wurde die Buchse zur Stromversorgung so nach oben gehebelt, dass im hinteren Bereich eine Metallverbindung abgerissen war. Da die Buchse sonst keine Schäden zeigte und das Layout keine großen Hoffnungen auf eine einfache Ersatzteilbeschaffung machte wurde die schadhafte Stelle einfach zurück gebogen und verlötet.

Da leider kein passender Stecker für das Netzteil zur Hand war konnte ich keinen Abschließenden Test durchführen. Der verwendete Stecker scheint etwas ungewöhnlicher zu sein, die meisten mit diesem Außendurchmesser haben einen kleineren Stift in der Mitte. Ich vermute, dass es durch die Reparatur zu einer Verschlechterung der Audioqualität kommen könnte, da die Dichtungen an einigen Stellen geöffnet wurden. Im Zweifel sollte etwas neuer Schaumstoff oder auch Silikon an den betroffenen Stellen Abhilfe schaffen.

OSTicket: Ticketerstellung über Python

OSTicket ist ein freies Ticketsystem, also System zur Sammlung und Dokumentation von Aufgaben. Ab und an kann es praktisch sein solche Aufgaben auch per Software zu generieren, z.B. für wiederkehrende Aufgaben oder wenn Systeme Störungen automatisiert erkennen. Da die Doku bisher eher dünn ist anbei ein kleines Python-Script, welches über die API Tickets erstellen kann. Hierzu muss erst im Admin-Bereich ein passender API-Zugang angelegt werden. Zu beachten ist, dass ein solcher API-Zugang auf eine IP limitiert ist.

import requests
import json

headers = {'X-API-Key': '12345ENTERHERE12345'}
subject = "12345"

ostdata = {
    "alert": True,
    "autorespond": False,
    "source": "API",
    "name": "GenervterUser",
    "email": "genervter@us.er",
    "phone": "",
    "subject": str(subject),
    "ip": "::1",
    "message": "data:text/plain,Ich bin ein Ticket",
}

json_data = json.dumps(ostdata)

r =
requests.post("https://helpdesk.meinefirma.local/api/tickets.json", data=json_data, verify = '/usr/local/share/ca-certificates/meineca.crt', headers=headers)
print(r)

Hinweise:

  • Der verify-Parameter ist nur nötig, wenn man HTTPS mit einer im System unbekannten CA nutzt
  • Die Telefonnummer wird bei source=API wohl nicht angezeigt
  • Der Name wird bei erster Nutzung mit der E-Mail-Adresse verknüpft, wenn man weitere Tickets mit der selben E-Mail anlegt scheinen diese alle den zuerst genutzten Namen anzuzeigen

Weitere Doku

[NextCloud/EN] No login possible after Update to 13.0.4 due to encryption app

I ran into some trouble while Updating to NC 13.0.4 regarding encryption. As long as Encryption was installed and enabled no login was possible – WebDAV and Clients received HTTP/503, WebUI didn’t show the login form but only „Bad Signature“. Also occ failed with the same error – „bad signature“. The previously working version was afair 13.0.1, since downgrading isn’t supported I can’t say much for .2 and .3. Inside the log (see below) I could see the error being caused by the encryption module. There might be the odd encrypted folder still present in old accounts, but since it never worked for me reliably it’s disabled for everything currently in use. External solutions are IMO the way to go.

{"reqId":"xyz","level":4,"time":"2018-07-20T17:53:17+00:00","remoteAddr":"xyz","user":"--","app":"webdav","method":"PROPFIND","url":"\/remote.php\/dav\/files\/xyz\/","message":"Exception: {\"Exception\":\"Sabre\\\\DAV\\\\Exception\\\\ServiceUnavailable\",\"Message\":\"OCP\\\\Encryption\\\\Exceptions\\\\GenericEncryptionException: Bad Signature\",\"Code\":0,\"Trace\":\"#0 [internal function]: {closure}(*** sensitive parameters replaced ***)\\n#1 \\\/var\\\/www\\\/html\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Object(Closure), Array)\\n#2 \\\/var\\\/www\\\/html\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(466): Sabre\\\\Event\\\\EventEmitter-&gt;emit('beforeMethod', Array)\\n#3 \\\/var\\\/www\\\/html\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server-&gt;invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#4 \\\/var\\\/www\\\/html\\\/remote.php(72): Sabre\\\\DAV\\\\Server-&gt;exec()\\n#5 \\\/var\\\/www\\\/html\\\/remote.php(167): handleException(Object(OCP\\\\Encryption\\\\Exceptions\\\\GenericEncryptionException))\\n#6 {main}\",\"File\":\"\\\/var\\\/www\\\/html\\\/remote.php\",\"Line\":70}","userAgent":"Mozilla\/5.0 (Windows) mirall\/2.3.2 (build 1) (Nextcloud)","version":"13.0.4.0"}

The usual literature suggests to disable the encryption module using occ – not quite helpful in my case. Deleting the encryption app on FS-level did revive occ and Web but the App now failed due to missing encryption. My solution was to disable encryption using SQL instead of just deleting it:

UPDATE `oc_appconfig`
SET `configvalue` = 'no'
WHERE `oc_appconfig`.`appid` = 'core'
AND `oc_appconfig`.`configkey` = 'encryption_enabled';

Windows RDP: „Die angeforderte Funktion wird nicht unterstützt“ (CredSSP)

Zugegeben, ich bin etwas spät dran, aber heute bin ich bei einer Stelle mit CredSSP und RDP dann auch mal auf die Schnauze gefallen. Da mir das – dank sonst gepflegter Infrastruktur – bisher nicht begegnet ist hier nochmal zum Nachlesen. Und mich als Gedächtnisstütze.

Vorgeschichte

Verursacher der ganzen Misere ist CredSSP, der Credential Security Support Provider. Dieses Windows-Modul ist unter Anderem für die Authentifizierung von Nutzern bei Verbindungen über RDP (Remote Desktop Protocol) und WinRM (Windows Remote Management) zuständig. Durch einen Fehler im Umgang mit den Sitzungen (CVE-2018-0886) können Angreifer einen Man-in-the-Middle-Angriff ausführen und so die bestehende Sitzung übernehmen. Da RDP und WinRM häufig für administrative Zwecke genutzt wird, können sich so Unbefugte ggf. weitrechende Zugriffe auf die verwalteten Systeme beschaffen. Betroffen ist so ziemlich alles – vom einfachen Windows 7 über die Server-Produkte bis hin zum aktuellen 10 sowie Server 2016.

Fixing

Microsoft hat den Fix in mehreren Stufen ausgerollt. Erstmals erschienen passende Updates im März, welche das Problem prinzipiell beheben. Sofern sie überall installiert werden. Zwei Monate später, im Mai, zog der Hersteller dann die Sicherheitsschrauben an: Ab diesem Patch ist die Nutzung der Mitigation zwingend erforderlich.

Wer nicht plant guckt in die Röhre

Wer seine Systeme im Griff hat wird nicht viel merken – ist alles auf einem aktuellen Patchstand wird man von den Umstellungen nichts merken. Anders sieht es aus, wenn man bei den Updates nachlässig handelt. Hat der eigene Rechner bereits aktuelle Patches installiert, das Zielsystem jedoch seit März keine Wartung erfahren, hat man Pech: Der RDP-Client bzw. WinRM verweigern die Verbindung mit dem Zielsystem. „Die angeforderte Funktion wird nicht unterstützt“. Selbes dürfte auch für die andere Richtung gelten.

Und nu?

Was folgt sind zwei Dinge: Erst mal sollte man dem Verantwortlichen Admin des Zielsystems eine Schulung zu IT-Sicherheit verpassen, denn inzwischen mehr als ein halbes Jahr lang keine Updates installieren ist – zumindest meiner Meinung nach – grob fahrlässig. Danach sollte das Zielsystem natürlich auf einen aktuellen Stand gebracht werden – für den Zugriff mindestens notwendig ist der entsprechende CredSSP-Patch, welcher sich auch einzel im dazugehörigen Artikel finden lässt. Da für den nur ein Dopelklick notwendig ist kann das ggf. auch ein Poweruser mit passenden Zugriffen vor Ort erledigen. Hat man keine Möglichkeit das System selbst zu verändern muss man am Client ran: Hier kann man über die Registry oder per GPO auch unsichere Verbindungen zulassen und somit eine Verbindung zu den betroffenen Zielen wieder ermöglich. Dies sollte immer nur temporär geschehen – umstellen, verbinden, Fix installieren und wieder zurück. Keinesfalls sollte man während die Lockerung aktiv ist Verbindungen zu anderen Systemen aufbauen.

Registry

Hierzu liegt man unter HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters ein neues REG_DWORD mit dem Namen „AllowEncryptionOracle“ an und gibt diesem den Wert „2„.

GPO

Das Pendant in GPO-Form findet sich unter Computerkonfiguration\Administrative Vorlagen\System\Delegierung von Anmeldeinformationen\Encryption Oracle Remediation. Diese muss aktiviert und die Schutzebene auf „Vulnerable“ eingestellt werden.

EOF

Patchmanagement etablieren. Systeme zeitnah Patchen. Spart Arbeit. Und Axteinsätze bein den zuständigen Systembetreuern.

Docker: Start mit aktivem IPv6 nicht möglich

Docker kann bei mir nach wie vor zwei Lager bedienen: Die Idee von Containern klingt gut, die mangelnde Stabilität und viele Konzepte der Implementierung lassen mich aber nur den Kopf schütteln. Heutiges Thema: IPv6. Prinzipiell nicht wirklich nutzbar, da die meisten Orchestration-Systeme wie Kubernetes oder Swarm bisher laut Doku und Bugtrackern bestenfalls rudimentäre Unterstützung bieten. Docker selbst soll – laut Anleitung – jedoch mit wenigen Handgriffen IPv6-fähig gemacht werden können.

Klingt einfach? Tja, nach einem Neustart ließ sich der Docker-Daemon nicht mehr starten. Im Log fand sich folgendes:

dockerd: Error starting daemon: Error initializing network controller: Error creating default "bridge" network: could not find an available, non-overlapping IPv6 address pool among the defaults to assign to the network

Die Abhilfe ist recht einfach: Ein festes Netz vergeben. Hierzu in der daemon.json einen passenden fixed-cidr-v6-Eintrag machen:

{
"ipv6": true,
"fixed-cidr-v6": "2a01:1234:5678:9abc:def0::/112"
}

Wir sind der Ring. Aber ihr wohl nicht mehr… #wirsindderring

Eigentlich dürfte ich jetzt gar keinen Blogeintrag schreiben können, denn theoretisch säße ich so kurz vor Fronleichnam – wie jedes Jahr – in einem Zelt bei Rock am Ring. Eigentlich. Nach 10 Jahren ununterbrochenem Ringrocken setze ich dieses Jahr dann mal aus – es ist nicht mehr mein Ring.

Hier mal eine kurze Historie, wie ich den Ring erlebt habe und warum ich denke, dass die jetzige Veranstaltung nicht mehr „mein“ Rock am Ring ist.

Los ging es für mich – wie gesagt – vor 10 Jahren. Nachdem in den Vorjahren immer wieder Termine dazwischen kamen schnappte ich mir kurzerhand einen Freund und fuhr los. Freitags natürlich, denn da gehen ja die Konzerte los. Großer Fehler. Wir landeten auf dem Krebsberg, einem recht weit abgelegenen Platz. Dort fanden sich vor Allem Familien und es ging eher ruhig zu. Nunja, ist halt lauferei, aber passt schon – und etwas Nachtruhe ist für den ersten Festivalbesuch ja auch nicht so schlecht. Da die Konzerte doch etwas härter waren ist etwas Ruhe nicht so unangebracht. Zu dieser Zeit gab es noch keine Wellenbrecherbereiche und so durfte auch ich mitbekommen was passiert, wenn alle nach Vorne wollen. Offenbar hatte man irgendwann willkürlich Zäune aufgestellt um zu verhindern, dass noch mehr Besucher nach vorne drängen. Ein und Auslass nur noch auf der rechten Seite – so hieß es. Wer Links stand hatte keine Chance durch zu kommen. Also zumindest bis Einige dann mal anfingen die nicht ganz so groß gewachsenen Besucher über die Zäune ins „Freie“ zu bewegen. Unschöne Sache.

Im Nächsten Jahr war man dann schlauer. Auf beiden Seiten. Besagter Freund und ich waren früher da und durften uns über einen Platz auf B freuen. Das Jahr wurde dann besonders Spaßig, denn neben uns fand sich eine Truppe der Ringrocker. Diese „Fan-Vereinigung“ organisiert nicht nur Partys auf Zeltplätzen, sondern auch gleich eine komplette Warm-up-Party. Entsprechend heiter ging es dann auch in diesem Jahr zu. Auch auf dem Gelände hat man dazugelernt, denn wenn ich mich richtig entsinne gab es in diesem Jahr erstmalig „Wellenbrecherbereiche“, sodass eine Überfüllung und fehlende Möglichkeiten den Bereich zu verlassen nicht mehr vorkommen sollte. Nicht ganz ohne Kinderkrankheiten, aber generell doch etwas, das ich eine gute Idee fand.

Ich meine in Jahr Drei war es, dass ich erstmalig auf A5 landete. War halt der erste Parkplatz aus meiner Richtung, der frei war. Diesmal mit mehreren aus meinem Freundeskreis, die sich angeschlossen hatten. Schon beim Aufbau machten wir Bekanntschaft mit einigen Nachbarn (ja, wenn man einen Hammer dabei hat ist man schnell beliebt…) und so bildete sich eine lustige Truppe, die sich wirklich als Querbeet bezeichnen durfte. Sowohl geografisch, denn man fand Alles – von Münsterländern bis zu Bayern, die RaR cooler fanden als RiP. Auch Gesellschaftlich war die Gruppe gemischt, denn auch hier war zwischen Geschäftsführer über Büromenschen hin zu Arbeitern vom Bau alles vertreten. Das Festival verging und in den nächsten Jahren fand sich ein Großteil der selben Truppe wieder auf A5 ein. Selbst Leute, die zwischenzeitlich eher auf Hotelzimmer und VIP-Eintritt setzten fanden sich am Ende doch die meiste Zeit bei unseren Zelten wieder. Ist halt mehr Party. Das Ganze wurde dann auch immer weiter ausgebaut. Meterlanges Gruppenzelt , Kühlschrank, Pizzaofen, Pool und eine passende Medienanlage für alles zwischen Musik und Mario-Kart. Ich bin da zwar eher der Selbstversorger, aber spätestens das Zelt ist bei Regen und Sturm halt praktisch, kann man weiterfeiern. Zeitweise waren mehr als 40 Leute in unserem „Camp“, organisierten Partys, Turniere und andere Events. Nicht verwunderlich, dass in einigen Jahren ein Teil der Leute das eigentliche Festivalgelände gar nicht betrat und stattdessen auf dem Campingplatz durchfeierte.

Die ersten Schatten müssten dann gegen 2014 aufgezogen sein – ich meine da gab es dann das erste mal Stress mit dem Veranstalter. „Mimimi keine großen Möbel“. Sie könnten ja liegen bleiben. Really? Ich weiß, dass auf RaR viel liegen bleibt und ja, das ist ein Problem. Aber gibt es hier keine andere Lösung? Soweit ich weiß wurde „Großkram“ mit Foto, Name und Anschrift registriert und ein Pfand hinterlegt. Wenn sich ja jemand nicht abmeldet sollte das auffallen und ggf. die Reinigungskosten umgelegt werden können. Wir hatten mWn immer alles entweder mitgenommen oder bei den Müllsammelstellen abgegeben. Auch ich selbst musste dran glauben. Ich hatte seit Jahren eine kleine Elektronik dabei: Ein kleiner Bleiakku wurde Zuhause per Solar geladen und durfte beim Camping Licht, Handy & Co versorgen. Li-Ion war noch teuer. Der sollte nun verboten sein – er könnte ja auslaufen. Ein AGM-Akku. Ja sicher. Mir sind schon viele von denen „um die Ohren geflogen“, aber noch keiner dabei ausgelaufen.

Auch Gelände wurde immer unschöner, vor Allem die Getränkemitnahme. Man durfte plötzlich nur noch einen Tetra-Pack mit 1l mitnehmen. Und das führte zu vielen tollen Diskussionen beim Einlass. Muss original verschlossen sein. OK. Und jetzt bitte Deckel öffnen. OK. Und jetzt bitte Deckel in den Müll. WTF? Begründung? Damit kann man ja Jemanden abwerfen. JA MIT DEM TETRAPACK VON >=1kg NICHT?! Und wo ist der Unterschied, ob ich Tetrapack oder PET-Flasche mit 1l gegen den Kopf bekomme? Kontrolle in allen Ehren, aber das hier klang doch eher nach reiner Schikane. Eine offener Tetrapack ist quasi unbrauchbar – er schwappt über, es können Dreck und Wespen rein. Toll. Entsprechend sah es dann auch vor den Bühnen aus – so viele durch dehydrierung kollabierte Besucher gab es IMO in den Vorjahren nicht. Ich bin schnell in den McGyver-Modus gewechselt und konnte aus diversen Utensilien mir kurz hinter dem Eingang einen ausreichend dichten Verschluss basteln und so zumindest etwas Flüssigkeit mitnehmen – passt. Zudem hat man an den Brechern meist das Glück, dass auch die Security – je nach Tagesform – schon mal etwas ihrer Verpflegung verschenkt oder in den späteren Jahren über Wasserschläuche die Behältnisse der Besucher auffüllt.

Um nochmal klar zu stellen: Hier geht es nicht darum, dass ich den Veranstaltern und Budenbesitzern ihren Umsatz nicht gönne, es ist nur praktisch nicht möglich. Selbst wer bereit ist die 5€ für ein kleines Wasser zu zahlen hat keine praktikable Möglichkeit dazu. Wer während den Konzerten zur Getränkebude wandert ist seinen Platz los – wer vorne stehen will muss also auch dort bleiben. Vorher etwas kaufen? Auch nicht drin: Es gibt nur Becher. Wie war das mit Überschwappen, Dreck und Wespen? Einzige Chance: In den Pausen laufen Verkäufer mit Faß durch die Reihen und bieten Getränke an. Die Auswahl? Bier. Nur Bier. Ich bin zwar kein Antialkoholiker, aber wenn ich den ganzen Tag vor der Bühne in heißer Sonne literweise Bier trinke dürfte ich von den Headlinern nicht mehr viel mitbekommen.

2015 dann Mendig. Glücksfall für mich, das ist selbst zu Fuß schnell zu erreichen. Auch auf dem Gelände wurden die Wege deutlich kürzer, so kann man dann auch mal zwischenzurch zwischen Zelt und Festivalgelände pendeln. Einen riesen Pluspunkt konnte man bei mir durch die Umgestaltung und Vergrößerung des Festival-Supermarktes erreichen. Gerade in Kombination mit den kurzen Wegen hieß das für mich, dass ich mit Rucksack, Zelt und zwei Tüten in der Hand alles notwenige in einem Weg zwischen Auto und Zeltplatz transportieren konnte. Den Rest besorgte ich mir dann vor Ort – zu normalen Ladenpreisen.

Camping und Organisation war jedoch eher eine Katastrophe. Durch die Einschränkung, dass es sich um ein Wasserschutzgebiet handelt, durften keine Aggregate mitgenommen werden. Stattdessen führte man das „Roch’n’Roll-Camping“ ein: Gegen Aufpreis sollte man bessere Parkplätze sowie einen Campingplatz mit Stromanschluss erhalten. Sollte. Zum Einen gab es wohl massive Platzprobleme, da sich nun die kleinen und großen Gruppen nicht mehr mischten, sondern alle Großgruppen auf RnR drängten und so am Ende deutlich mehr Platz benötigten als wohl vom Durchschnitt ausgehend berechet wurde – toldyouso. Einige mussten daher wohl trotz passendem Ticket auf die allgemeinen Plätze ausweichen. Auch Strom war, wenn man denn Platz bekam, eher ein Witz: 10 Personen = 2kW. Keine Herde, keine Öfen, keine – wait what?! Ja: Keine Verstärker. Auch Fön oder Kaffeemaschienen sollten vermieden werden. Wer zuvor mit Aggregat und Drehstrom ausgestattet war fand das jetzt nicht so lustig. Vor Allem nicht als man erfahren musste, dass der Verteiler „leider schon voll“ war. Pech gehabt: Gezahlt und trotzdem kein Stom, wenn die Nachbarn nichts von ihrer Ration abgeben wollen. Auch führte die Teilung dazu, dass die Gruppen zerbrachen. Wer Geld und viel Ausstattung hatte zog zum RnR, wer einfach nur das Festival genießen wollte eher zum allgemeinen Camping. Selbst das gegenseitige Besuchen war quasi unmöglich, da man ohne passendes Ticket-Addon nicht zum RnR und somit dem Gemeinschaftszelt durchgelassen wurde. Immerhin durfte man sich noch durch den Zaun unterhalten. Tolle Camping-Atmosphäre.

Ich will an diesem Wochenende loslassen und nicht alle paar Meter überlegen, wo meine individuell gekauften Zutrittsrechte enden. Ich will beim Ticketkauf in Vorfreude schwelgen. Wenn ich en Produkt mit 200 individuellen Möglichkeiten abwägen will, geht ich zu Subway.
(Mambo @ ringrocker.com)

Und dann war da ja auch noch das Gewitter. Also das Erste. Verzeichne ich mal unter „Shit happens“. Ist halt Open Air. Sowas gab es auch schon am Ring – man denke nur an den „Tornado“ von 2010 & Co. Und auf anderen Festivals ist da schon schlimmeres passiert. Ich kam Dank Mülltüten und Panzerband trocken davon – und das obwohl das Zelt zu dem Zeitpunkt schon weit über 8 Jahre auf dem Buckel hatte und nicht grade pfleglich behandelt wurde. Trockengelegt, weiter gehts.

wir als gast haben unwetter, unwetter, sogar vorallem falschen terror so weggesteckt wie wir festivalsfreaks eben sind
(StonedHammer @ ringrocker.com)

2016. Jahr Zwei. Jetzt wird alles Besser, oder? Nein. Zu wenig Parkplätze, zu wenig Zeltplätze – selbst ich musst an Tag 0 noch vor der offiziellen Öffnung warten, dass eine Reservefläche verfügbar wird. Zuvor durften nur Leute mit Frühanreisetickets, welche es mit begrenztem Kontingent gab, drauf. Normalerweise wäre dies ein Grund dem Veranstalter gewaltig den Allerwertesten aufzureißen, aber an der Stelle musste ich Ihn doch verteidigen: In den Tagen zuvor hatten heftige Regenfälle die Region getroffen. Einige Orte standen unter Wasser, die Feuerwehren waren im Dauereinsatz. Auch das Flughafengelände – wie gesagt, ich komme aus der Ecke und kenne es daher recht gut – hatte schwer gelitten: Teile der Wiesen hatten sich in Schlamm verwandelt und waren unbenutzbar, asphaltierte Wege nebendran zum Teil unterspült oder gar eingebrochen und weggespült. Für diese Ausgangsumstände lief die Anreise doch überraschend professionell ab.

Aber auch das Jahr soll nicht ganz ohne Zwischenfälle verlaufen: Ich meine ich war grade auf dem Weg von Disturbed zur „Fressmeile“ und traf ein paar Leute, die im selben Ort wohnten. Während ich mir das immer noch beste Festivalfutter (Hallo Handbrotzeit) schmecken ließ meinte einer dieser Mitortsbewohner: Oh, wird dunkel da. So, nun kennt man hier sein Wetter und kann sowas ungefär deuten. In diesem Fall hieß das für mich: Ich geh dann mal mir was Trockenes suchen. Zwar wäre Tenacious D und Volbeat sicher noch interessant gewesen, beide hatte ich aber schon öfter gesehen – nicht genug Motivation mich dafür in den Regen zu stellen, zumal das nach viel Regen aussah. Bis zum Zelt kam ich nicht mehr, da ging es schon richtig los. Glücklicherweise hatte ich auf Basis der Vorhersagen und Wetterwarnungen des DWD eine ordentliche Regenjacke dabei, für die ich morgens noch unverständnisvolle Kommentare erntete, und bleib daher soweit trocken. Obenrum. Unten war schnell „Land unter“. Zwar hat die asphaltierte Landebahn Abläufe, die waren aber offenbar durch dort hingestellten und nun aufgeweichten Papiermüll verstopft. Das Ergabnis war ein Wasserspiegel, der in so ziemlich jedes Schuhwerk lief. Great. Hinzu kamen ein paar Blitzeinschläge – Gewitter halt. Von mir aus sah das nach Gebäuden aus, aber wie sich später rausstellte gab es offensichtlich auch ein paar Äste, die sich Besucher als Wege suchten. Am Zelt angekommen für mich erst mal das übliche Spiel: Trockenlegen, Ravioli aufsetzen, in der Zwischenzeit das Wasserschaden-Handy vom Nachbarn reparieren – was man halt so tut.

Nächster Morgen. Sonne. Wäre da nicht der neu entstandene See nebenan, in dem vereinzelte Zelte schwammen, hätte man vom Unwetter nicht viel sehen können. Vom Zelt aus. Durchsagen und Twitter vermeldeten jedoch, dass es wohl doch etwas ungemütlicher aussah. Verletzte, Festival unterbrochen, man prüfe und werde Informieren wie es weiter geht. Vielen war das recht egal – durchnäßt traten großere Massen schon mal vorsorglich den Heimweg an. Ich packte erst mal Campingstuhl, Ravioli und ein Buch aus – nur die Harten kommen in den Garten. Und niemand versaut mir das Frühstück.

Als dann das Festival fortgesetzt wurde war wohl jedem schnell klar, warum die Unterbrechung nötig war. Das eigentliche Festivalgelände hatte ziemlich gelitten. Ich kann da nur allen Technikern und Helfern meinen Respekt ausdrücken, die aus diesem Chaos wieder ein halbwegs brauchbares Gelände zauberten. Während vor den Bühnen Fans auf Plastikböden den Klängen der funktionierenden Technik lauschten war weiter hinten ein Sumpf entstanden. Selbst ich mit meinen überdurchschnittlichen Füßen versank erst mal gute 5cm im Morast. Und es war ein fieser, dünnflüssiger, welcher beim Versuch den Fuß wieder hoch zu bekommen ein Vakuum zog. Entsprechend viel Kraft war nötig um vorwärts zu kommen. Jedes krabbelnde Kleinkind wäre schneller gewesen.

Der nächste Morgen oder Nacht dann mit der „bösen“ Nachricht: Abbruch. OK, nicht verwunderlich. Was folgte ist aber noch immer etwas, dass ich nicht wirklich gutheißen kann. Mit nur wenig Vorlaufzeit wurden die Besucher aufgefordert das Gelände bis Mittag zu räumen. Anweisung des RP-Innenministers. Ich bin sicher kein Experte, aber das klingt doch eher nach dem Versuch sich politisch zu profilieren als nach einem sinnvollen Sicherheitskonzept. Alle Letzteren die ich kenne haben da eine klare Linie: So lange wie möglich den Betrieb aufrecht halten, sodass man die Besucher nach und nach ohne Gefahr und Panik evakuieren kann. Dass so ein Konzept funktioniert konnte man auch schön letzte Woche beim Brand im Europapark zu sehen. Stattdessen wurde man quasi aus den Zelten geworfen, wurde ohne Möglichkeit sein Hab und Gut mitzunehmen zum Parkplatz getrieben. Grade wer nicht, wie ich, die Absage schon in der Nacht mitbekommen hatte und alles mit einem Gang zum Auto bekommt dürfte hier etwas blöd aus der Wäsche geguckt haben. Die Wege sahen entsprechend aus – statt wie üblich verteilt drängten alle gleichzeitig heraus. Stürze, Verletzungen und Co inklusive – der „Schotter des Todes“ war noch nicht überall verschwunden. Und für was? Dass nun ein Haufen teils stark alkoholisierter Besucher ohne Verpflegung auf einem verschlammten Parkplatz stand, aus dem keine Abfahrt möglich war. Sehr sicher. Großartige Leistung.

2017. Auf nach Mendig. Oder auch nicht, denn kurzfristig ging es dann doch wieder zum Ring. Leider mit allen Einschränkungen. Wärend die Verbote in Mendig durch das Schutzgebiet ja Sinn machten klingt es am Nürburgring doch eher nach Geldmache. Keine Aggregate wegen Umweltschutz? Als ob das das größte Problem wäre – vor Allem da direkt neben den Zelten die Großaggregate der WCs, Verkaufsstände und Beleuchtung wie eh und je brummten. Und nur Tage vorher die der Besucher des 24h-Rennens. Auch Anlagenverbot, Besuchsverbot und der Einlasswahnsinn zogen mit. Nun aber ohne die Vorteile, welche sich in Mendig ergaben. Entsprechend hielt sich meine Laune in Grenzen, aber hey, Rammstein. Oder auch nicht. Terroralarm. Weil ein Name falsch aufgeschrieben wurde. Welp – wird sich schon wer was bei gedacht haben wieder einmal Zehntausende von einem Gelände zu werfen. Immerhin schienen die Besucher hier etwas ruhiger, sodass zumindest ich weniger Verletzte sehen konnte. Also außer jenen, die durch das fehlende Wasser zusammenklappten. Festival gelaufen. Etwas bitteren Nachgeschmack gab es für mich dann noch, als Veranstalter MLK der Kragen platzte und er in einer Pressekonferenz gegen alles und jeden Wetterte. Ja, man kann bei so einer Aktion sauer sein. Ja, man kann dann wütend werden. Aber nein, man sollte deswegen keine unüberlegten Anschuldigungen gegen ganze Gruppen raushauen, dass hier absichtlich Besucher gefährdet würden. Vor Allem nicht, wenn man selbst nicht ganz frei von diesem Vorwurf ist, denn die Ursache für das ganze Problem muss sich MLK wohl selbst auf die Kappe schreiben. Ich komme aus RP, muss ich mich jetzt auch bei jeder Vorstellung aktiv von den Entscheidungen einiger Politiker distanzieren?

MLK kommt mir – auch bedingt durch die schlimmen Aussagen vom letzten Jahr – nur noch vor, wie ein verbitterter alter Mann, der sieht wie sein Projekt stirbt aber nicht versteht, dass man sich viele Probleme selbst erschaffen hat.
(Mehlsack)

Nu ist also 2018 und die Anreise läuft grade. Eine Karte habe ich nicht. Die Anzahl der für mich interessanten Bands ist von „wie soll ich mich teilen“ auf „eine Hand reicht zum Zählen“ gesunken. Hinzu kommt die Preispolitik: Statt wie bisher jährlich die Preise anzuheben hat man sie nun gesenkt! Also mit Stern. Man muss nun für 50€ das Camping und Parken extra kaufen. (Ja, ich kenne den Hintergrund. Parken/Campen wird durch einen anderen Veranstalter durchgeführt) Auf das gibt es dann auch keinen Frühbucherrabatt mehr. Am Ende also doch ein Plus, was als „wir werden günstiger“ verkauft werden soll. Die Einlasskontrollen wurden auch nochmal verschärft: Auf dem Festivalgelände darf man nun gar kein Wasser mehr mitholen – man kann sich ja Einwegplastikbecher mit Leitungswasser füllen. Muss dieser Umeltschutz sein. Einziger Vorteil: Es stehen keine Wahlen an, vielleich hält sich ja die Politik dann dieses Jahr mal raus. Auf auf den Zeltplätzen passt der Daumen jedoch nur noch mit gutem Willen in die Schraube: Große Zelte sind verboten, selbst mein „3-Personen-Zelt“ wäre für mich nicht zugelassen. Dass diese Personenangaben üblicherweise ohne Gepäck angegeben werden haben die Verantwortlichen wohl übersehen. Gruppen- oder Gemeinschaftszelte sind ebenfalls verboten. Pavillons um sich draußen vor der Sonne zu schützen? Ein Kleiner wenn die Gruppe mindestens 10 Personen hat. Grillen? Einweggrills wenn der Veranstalter sagt, dass das Wetter gut genug ist. Natürlich gilt weiterhin Aggregat- und Besuchsverbot. Sorry, aber warum sollte ich hinfahren? Das lässt kein Festivalfeeling aufkommen sondern erinnert mehr an Kindergarten. Ähnliches war auch in meinem Bekanntenkreis zu hören – ich bin mir nicht sicher, ob von den zeitweise mehr als 40 Personen überhaupt noch was übrig ist. Danach zu Urteilen, dass erstmals seit Langem das Festival nicht vorab ausverkauft ist haben sich das wohl auch einige Andere gedacht. Auch die Ringrocker, ich hatte sie ja schon erwähnt, haben einen offenen Brief geschrieben und fragen, ob wir noch der Ring sind. Ich denke: Nicht mehr so wirklich. Mal schauen, ob wir es wieder werden.