Geben Sie anderen Benutzern eingeschränkte Kontrolle über Ihren Raspberry Pi-Webserver, um Routineaufgaben auszuführen.

Wenn Sie einen Raspberry Pi als Heimserver betreiben, ist es wahrscheinlich, dass auch Freunde und Familie auf seine Dienste zugreifen. Gelegentlich müssen sie einige Routineaufgaben ausführen, die eine eingeschränkte Kontrolle über den Server erfordern.

OliveTin ist eine selbst gehostete App, auf die sie über einen Webbrowser zugreifen können, um von Ihnen vorgegebene Befehle und Skripte auszuführen.

Warum OliveTin auf Raspberry Pi verwenden?

Die Einplatinencomputer der Raspberry Pi-Serie eignen sich hervorragend als leichte Heimserver, und das ist relativ einfach Richten Sie einen Raspberry Pi-Webserver ein.

Neben dem Hosten von Websites und Blogs ist Ihr Raspberry Pi kann Fotogalerien hosten, Kochbücher und Online-Büropakete. Du kannst Streamen Sie Filme und Sendungen mit Jellyfin auf Ihren Fernseher, oder Hosten Sie selbst eine Hörbuchbibliothek mit Audiobookshelf.

Sie sind auch nicht auf die Anzahl der Benutzer beschränkt, die Sie haben können. Wenn Sie also nicht alleine leben, teilen Sie den Zugriff auf Ihre Raspberry Pi-Dienste wahrscheinlich mit anderen Mitgliedern Ihres Haushalts.

Server müssen wie alle anderen Computertypen gelegentlich gewartet werden. Möglicherweise müssen Ihre Benutzer dies tun bestimmte Dienste starten oder stoppen, Stellen Sie eine Verbindung zu einem VPN her, Sichern Sie Dateien auf Raspberry Pi, oder Überprüfen Sie, ob Netzwerkprobleme vorliegen.

Wenn Ihre Familie und Mitbewohner es sind mit der Linux-Befehlszeile vertrautund Sie darauf vertrauen, dass sie Ihr System nicht versehentlich oder absichtlich blockieren, können Sie darüber nachdenken, ihnen auch ihre eigenen SSH-Anmeldeinformationen zu geben Sudo-Gruppenmitgliedschaft, sodass sie diese Aufgaben ausführen können, ohne Sie zu stören.

Es ist ein verlockendes, aber gefährliches Unterfangen, und wenn etwas schief geht, müssen Sie es reparieren. Mit OliveTin können Sie Routinebefehle definieren, die andere Serverbenutzer möglicherweise regelmäßig ausführen müssen. Sie können dann einen Webbrowser öffnen und eine Schaltfläche drücken, die den Befehl auf Ihrem Pi ausführt – ohne jemals die Befehlszeile berühren zu müssen.

So installieren Sie OliveTin auf Raspberry Pi

Der einfachste Weg, OliveTin zu installieren, ist die Verwendung von Docker Compose. Wenn Sie Docker und Docker Compose noch nicht auf Ihrem Raspberry Pi installiert haben, lesen Sie unseren wichtigen Leitfaden So installieren Sie Docker und Docker Compose unter Linux.

Stellen Sie eine Verbindung zu Ihrem Raspberry Pi-Server her Sichere Shell (SSH):

ssh pi@dein-lokale-PI-IP-Adresse

Erstellen Sie ein neues Verzeichnis für OliveTin und verwenden Sie das CD Befehl, um hineinzugehen:

mkdir olivetin && CD Olivetin

Verwenden Sie den Nano-Texteditor, um eine neue Docker Compose-Datei zu erstellen:

NanoDocker-Compose.yml

Kopieren Sie Folgendes und fügen Sie es ein:

Ausführung: "3.5"
Dienstleistungen:
Olivetin:
Containername: Olivetin
Bild: Jamesread/Olivetin
Benutzer: root
Bände:
- ~/olivetin:/config
- /var/run/docker.sock:/var/run/docker.sock
Häfen:
- "1337:1337"
Neustart: sofern nicht gestoppt

Netzwerke:
Netz:
Abschnitt:
extern: WAHR

Jetzt speichern und Nano mit beenden Strg + O Dann Strg + X.

Bevor Sie OliveTin zum ersten Mal ausführen, müssen Sie eine Konfigurationsdatei erstellen. Hier definieren Sie die Befehle, die Benutzer ausführen sollen. Geben Sie zunächst Folgendes ein:

berührenconfig.yaml

Verwenden Sie OliveTin, um Ihren Benutzern eingeschränkte Serverkontrolle zu geben

Geben Sie in Ihrem Terminal Folgendes ein:

docker-compose up -d 

Dieser Befehl ruft Docker Compose im getrennten Modus auf. Docker Compose lädt die Bilder für OliveTin herunter und richtet Container ein. Dieser Vorgang kann einige Zeit dauern. Wenn Sie zur Eingabeaufforderung zurückkehren, überprüfen Sie, ob alles korrekt läuft:

