Review: @UBNT Ubiquiti #UniFi #USG 3P – Tut das Not?

Über meinen Willen, sich damit anzufreunden und mein Scheitern

Vor einiger Zeit hatte ich ja schon über die UniFi AP’s und deren Switches geschrieben und dass ich damit sehr zufrieden bin (Link). Mit Verlaub, es war auch eine anbetende Lobhudelei auf den UniFi Controller, jenen ich wirklich in mein Herz geschlossen habe. Da ich dazu neige, Dinge zu komplettieren, musste auch irgendwann eine USG her. Und es gab eine Menge Vorschusslorbeeren. Ich kenne ja die EdgeRouter. Und ich kenne den UniFi Controller. Und da müsste das mit den USG’s doch erwartungsgemäß „super“ sein. IPSec soll sie ja können, dann könne ja nix schiefgehen. Das war meine Annahme. Ja, von wegen…

Ich kann – aufgrund der jüngsten Vorfälle in 2021/03 – nicht mehr zur Nutzung von UBNT-Produkten raren (Link).

tl;dr Muss man das Ding haben? Nö. Here’s why:

Zugegeben, es war mir klar, dass die USW gegen einen Lancom schwer haben würde. Selbst eine ASA kann in diesem Testfeld da höchstens mal die Rückleuchten sehen. Ziel war eher der „Wunsch“ nach dem  „geht’s auch günstiger“. Ich will wissen, kann ich das Ding auch meinen Kollegen und Freunden empfehlen. Wenn ja, kann ich das supporten? Ja, sicher hat es mich auch geärgert, das große Loch auf der Landingpage des UniFi Controllers. Ganz klar eine Verkaufsförderungsmaßnahme. Ich will mal festhalten: Es war bei mir tatsächlich die Annahme vorhanden, UniFi könne Gateway so gut, wie deren WiFi in der aktuellen Generation oder eben deren Edgerouter. Man kann sich ja irren.

Wieder kaufte ich bei OMG und es wurde zügig und ordentlich verpackt geliefert. Nach der zweiten Lieferung ist bei OMG übrigens auch Packstation möglich, möchte ich anmerken. Verpackt wie alle Produkte von UniFi, mitsamt Montagematerial und einer kleinen Broschüre zum Controller kam das schicke Stück Hardware. Es besitzt das gleiche Leuchtelement wie die Switches, will aber eine Sonderbehandlung in Sachen Einrichtung, dazu gleich mehr.

Wer so ein Ordnungsfetischist wie ich ist, und für jede Geräteklasse eigene Reservierungsbereiche im Netzwerk festlegt (inzwischen haben sich rd. 40 Clientdevices bei mir angefunden und rd. 10 Infrastrukturelemente), der mag gewisse Dinge gar nicht, besonders wenn jemand daher kommt, und meinen Adressraum durcheinander bringt. Ich liebe meine Ordnung.

Umso erstaunter war ich, dass es bei UBNT ein Dokument für den Zuzug eines Neubürgers im Netzwerk gibt, mit dem vielsagenden Titel „How to Adopt a USG into an Existing Network“ – Link. Und der Jargon ist der von EdgeOS tatsächlich bekannte Syntax. Frei nach Adam Riese „committe“ ich meinen Satz an Netzwerkinformationen für den neuen Bürger in meinem Netzwerk. Funktioniert denn wirklich alles so, wie UniFi sich das gedacht hat?

Bekanntes aus den EdgeMax Devices

Nein, denn das Dokument zielte auf einen gewissen Mindestfirmwarestand, meiner lag jedoch darunter. Und so passierte, was passieren musste: Die USG broadcastete Blödsinn, direkt nach Adoptionsversuch. Der Leser dieses Artikels kann sich bestimmt meinen Hals vorstellen, nach Korrektur des Problems mal eben 50 Geräte im Netzwerk einzusammeln und in den Controller der Reihe nach sortiert einzupflegen. Ich war so dermaßen damit beschäftigt, Ordnung in mein Netzwerk zu bekommen, dass mir weitere Probleme der UniFi USG gar nicht aufgefallen sind.

