Factory-Reset UAPs

Bei eingeschaltetem Gerät Reset-Button mit dünnem Gegenstand (Büroklammer, Bleistiftspitze, Mini-Schraubendreher) min. 5 Sekunden gedrückt halten (blaue LED geht aus, grüne LED wird hellgrün)

Default-SSH-Login

Parameter Wert
IP-Adresse DHCP / 192.168.1.20
Name ubnt
Passwort ubnt


Upgrade-Befehle

  rm /tmp/fwupdate.bin
  wget http://dl.ubnt.com/unifi/firmware/BZ2/3.7.58.6385/BZ.ar7240.v3.7.58.6385.170508.0942.bin -O tmp/fwupdate.bin
  syswrapper.sh upgrade2 &
  upgrade http://dl.ui.com/unifi/firmware/BZ2/4.3.21.11325/BZ.ar7240.v4.3.21.11325.200922.1739.bin


v4.3.24 (nur UAP ohne Pro)

https://dl.ui.com/unifi/firmware/BZ2/4.3.24.11355/BZ.ar7240.v4.3.24.11355.201207.1019.bin

v3.7.58 (nur UAP ohne Pro)

https://dl.ui.com/unifi/firmware/BZ2/3.7.58.6385/BZ.ar7240.v3.7.58.6385.170508.0942.bin
jüngste 3.x Firmware zum direkten Upgrade auf 4.x

UniFi Controller unter Raspbian (Stretch) installieren

1. Updates installieren

Wie üblich werden zunächst erstmal alle benötigten Updates installiert, um sicherzustellen, dass der Raspberry Pi auf dem neusten Stand ist.

  sudo apt-get update
  sudo apt-get upgrade

2. UniFi Quellen und Zugriffsschlüssel hinzufügen

Zunächst fügen wir die Linux-UniFi-Quelle von Ubuntu hinzu, da diese auch unter Debian/Raspbian funktioniert. Als nächstes brauchen wir den “dirmngr”, um den Zugriffsschlüssel abzuholen. Dieser erfordert allerdings apt-utilis, welche wir mit –fix-broken nachinstallieren. Danach können wir den Schlüssel abholen und anschließend nach einer erneuten Aktualisierung der Paketquellen auch UniFi installieren.

  echo 'deb http://www.ubnt.com/downloads/unifi/debian stable ubiquiti' | sudo tee -a /etc/apt/sources.list.d/ubnt.list > /dev/null
  sudo apt-get install dirmngr
  sudo apt-key adv --keyserver keyserver.ubuntu.com --recv C0A52C50
  sudo apt-get update
  sudo apt-get install unifi -y

Sollte es während der Installation von dirmngr oder der Abholung des Zugriffsschlüssels zu einer Fehlermeldung kommen, einmal die fehlenden Abhängigkeiten nachinstallieren. Dies kann wie folgt geschehen..

  sudo apt --fix-broken install -y

3. Java 8 installieren

Damit das Webinterface des UniFi Controllers lädt wird Java 8 benötigt. Dies installieren wir und fügen auch noch den Pfad von Unifi hinzu, damit das Webinterface starten kann.

  sudo apt-get install oracle-java8-jdk -y
  echo 'JAVA_HOME=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt' | sudo tee /etc/default/unifi > /dev/null

4. MongoDB deaktivieren

Da mit der Installation des UniFi Controllers auch die MongoDB installiert wird und diese bei Installation standardmäßig eine Default Datenbank aktiviert, welche dann permanent läuft, deaktivieren wir MongoDB.

  sudo systemctl disable mongodb
  sudo systemctl stop mongodb

5. Raspberry Pi neustarten

Damit nun alles funktioniert, einmal den Raspberry Pi neustarten.

  sudo reboot now

6. Verbindung zum UniFi Controller herstellen

Nach ein wenig Geduld, nach dem Neustart sollte man auf den UniFi Controller kommen… Indem man folgendes in der Browserzeile eingibt.

  https://IP-ADRESSE-DES-RASPBERRY-PI:8443

7. Zusatzinfos

Updates des UniFi Controllers können dann mittels “apt-get update” durchgeführt werden, dann werden immer die stabilen Versionen installiert.



Update / Rücksetzen des Passworts

1. Whois-Paket installieren
  $ sudo apt-get install whois
2. Generate new password using random salt.
  $ printf "mypassword" | mkpasswd --stdin --method=sha-512
  $6$LvF7R7Q3qo$bXFAWhbscrQ1rxYXF.Ut.iJ5I.59HBx8mpJnF3AayklAgX/izmh/Q16jG4aSlbI557QbwxnnV8LfkyqC0cZhc/
3. SSH-Login
  $ ssh unifi.example.org
4. mit MongoDB-Instanz verbinden
  $ mongo --port 27117 --shell --quiet
5. Datenbanken anzeigen
  > show dbs
  ace       0.001GB
  ace_stat  0.000GB
  local     0.000GB
6. Zur ace-Datenbank wechseln
  > use ace
  switched to db ace
7. admin-Konto anzeigen
  > db.admin.find()
  { "_id" : ObjectId("5a4552a24f0c66c01a730277"), "x_shadow" :    "$6$IeSrq0LS$14mN.UZ5yh2wXspXr.Ee6flD5vg5wRmMqgmnX9DL79u2o/9Z9EaBkLx2Di8OG.Gb0wq6Vy4wnEpg.7Istdfuu1", "name" : 
  "root", "email" : "mail@domain.tld", "time_created" : NumberLong(1514492578), "last_site_name" : 
  "default" }
8. Ersetzen der x_shadow-Variable mit Hash-Wert aus (2.)
  > db.admin.find({"name":"root"})
  { "_id" : ObjectId("5a4552a24f0c66c01a730277"), "x_shadow" :    "$6$LvF7R7Q3qo$bXFAWhbscrQ1rxYXF.Ut.iJ5I.59HBx8mpJnF3AayklAgX/izmh/Q16jG4aSlbI557QbwxnnV8LfkyqC0cZhc/", "name" 
  : "root", "email" : "mail@domain.tld", "time_created" : NumberLong(1514492578), "last_site_name" : 
  "default" }
9. Setzen von Username "admin" mit Kennwort "password"
  db.admin.update({name:"admin"},{$set:{x_shadow: "$6$9Ter1EZ9$lSt6/tkoPguHqsDK0mXmUsZ1WE2qCM4m9AQ.x9/eVNJxws.hAxt2Pe8oA9TFB7LPBgzaHBcAfKFoLpRQlpBiX1"}});