Docker-Compose ps

Öffnen Sie einen Browser und navigieren Sie zu Ihre-pi-lokale-IP-Adresse: 1337. Sie sollten eine graue Webseite mit der OliveTin-Fußzeile sehen. Sie können jetzt mit der Definition von Befehlen für Ihre Benutzer beginnen.

Zurück im Terminal verwenden Sie nano, um die zuvor erstellte Konfigurationsdatei zu bearbeiten:

Nanoconfig.yaml

Die Syntax ist einfach und Sie können den Namen der Dienste und die auszuführenden Aktionen ähnlich wie im folgenden Beispiel definieren:

Aktionen:
- Titel: „Server neu starten“
Shell: Neustart

- Titel: „Ping Netflix“
Hülse: KlingelnNetflix.com

- Titel: Apache neu starten
Symbol: "🏁"
Shell: Sudo Service Apache2 Neustart

Die title Feld ist der Titel, den Benutzer sehen können, während der Befehl folgt Hülse: ist der Befehl, der tatsächlich auf Ihrem Raspberry Pi ausgeführt wird.

OliveTin unterstützt Unicode-Symbole, und Sie können den HTML-Code dieser im angeben Symbol Abschnitt. Alternativ können Sie die vollständige URL eines Bildes festlegen, das Sie verwenden möchten. Zum Beispiel:

Symbol: '<Bildsrc = " https://www.makeuseof.com/public/build/images/muo-logo-full-colored-light.svg"Breite = „81px“/>'

Während unsere Konfiguration Beispiele enthält, die den Raspberry Pi neu starten, Apache neu starten und Netflix anpingen, sind den Befehlen, die Sie angeben können, wirklich keine Grenzen gesetzt. Sie können Benutzern eine Schaltfläche zur Verfügung stellen, mit der Filme von einem Verzeichnis in ein anderes kopiert, schnell gelöscht und gelöscht werden können Überschreiben Sie bestimmte Verzeichnisse oder erstellen Sie einen Kill-Switch, der Ihre Speichergeräte mit einem verschlüsselt Zufallsschlüssel.

Wenn Sie mit Ihrer Konfiguration zufrieden sind, speichern Sie die Datei und beenden Sie nano, indem Sie drücken Strg + O Dann Strg + X.

Alle durch Tastendrücke erzeugten Standardausgaben werden protokolliert. Sie können die Protokolle anzeigen, indem Sie auf drücken Protokolle Schaltfläche oben rechts. Mit OliveTin können Sie Benutzern auch erlauben, über die Weboberfläche Befehle, sogenannte Argumente, zu erteilen – entweder über ein Textfeld oder über Dropdown-Optionen.

Aufgrund der Gefahr, die damit verbunden ist, dass unerfahrene Benutzer privilegierte beliebige Befehle direkt an Ihren Raspberry Pi-Server erteilen, können Sie die Art der von OliveTin akzeptierten Argumente einschränken.

Zum schnellen Nachschlagen sind die Typen:

Typ

Akzeptierte Werte

very_dangerous_raw_string

Wie der Name schon sagt, kann der Benutzer einen beliebigen Text oder Befehl eingeben und ausführen lassen

int

Jede ganze positive Zahl

ASCII

Beliebige Zeichen oder Zahlen, aber keine Leerzeichen oder Satzzeichen

ascii_identifier

Für DNS und ähnliches

ascii_sentence

a-z, 0-9, mit Leerzeichen, . Und ,

URL

Eine Webadresse

Eine Textfelddefinition in Ihrem config.yaml Die Datei ist wie folgt formatiert:

Aktionen:
- Titel: Echo etwas zur Befehlszeile
Symbol: "⛔"
Hülse: Echo {{ Nachricht }}
Argumente:
- Name: Nachricht
Typ: very_dangerous_raw_string

Das Textfeld wird angezeigt, wenn jemand die entsprechende Schaltfläche drückt, und ermöglicht es jedem Benutzer in Ihrem lokalen Netzwerk, beliebigen Code über den Browser auszuführen. Das ist insgesamt keine gute Idee.

OliveTin erleichtert Benutzern das Ausführen grundlegender Aufgaben auf Ihrem Raspberry Pi-Server

Der Raspberry Pi ist die perfekte Home-Server-Plattform für Hosting-Dienste, die Ihre Familie nutzen kann, und OliveTin erleichtert ihnen die Durchführung einfacher Wartungsarbeiten, ohne Sie zu stören.

Es gibt Tausende von selbst gehosteten Projekten, die Sie auf dem Raspberry Pi ausführen können und die Ihrem Haushalt zugute kommen. Recherchieren Sie und finden Sie heraus, für welche Dienste Sie bezahlen, die Sie stattdessen selbst hosten könnten!