Ordnungsliebe

Bevor einem dieser Blödsinn vor die Füße fällt (Firmwarestand ist bei Neukauf generell unbekannt), rate ich dazu, den DHCP auf der USG zu deaktivieren, und die Kiste danach definitiv nicht neu zu starten – zumindest nicht, bevor der Controller die USG selbst durchkonfiguriert hat. Das ist jetzt ein wenig tricky, Controller und USW vom Rest des Netzwerk abzukapseln, aber notwendig, damit exakt dieses Chaos und Durcheinander ausbleibt, welches ich erlebt habe: Ein Commit + Save hilft für einen Neustart hier offenbar nicht, nach Neustart ist alles Gedachte trotzdem vom Winde verweht. Der DHCP ist sofort aktiv, auch wenn die USG noch nichtmal mit einem Controller bedampft wurde und zerwürfelt umgehend das komplette Netzwerk – Also: Obacht!

Das Ding mit dem DNS

Da wäre dann auch das Beispiel, dass die USG gar keinen sinnvoll nutzbaren DNS besitzt. In einigen Fällen hat man ja Router an Infrastrukturen bereitgestellt, jene sich zu 100% auf externe Infrastruktur verlassen. Das ist bei einem SOHO-Device meines Erachtens sogar Stand der Technik, denn einen Satz Blech mit drauf laufenden Containern oder eben VM’s mit BIND oder Microsoft DNS wird man allerhöchstens bei Nerds oder Bastlern auf deren Raspberrys finden – und die sind relativ selten.

Gerade in solchen Szenarien pflegt man ja entsprechende Einträge für bedingte Weiterleitungen oder Hosts in die Datenbank des Gateways, damit extern differente Ziele intern direkt auffindbar sind, z.B. eine Nextcloud-Instanz oder eben der UniFi Controller selbst oder aber die Domäne des Unternehmens, sofern kein RODC mit Branchcache vor Ort ist. Jetzt kann man selbstverständlich darüber streiten, ob die Aufgabe des Routers tatsächlich jene ist, mir ist jedoch bislang kein Gateway untergekommen, jenes diese Aufgabe nicht beherrscht, ausgenommen Berliner Fritten, andere Mediamarkt Heimplasten oder eben Carrierplaste. Das führte im übrigen auch zu jenem lustigen Spektakel, welches ich anfangs erwähnt hatte.

Jetzt lässt sich tatsächlich mit dem Dokument „How to further customize USG configuration with config.gateway.json“ – (Link)  ein Satz an Hosts permanent einpflegen, jedoch definitiv keine bedingten Weiterleitungen, wie es jede dahergelaufene Juniper, ASA, Bintec, … oder halt wirklich jeder Lancom beherrscht. Da ich gerne Resultate sofort habe, ist mir jenes Unterfangen ein Dorn im Auge. Da ich bei json dann auch gerne mal „Semikolon“ falsch setze; hat mir das noch weniger bis überhaupt nicht gefallen, was sicherlich eine subjektive Beleuchtung sein mag, eine persönliche Animosität sozusagen.

Dieser DHCP Server ist…

… gelinde gesagt „strunzdoof“. Problematisch hierbei auch, dass DNS mit jenem auch mal gar nicht sprechen mag. Dieser spartanische DHCP beschränkt sich in seiner Funktionsweise darauf, im Netzwerk vorhandene Geräte auf feste IP’s zu setzen. Ausgenommen Ubiquiti, denn jene werden über dieselbe GUI im Controller mit statischen IP’s versorgt, jene fremde Devices mit festen DHCP-Reservierungen bedampft.

