Ubiquiti UniFi Controller Installation

Im folgenden Artikel beschreibe ich die saubere Installation der UniFi Controller Software als Service unter Windows Server 2019 mit AdoptOpenJDK.

Zur Vorbereitung alle nötigen Komponenten herunterladen:

  • UniFi Network Controller 5.x.y for Windows (Link)
  • AdoptOpenJDK Version 8, LTS, Hotspot (Link)
  • Apache Commons Daemon (Link)

Das Setup des Controllers als Windows Service wird durch die Architektur und die Verwendung von AdoptOpenJDK 64-Bit ein wenig erschwert.

  1. Problem: der von UniFi Service Controller (Apache Commons Daemon Service Runner) wird mit einer Service-Config ausgeliefert, die mit der 64-Bit JVM nicht automatisch zurechtkommt.
  2. Problem: die UniFi Setup-Routine installiert das Verzeichnis des Controllers im Benutzerprofil des ausführenden Users!

Der Support-Eintrag in der UniFi Knowledgebase ist dazu leider auch nur bedingt hilfreich: Run the Controller as Windows Service

Weiterlesen

Ubiquiti UniFi Controller SSL-Zertifikat

Wer den UniFi Controller nicht hinter einem Proxy betreiben will (oder kann) steht früher oder später vor der Herausforderung das mitgelieferte „self-signed“ SSL-Zertifikat zu ersetzen.

Meiner interne UniFi Umgebung läuft unter Windows und fordert über CertBot regelmäßig Let’s Encrypt SSL-Zertifikate an, die aus dem PFX-Archiv in den Java KeyStore des UniFi Controllers kopiert werden müssen. Als Werkzeug dient hier das Java „KeyTool“, welches vom JDK mitgeliefert wird.

Dazu wird der „Alias“ des Zertifikats im PFX-Archiv benötigt, der mit dem KeyTool ausgelesen werden kann:

keytool.exe -v -list -storetype pkcs12 -keystore <Pfad-zum-PFX> -storepass <PFX-Passwort> | findstr Alias

Anschließend kann das gewünschte Zertifikat aus dem PFX in den KeyStore kopiert werden (als KeyStore-Passwort muss das UniFi-Standardpasswort verwendet werden):

del .\keystore /Q

keytool.exe -importkeystore -srckeystore <Pfad-zum-PFX> -srcstorepass <PFX-Passwort> -destkeystore keystore -srcstoretype pkcs12 -deststoretype jks -deststorepass aircontrolenterprise -destkeypass aircontrolenterprise -destalias unifi -srcalias {<Cert-Alias (siehe oben)>}

Anschließend den UniFi Controller neu starten.

Windows Server core – Shell und Bitlocker

Windows Server

Windows Server Core hat keine grafische Oberfläche und wird daher primär remote oder mit PowerShell konfiguriert. Dazu macht es Sinn, PowerShell als Default Shell zu konfigurieren:

Set-ItemProperty -Path 'HKLM:\Software\Microsoft\Windows NT\CurrentVersion\WinLogon' -Name Shell -Value 'PowerShell.exe'

BitLocker aktivieren

Wenn das System außerhalb einer geschützten Umgebung läuft ist es außerdem empfehlenswert, die Daten mit BitLocker zu verschlüsseln.

Dazu BitLocker aktivieren…

Enable-BitLocker -MountPoint "C:" -UsedSpaceOnly -TpmProtector

… mit einem Recovery Passwort versehen…

Add-BitLockerKeyProtector -MountPoint "C:" -RecoveryPasswordProtector

… und dieses im Active Directory sichern:

$blv = Get-BitLockerVolume -MountPoint "C:"
Backup-BitLockerKeyProtector -MountPoint "C:" -KeyProtectorId $blv.KeyProtector[1].KeyProtectorId

Pflasterspektakel 2019

Dieses Jahr habe ich es tatsächlich geschafft, das Linzer Pflasterspektakel alle drei Tage zu besuchen – und es hat sich ausgezahlt! :)

Pflasterspektakel

18.-20. Juli 2019

Meine persönlichen Highlights waren neben dem „Heimspiel“ von Blechsalat die Kontrabass-und-Handpan-Kombo Contrapanda und die beiden total schrillen Clowns Karcocha & Kumilintu…

Weiterlesen

Game of Drones

Gestern hatte ich erstmals Gelegenheit, an einer Drohne herumzuspielen. Genauer gesagt einer Beta65S mit TX02-Controller und einem SPI Receiver.

Game of Drones @ dataformers

