Frage

Ich mag ein Web-basierte Front-End bauen meine Linux-Box zu verwalten / verwalten. Z.B. Ich möchte in der Lage sein, Benutzer hinzufügen, verwalten Sie das Dateisystem und all diese Art von Dingen. Betrachten Sie es als cPanel-Klon, aber mehr für Systemadministrator eher, dass Web-Admin.

Ich dachte über einen Service, der auf meiner Box läuft und das führt alle Systemebenen Aufgaben. Auf diese Weise kann ich eine klare Trennung zwischen meinem Web-basierten Front-End und der eigentlichen Logik. Die Server-Seiten können als telefonieren zu meinem Fachserver oder Warteschlangen Aufgaben auf diese Weise. Allerdings bin ich nicht sicher, ob dies der beste Weg, um dies zu realisieren sei.

Ich denke, eine weitere wichtige Frage wäre, wie würde ich mit Sicherheit beschäftigen, wenn so etwas wie dieses Gebäude?

PS:. Dies nur als Freizeitprojekt und Lernerfahrung, damit ich in bestehenden Lösungen nicht interessiert bin, die eine ähnliche Sache tut

War es hilfreich?

Lösung

Haben

den spezialisierten Service-Daemon läuft als eigenständige Benutzer - nennen wir es ‚managerd‘. Richten Sie Ihre / etc / sudoers-Datei, so dass ‚managerd‘ ausführen kann, um die verschiedenen Befehle, die Sie wollen, dass es in der Lage sein zu laufen, als root ohne Passwort.

Haben Sie den Web-Server drop „Trigger“ Dateien, die die Befehle enthalten, die in einem Verzeichnis auszuführen, Modus ‚770‘ mit einer Gruppe, die nur die Web-Server-Benutzer und ‚managerd‘ sind Mitglieder. Stellen Sie sicher, dass ‚managerd‘ überprüft, ob die Dateien haben die richtige Eigentum, bevor der Befehl ausgeführt wird.

Stellen Sie sicher, dass die Web-Schnittstelle Seite ist gesperrt - es HTTPS nur überfahren, eine Authentifizierung erforderlich, und wenn alles möglich, setzen Sie in IP-spezifische ACLs, so dass Sie nur aus bekannten Standorten zugreifen können, im Voraus.

Andere Tipps

Ihre Lösung scheint wie eine sehr vernünftige Lösung für das ‚root‘ Thema.

Ein paar Vorschläge:

  1. Die Bindung des ‚Fachdienst‘ als auch auf localhost würde helfen, um sicherzustellen, dass Anfragen nicht von außen vorgenommen werden.
  2. Überprüfen Anfrage Anruffunktionen, die die Aktionen durchführen und nicht direkt auf dem Dienst voll uneingeschränkten Zugang geben. So Aufruf einer Funktion "addtogroup (Benutzer, Gruppe)" anstelle eines generischen "perform (Befehl)".
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top