Ebenso habe ich die Möglichkeit ein oder zwei Optionen im Netzwerk zu broadcasten, wohl aber nicht im Vorfeld in Form einer Liste vorzupflegen oder anhand von Regeln Herstellerklassen in definierte Bereiche des Netzes zu schieben. Blöd ist, dass der in der USG eingebaute DNS davon sowieso nix weiß. Dann kann ich die lokale Domäne extern sowieso doppelt pflegen. Ich möchte mal anmerken, dass dieser jene, über den ich gerade spreche, in seiner Intelligenz und Funktion ähnlich dumm ist, wie jener dieser Plastederivate aus Berlin.

Rudimentäres

Dann ist da noch die Sache mit IKE/IPSEC

Mal ehrlich, wenn ich VPN draufschreibe, erwarte ich auch, dass VPN drin ist. Nicht nur halb, sondern ganz. Ich habe so rd. 15 Gateways, die ich immer mal wieder erreichen möchte, einige davon permanent. S2S mache ich zu ASA’s, Lancoms, Junipers und Sophos ASG. Die Features der in der USG gebotenen Tunnelbuddelanlage sind in der GUI in Sachen IPSEC derart mau, dass deren spartanischen Features höchstens dazu benützt werden können, mit baugleichen USG’s zu sprechen. Ansonsten gibt’s L2TP „Einwählfeatures“ und natürlich OpenVPN. Hat man jetzt zwei USG’s unter Cloudkontrolle bei Unifi mag das sicherlich ganz toll sein, dass beide Hütten „klickibunti“ miteinander verheiratet werden können – und das tatsächlich ohne großartig irgendwas zu konfigurieren, doch fehlt dann alles Andere für den Rest.

Ich käme bei meinen doch nicht wenigen Zielen, die ich erreichen muss, noch nicht mal über Phase 1 hinweg:

Denn statisches IPv4 wird immer seltener und ist dann eben auch mal nicht da. Alles andere wäre theoretisch auch wieder möglich, da wir ja „edgeOS“ drauf haben, wird dann aber (sofern man keine config.gateway.json zurechtdengeln will) keine Sache von Dauer sein. Mir ist das Ganze ehrlich gesagt so dermaßen mau, dass ich mich gerade wirklich frage, ob ich denn auch noch Strongswan in eine VM bürste, um hier VPN zu machen, oder es gleich sein lasse. Denn da wäre auch noch…

Hinter „VPN- Endgerät“ verbirgt sich im übrigen ein klassischer, genatteter PPTP-Client. Wir haben jetzt 2018, möchte ich anmerken und dieses Protokoll ist imho alles andere als sicher. Auch das gebotene L2TP ist so ein Wackelkandidat, einzig OpenVPN möchte man hier sehen, denn das Andere ist aus meiner Sicht eher wenig vertrauenserweckend.

… Die Sache mit der Firewall

Ja, ist eingebaut. Und ich hatte mich schon so drauf gefreut, da ich ja „edgeOS“ draufhabe. Rein theoretisch könnte ich mir damit sogar schon per Cronjob aus einem Honeypotprojekt oder von Spamhaus Quellnetze und QuellIP’s in eine „bösejungs-gruppe“ eintüten (hatte ich tatsächlich geträumt). Doof nur, dass ich in dem Bereich auf der USG nix schreiben darf, wo ich möchte. Es ginge zwar, wäre aber mal wieder nichts Persistentes und müsste dann nach einem Neustart händisch neu gemacht werden, da ich zumindest im jetzigen Firmwarestand auch keine Cronjobs hinzufügen darf.
Nunja, Regeln lassen sich tatsächlich über den Controller anlegen. Die Sprache, die UniFi da spricht, ist zwar anders, aber auch zu verstehen:

Warum ich für den Inter-VLAN-Betrieb dann aber zwei Regeln anlegen muss, ist mir schleierhaft. Nun, allgemein baue ich eine Regel und teste dann sofort, ob sie denn funktioniert und/oder ob ich mir die Tür zugeschlagen habe – ich bin ja auch nur ein Mensch. Ebenso möchte ich mit der Deny-All Strategie generell erstmal alles zumachen und dann selektiv öffnen. Damit ich das tun kann, brauche ich wenigstens irgendeine komfortable Anzeigemöglichkeit der Firewallevents, wie ich sie bei anderen Gateways gewohnt bin.