Ein bisschen Rumspielen muss auch sein! Rahmenprogramm beim internen "dataPlauscherl" gestern – eine Whoop Racing Drohne. :D

Gepostet von dataformers am Freitag, 12. Juli 2019
Game of Drones bei dataformers

Die Drohne zu kalibrieren und in die Luft zu bekommen ist erst mal gar nicht so einfach. Es gibt dieselbe Drohne in verschiedenen Ausführungen – und sie mit unserem TX02-Controller zu koppeln war auch nicht selbsterklärend. Da die Beschreibung in der BetaFPV Knowledgebase veraltet ist hier kurz die Schritte, die ich durchgeführt habe…

Weiterlesen

Lenovo BIOS Settings und PowerShell

Beginnend mit den T/W/X/L x30er-Serien bietet Lenovo WMI-Klassen, um BIOS/UEFI-Einstellungen direkt aus dem Betriebssystem heraus zu modifizieren. Die Klassen befinden sich im Namespace „root\wmi“.

Alle BIOS-einstellungen auslesen

Um eine Liste aller BIOS-Einstellungen incl. der aktuellen Werte auszulesen wird die WMI-Klasse „Lenovo_BiosSettings“ verwendet. Zur besseren Lesbarkeit wird die Ausgabe leicht motifiziert und „,“ durch „=“ ersetzt.

Weiterlesen

Windows von BIOS auf UEFI migrieren

Windows Server

Um Windows mit minimalem Aufwand von einer „Legacy“/BIOS-Installation auf UEFI zu konvertieren stellt Microsoft seit dem „Creators Update“ (1703) das Tool MBR2GPT zur Verfügung. Es ist damit nicht mehr nötig, Windows für die Konvertierung BIOS-UEFI neu zu installieren!

Das Tool übernimmt wie der Name bereits andeutet die Konvertierung einer Disk von Master Boot Record (MBR) auf GUID Partition Table (GPT). Außerdem wird im Rahmen des Konvertierungsprozesses die Systempartition verkleinert und eine EFI Systempartition angelegt.

Der Vorgang kann entweder in einer Windows PE Umgebung oder direkt im laufenden OS durchgeführt werden. Da es sich um einen tiefgreifenden Eingriff ins System handelt empfehle ich vorher, kritische Daten zu sichern!

Microsoft Mechanics hat den Prozess in ein Demo-Video verpackt:

Shifting from BIOS to UEFI with Windows 10 – MBR2GPT disk conversion tool

Der folgende Ablauf hat sich für mich bewährt:

Weiterlesen

Redis Installation unter Debian

Redis (Icon)

Für ein neues Projekt werfe ich gerade einen Blick auf die In-Memory-Datenbank Redis. Die in diesem Beitrag beschriebene Demo-Installation läuft auf einem minimalen Debian 9 Laborsystem und nutzt Redis 3.2 aus dem Standard-Repo.

Weiterlesen

OpenDKIM und Postfix

Postfix Mailserver (Icon)

Beim Versuch, die Mails meines Postfix-Mailservers möglichst simpel mit DKIM zu signieren bin ich auf ein schlecht dokumentiertes Feature von OpenDKIM gestoßen.

Da der Mailserver nur für eine Handvoll Domains und ein sehr überschaubares Mailvolumen genutzt wird war es mir wichtig, die Konfiguration möglichst einfach zu gestalten. Daher wollte ich uA. nur einen Schlüssel für das Signieren aller ausgehenden Mails verwalten.

In der opendkim.conf lässt sich dabei mit den Direktiven „Domain *“ und „KeyFile …“ ein Schlüssel für alle Domains zuordnen. Voraussetzung ist natürlich, dass alle Domains denselben „Selector“ verwenden (können).

Auszug aus der Config:

Selector k201903 # Selector für ALLE Domains
Domain   *
KeyFile  /etc/opendkim/keys/k201903.private # Key für ALLE Domains

Hier noch die vollständige Konfiguration incl. dem Einbinden von OpenDKIM in Postfix als Milter…

Weiterlesen

Amman

Amman ist quirlig, laut, hügelig – daher zu Fuß ganz schön anstrengend – mit vielen kleinen Gassen und Stiegen, vollgestopften Straße, grünen Innenhöfen und Graffitis (dazu mehr weiter unten).

View this post on Instagram

#goodnight #amman with Iris :)

A post shared by Thomas H. (@calardan) on

Historische Stätten und Ruinen mitten in der Innenstadt, neben kleinen Cafés, Souks, Kunstgalerien, Bookshops, Werkstätten und Restaurants prägen das Stadtbild.

Weiterlesen