Skip to content
View in the app

A better way to browse. Learn more.

Froxlor Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Volles Management via Froxlor aber DNS und Mail via API

Featured Replies

Guten Tag zusammen

gab es in der Vergangenheit schonmal Ambitionen, Froxlor so zu erweitern, dass zwar sämliches Management für die Kunden via Froxlor als zentrale Plattform möglich ist, Mail und DNS jedoch nicht auf dem Server laufen sondern extern und von Froxlor nur via API verwaltet werden?

Konkreter Use-Case:

Wir haben für unsere Kunden ein hervorrangend funktionierendes Mail System gebaut. Das läuft seit vielen Jahren stable, ist topaktuell gewartet und bekommt gaaanz viel Liebe. Unsere DNS Server sind genauso. Fully Automated, Single Source of truth aus Netbox via Webhook automatisierte Deployments auf verschiedene Authoritative NS. Was fehlt nun fehlt ist Kunden einen Selfservice für das Hosting und DNS. Mail existiert bereits ein selfservice, soll aber in Zukunft via API gesteuert werden um so dem Kunden eine zentrale Möglichkeit zu bieten seinen Kram zusammenzuklickern. API auf Mailserver Seite ist bereits vorhanden.

Ich bin fit mit PHP und mache mit Gedanken wir man das mit Froxlor umsetzen könnte. Bevor ich aber damit anfange irgendwas spezifisches zu bauen, wäre es doch cool, wenn es was generisches wäre, was auch der Community zugute käme.

Daher meine Frage ob es in der Vergangenheit oder auch aktuell da schonmal Ambitionen/Gedanken/PoC's gab. Wie steht das Froxlor Team dazu?

Best

shcrypt

naja du könntest dir eigene cronjobs/cli scripts in froxlor erstellen die mit den infos aus der froxlor-datenbank deine APIs füttern

  • Author

Hallo @d00p

Das ist klar. Es würde dann aber keinen generischen Zweck mehr erfüllen weil die WebUI Elemente kaum oder nicht sehr intuitiv vorhanden wären. Ich dachte - im Falle einer generischen Lösung - an so etwas wie die Möglichkeit statt Bind oder PowerDNS einen External Service auswählbar zu machen, mit dem man dann die API Endpoints konfigurieren kann. Im Moment setzt ja Froxlor voll und ganz auf integrierte Services.

Mit Script-Magie lässt sich viel umsetzen, das ist klar. Wozu dann aber noch eine UI für Bind, Postfix und Dovecot?

dann müsste man "module" für "external service" entwickeln...wurde bisher nicht gemacht weil es eine endlose zahl an anbietern gibt und gefühlt jeder einen anderen nutzt.

und wozu eine UI? Würde behaupten das die wenigstens "End-User" eine API "irgendwie" implementieren wollen - dachte genau darum geht es? Und die "script-magie" löst doch die UI nicht ab - ist doch jetzt schon genau das was froxlor macht - du klickerst in der UI und der cronjob generiert entsprechende configs...das ist quasi Sinn der Sache...

Wenn du es nur für dich willst, mach neben Bind und PowerDNS einfach einen weiteren Dns-Dienst - implementier da deine API und gut is...wenn du es "allgemein" willst, so dass jeder Kunde seinen eigenen DNS-Anbieter irgendwie hinterlegen kann hast du ordentlich was vor :) es gibt wie gesagt eine Vielzahl an Registraren und API Schnittstellen

  • Author

Oh ne da hast du mich falsch verstanden. Das wäre ja nicht für die Kunden zum einstellen :D Ohje stell dir vor...
Ne Es ging mit um das Admin Setup. Ich fände es schön, wenn man nicht nur zwischen Bind und PowerDNS wählen könnte sondern im Setup auch einen externen Dienst konfigurieren kann. Bereits von Haus aus.

grafik.png

Im Prinzip ginge es nur hierrum.

ja und welcher sollte das sein? Es gibt ETLICHE

  • Author

Mal als Beispiel, wenn wir bei DNS bleiben:

Ich enable in den Settings den Nameserver, erlaube DNS Editor, etc etc
Danach muss ich ja den Config generator laufen lassen. Hier müsste die Möglichkeit bestehen den DNS Service in Froxlor als "Database only" zu konfigurieren, denn alle anderen Options installieren mir Bind oder PowerDNS, was ja hier nicht gewollt ist. Entweder also "Database only" und in der Doku schreiben, dass man halt den Rest von Hand machen muss - oder - eleganter die Option "API Service". Hierfür sollte dann in den Nameserver Settings ein Form sein, mit dem ich die APIs definieren kann. Im Endeffekt braucht es nur 2-3 Stück:
GET records von der externen Source (sind ja sowieso immer an eine Domain gebunden)
POST oder PUT records zur externen Source
und höchstens noch nen optionalen wie Reload oder was. Zudem Ggf. ein Feld für Authentication info
Und dann hast du's eigentlich schon. Der Admin muss das halt einmal konfigurieren, kann aber das komplette DNS management in Froxlor nutzen ohne Bind/PowerDNS oder so installieren zu müssen. Welche APIs er braucht ist ja für Froxlore irrelevant. Das Backend called dann einfach die APIs mit den entsprechenden Placeholdern wie Domain, Recorddata und wenn die externe API das erlaubt noch Comment oder was weiss ich. Die Placeholder kann man vorher definieren und bei der API Konfiguration muss der Admin dann entsprechend seines externen Services dann die API selbst zusammenbasteln und in Froxlor eintragen.

  • Author

Öffnet ein User den DNS Editor, werden via API seine Records abgefragt (entweder synchron oder async via Cron und dann aus der DB)
Erstellt der User einen Record oder bearbeitet er einen wird das als task an die DB gegeben und ein generischer Cron ruf die konfigurierte API auf, ersetzt die Placeholder mit der Data und curled den an den Endpoint.

na wenns doch so einfach geht, erstell doch einen Pull-Request auf GitHub :) Contribution ist immer gern gesehen

  • Author

Genau so reagieren wir bei unserem OSS Projekt auch ;-) haha
Mir ging es hier jetzt primär darum ob sowas überhaupt die Chance hätte nach Upstream gemerged zu werden. Denn wenn du sagst "neee wir wollen eigentlich fix bei embedded DNS/Mail bleiben", mach ich mit die Mühe nicht und schuster was quick and dirty für uns zusammen. Ich find sowas aber persönlich nicht sehr nachhaltig, möchte mir aber auch nicht unnötig Arbeit machen )

ja wenns ordentlich gemacht ist und funktioniert ist das doch ne feine sache ...aber ja, wie du schon richtig sagst, is das OpenSource und kein "Feature bestellen". Also, klar gerne, wenn du da was reißen willst - wie gesagt, Contribution ist gern gesehen vorallem wenn andere auch was von haben - ist ja schließlich der Grundgedanke. Du kannst dafür auch gern im Discord vorbeischauen und wir unterstützen wo es geht

  • Author

Hatte auch nie die Absicht ein Feature zu "bestellen" D Hab dir mal eine PN geschickt mir ein paar Zusatzinfos

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.