Bei der USG habe ich – sofern ich meine zuvor genannten Qualitätsansprüche berücksichtige – eben mal nichts. Ich bin tatsächlich blind. Das obligatorische WTF erspare ich ihnen. Auch wenn Security drauf steht. Aber, es gibt hier einen „Feature-Request“, jener offenbar einer der beliebteren bei Ubiquiti ist -> Link.

Weiterhin gibt es in Ansätzen DPI, dennoch kann ich den Verkehr im jetzigen Firmwarestand danach nicht filtern. Was bringt mir dann also DPI, wenn es nur der Anzeige von Tortengrafiken dient?

Richtig, genau genommen nichts. Nada. Jetzt mal ehrlich, wir sprechen hier über eine Firewall („Security Gateway“) und ich kann noch nicht einmal Firewall-Events sehen? Wie bitte was? Bin ich tatsächlich im richtigen Film? Offensichtlich. Nun denn. Bei der Beurteilung könnte man folgenden Satz in Sachen „Security“ im Zeugnis stehen lassen: Sie waren bemüht, die an sie gestellten Anforderungen zu verstehen.

Weitere Unstimmigkeiten

Ja, wenn ich denn schon VLAN durchpuste und für den Anwender alles automatisch mache, dann aber in meinem „Ich-mache-alles-automatisch-Wahn“ Punkte vergesse, wie z.B. das Inter-VLAN-Routing für die Gastportalanmeldung, könnte passieren, dass sich der Kunde schonmal am Kopf kratzt und gleich mal den Sinn der kompletten USG in Frage stellt. Ebenso schlug das Upgrade über den Controller fehl. Offenbar war meine Firmware zu alt, um aktualisiert zu werden. Der typische Endanwender wird da eher die Konsole scheuen wollen.

Anschlussvielfalt

Die USG kommt mit 3 nutzbaren Ports (Konsole, Cisco-Seriell kompatibel, ein ETH-WAN, ein -LAN und ein -VOIP Interface), letzter Port ließe sich theoretisch für ein Fallback-Device umkonfigurieren, ist so aber nicht vorgesehen. Ich benötige zudem immer ein Device zusätzlich, welches mit dem Netz kommuniziert. In DSL-County wird’s entweder ein Draytek Vigor 130 oder ein Zyxel VGM1312-B30A sein. Nachvollziehbare Entscheidung auf der Kostenseite, den wackeligen Modemteil außen vor zu lassen, doch schön ist anders. Ihr müsst also irgendwas dazurechnen, was ihr Bridgemäßig davorhängen könnt – mindestens EUR 100 oben drauf werden auf dem Kalkulationszettel noch sein.

NAT-NAT machen bekanntlich nur Enten, habe ich im UniFi-Umfeld leider schon viel zu häufig gesehen. Eine Fritte vor einer USG ist da alles andere als schön. Ich selbst bediente mich mit der derzeit in quasi allen Foren empfohlenen Zyxel-Variante (VGM1312-B30A – !Achtung!, für Deutschland wird die Variante B30A benötigt) als Bridge. Es gibt im übrigen auch keinen USB-Port für ein LTE-Fallback. Bonding oder Balancing? Fehlanzeige.

Fazit

Sicherlich, oberflächlich allet janz schick, das Webinterface vom Controller endlich mal vollständig zu haben. Auch schick, mal zu sehen, wieviel Traffic ich denn so täglich mache, wieviel davon welche Anwendung ist und wieviel was wovon verbraucht. Sofern ich den Traffic, den ich habe, aber nicht lenken kann, bringen mir die schicksten Tortengrafiken (DPI) mal genau nüscht. Die ganzen Unstimmigkeiten sorgen dafür, dass sich ein minimal zwiespältiger Eindruck einstellt und man irgendwie ein schlechtes Gefühl bei der Benutzung bekommt.

