Unifi-Controller

Änderungsstand: 2024-01-21

Zuerst vom bestehendem Unifi-Controller ein Backup erstellen. Das benötige ich am Ende meine Installation für das Restore!

Unifi-Contoller (CloudKey) auf Unraid. Nicht als Docker Applikation sondern in einer kleinen VM. Und in dieser VM nicht als Docker-Compose sondern als direkte Installation. Somit ist das ganze Drumherum inkl. MongoDB automatisch mit dabei und konfiguriert. Ein Script sorgt am Ende für die nötige Aktualisierungen des Systems und des Unifi-Controllers. Als VM verwende ich Debian Bookworm Server, welches ich hier herunterlade. Dafür verwende ich die derzeit verfügbare debian-12.4.0-amd64-netinst.iso.

VM erstellen:

Meine VM:

Jetzt kann man den VNC starten, in dem man auf das Symbol der VM und „VNC Remote“ klickt und die VM installieren.

Zur Installation am Ende nur „ssh“ und „Systemkomponenten“ wählen. Der Rest wird nicht benötigt.

Konfiguration Debian Bookworm:

Mittels SSH-Terminal (ich verwende Putty), logge ich mich nun mit Benutzer und dazugehörigem Passwort ein. Das funktioniert in der Standardausführung nicht auf Root sondern nur auf Benutzerebene. Und das ist gut so. Folgendes arbeite ich der Reihenfolge nach ab:

su

Nach Eingabe des angelegten root-Passwortes habe ich nun Root-Rechte.

Systemupdate:

apt update && apt upgrade -y

Qemu Gast Agent installieren:

apt install qemu-guest-agent

Optional Start:

SSH-Port ändern:

nano /etc/ssh/sshd_config

Ich suche nun folgenden Eintrag:

#Port 22

Diesen Eintrag ändere ich folgend:

Port 12345

Strg-x, y, Enter

Port 12345 ist ab nun der Port, der für den SSH-Zugang verwendet wird.

Dieser Port, so wie er in diesem Beispiel angegeben wurde, sollte natürlich nicht so verwendet werden! Bitte einen eigenen, freien Port verwenden!!!

systemctl restart ssh

Der „alte Port 22“ ist noch für diese eine Sitzung bis zum Logout gültig.

Optional Ende.

Statische IP-Adresse zuweisen:

nano /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
source /etc/network/interfaces.d/*
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
allow-hotplug enp1s0
iface enp1s0 inet dhcp

Folgendes daraufhin ändern (Network-Interface beachten! Meist ist das eth0 (da ich eine VM betreibe, ist das bei mit enp1s0)):

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
source /etc/network/interfaces.d/*
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
allow-hotplug enp1s0
#iface enp1s0 inet dhcp              # <--> deaktiviert
 
iface enp1s0 inet static
address 192.168.1.159
netmask 255.255.255.0
gateway 192.168.1.1

Strg-x, y, Enter

/etc/init.d/networking restart

Nun im Terminal mit neuer IP und neuem Port, wenn vergeben, anmelden!

UNIFI-Controller installieren:

Als root anmelden:

su
apt install ca-certificates wget -y
wget -qO - https://get.glennr.nl/unifi/install/install_latest/unifi-latest.sh | bash

Die Installation dauert nun etwas. Wenn fertig:

exit

Nun Aufruf im Browser: http s://VM-IP:8443

Warnhinweis bestätigen und „Restore from Backup“ wählen oder eine Neuinstallation tätigen.

Quelle:

https://ubiquiti-networks-forum.de/wiki/entry/89-controller-installation-auf-vm-lxc-raspi-etc/

Automatisches Systemupdate:

Als root anmelden:

su
touch /home/updatelog.txt && echo // Updates mit "updatescript"  | tee -a /home/updatelog.txt
cd && mkdir -p scriptfiles
cd && cd scriptfiles && nano updatescript.sh

Folgendes eintragen und ggnf. anpassen:

#!/bin/bash
# Dateipfad: ~/scriptfiles/updatescript.sh
# Logfile: /home/updatelog.txt
 
sudo apt-get update -y
sudo apt-get upgrade -y
 
## Logfile Eintrag (wenn nicht benötigt, dann # davor setzen)
echo d=$(date +%y-%m-%d_%H:%M:%S) | sudo tee -a /home/updatelog.txt
#

Strg-x, y, Enter

chmod 700 updatescript.sh

Zum Aufruf des Scriptes folgenden Befehl eingeben:

./updatescript.sh

Unter /home/updatelog.txt kann man den Zeitpunkt der Updates einsehen. Mein erster Eintrag sieht folgendermaßen aus:

// Updates mit updatescript
d=24-01-21_16:27:51

Strg-x zum Beenden.

exit

Cronjob für die automatische Aktualisierung einrichten:

Als root anmelden:

su
crontab -e

Folgendes am Ende der Datei einfügen:

0 2 * * * ~/scriptfiles/updatescript.sh >/dev/null 2>&1
#

STGR-x, y, Enter

Jetzt wird täglich 02:00 Uhr das Update-Script gestartet.

Täglich 02:10 Uhr wäre dann:

10 2 * * * ~/scriptfiles/updatescript.sh >/dev/null 2>&1
#

STGR-x, y, Enter

Möchte man nur einmal pro Woche am Montag updaten, dann:

0 5 * * 1 ~/scriptfiles/updatescript.sh >/dev/null 2>&1
#

STGR-x, y, Enter

Oder nur am 1. des Monats um 05:00 Uhr:

0 5 1 * * ~/scriptfiles/updatescript.sh >/dev/null 2>&1
#

STGR-x, y, Enter

exit

Quelle: https://wiki.ubuntuusers.de/Cron/

Erstelle eine Website wie diese mit WordPress.com
Jetzt starten