Sicher, dahinter steckt EdgeOS. Man bekommt den Eindruck, dass sich dieses mächtige Werkzeug nicht so ganz in die UniFi-Landschaft einfügen will. Es sieht so aus, als ob man es „irgendwie“ versucht hat, dann aber vor einem Berg von Aufgaben in Schockstarre verfallen ist. In zukünftigen Versionen kann sich das sicherlich zum Guten ändern, ist momentan aber alles andere als ausgereift.
Negativ ist auch, dass sich der Eindruck der USG möglicherweise auf die anderen, wirklich sehr guten Produkte – z.B. die UniFi Switch- und AP-Serien überträgt. Ich halte das für suboptimal. Es ist unschön und ist bestimmt keine Werbung für die gesamte Ubiquiti Portfolio. Die Auswirkungen sind auch in den Foren von UBNT zu lesen.

Die Geschichte mit der USG ist für mich eher ein richtig nerviger Ausflug, den ich schöner erwartet hatte. Die USG selbst ist so ein wenig wie das „ungeliebte Kind“, „das schwarze Schaf“. Dabei könnte es mit viel mehr Liebe von den Eltern ein viel schöneres Leben haben.

Mit einem Lancom der xx81er Serie kann eine USG nicht mal im Ansatz mithalten. Diese Illusion ist verpufft. Für mich stellt sich jetzt die Frage will ich das wirklich? Also will ich hier jede Menge Debians bereitstellen und auch noch pflegen, für dringend notwendiges DHCP, BIND und Strongswan? Ich wäre wohl „vor die Pomp jeflitzt“, diesen Weg zu gehen. Schlauer ist man immer hinterher. Ich muss jetzt mal schauen, wie und ob ich das Ding zurück zu OMG bekomme. Im Moment ist mir so, als ob ich diese Erfahrung am liebsten nicht gemacht hätte. Es färbt nämlich auf die Schwesterprodukte ab. Leider.

UniFi USG ist vieles, aber eines bestimmt nicht: „Fertig“.

Irgendwie hatte ich es ja doch geahnt. Und hinterher ist man immer schlauer. Jetzt denken sicherlich einige von Euch, die rd. EUR 200 sind doch nicht so schlimm, und zurückschicken kann man’s ja immer noch. Die Zeit aber, die dafür draufgegangen ist, das Chaos im Adressraum zu beseitigen, nur um dann festzustellen, dass die Features, die ich von der Verpackung her in das Device „hineinillusioniert“ hatte, gar nicht drin sind, gibt mir niemand zurück. Dieses Ding ist allerhöchstens als Spielzeug zu gebrauchen. Für mehr nicht, so bitter sich das anhört. Hinzu kommt, dass die verlorene Zeit im Moment mal gerade alles andere als passend ist, denn privat geht’s bei mir gerade leider auch drunter und drüber. Nun denn, die Verärgerung der Tunnelpartner habe ich mit ein wenig Kaffee und sonstigen Bestechungen inzwischen überstanden und die wichtigsten Tunnel wieder offen, die ich brauche.

„…Das System sollte mit telegraphischer Kommunikation kompatibel sein“

Ich bin froh, dass bei mir wieder jemand seinen Dienst verrichtet, auf den immer Verlass war und ist – der Lancom 1781er. Sorry, Lancom. Soll so nicht wieder vorkommen. Mit manchen Devices ist es halt wie mit manch anderen Prinzipien: Räder erfinden sich schwer neu.

Die USG wurde mir nicht zu Testzwecken überlassen, sondern selbst angeschafft. Ich möchte anmerken, dass dieser Eindruck nicht zu anderen Schwesterprodukten von Ubiquiti UniFi passt! Zum Zeitpunkt der Tests ist die USW Firmware 4.4.18 eingespielt worden, Controller ist Stand 5.6.30. Die gelieferte Firmware war so alt, dass ein Upgrade nur über Konsole möglich war (Befehl „upgrade URI“).