Server-Konsole

Über den Menüeintrag Server-Konsole können Sie aus dem opsi-configed heraus über eine SSH-Verbindung Aktionen auf dem opsi-Server auslösen. Klicken Sie auf den Eintrag, sehen Sie an erster Stelle, ob Sie bereits per SSH mit dem Server verbunden sind (Checkbox SSH-Verbindung direkt starten im Logindialog). Darunter finden Sie Einträge, um die SSH-Verbindungsdaten zu ändern und die vordefinierten Kommandozeilenbefehle zu bearbeiten, die der Menüpunkt opsi anzeigt. Fahren Sie mit dem Mauszeiger über einen Eintrag, um einen Tooltip einzublenden.

opsi-configed: Server-Konsole
Figure 1. opsi-configed: das Menü Server-Konsole

SSH-Verbindungsdaten

Sofern nicht anders konfiguriert, versucht opsi-configed für die SSH-Verbindung den angemeldeten Benutzer mit dem opsi-Configserver zu verwenden. Im Dialogfenster, das Sie über das Menü Server-Konsole / SSH-Verbindungsdaten öffnen, können Sie die Checkbox SSH-Schlüssel für Authentifizierung verwenden aktivieren und in den Feldern darunter einen SSH-Schlüssel auswählen. Ist für diesen eine Passphrase eingerichtet, tragen Sie diese optional im Feld darunter ein.

*opsi-configed*: SSH-Verbindungsdaten
Figure 2. opsi-configed: SSH-Verbindungsdaten

Alternativ können Sie SSH-Schlüssel und -Passphrase schon beim Start über die folgenden beiden Parameter angeben (siehe Abschnitt Startparameter):

  • --ssh-key <pfad-zum-schluessel>, z. B. --ssh-key /home/user/.ssh/id_rsa

  • --ssh-passphrase <passphrase>

Berechtigungen

Über Server-Host-Parameter (siehe Abschnitt Host-Parameter für den Server) können Sie steuern, welche der Menüpunkte sichtbar sind bzw. welche Funktionen der angemeldete Benutzer verwenden darf. Ist die opsi-Erweiterung Benutzerrollen aktiviert, können Sie die Berechtigungen für unterschiedliche Benutzeraccounts festlegen. Für neu angelegte Accounts gelten die Standardwerte.

Die folgenden Einträge gibt es:

user.{}.ssh.serverconfiguration.active
user.{}.ssh.commandmanagement.active
user.{}.ssh.menu_serverconsole.active
user.{}.ssh.commands.active

Sie bedeuten:

  • aktiviert das Menü der SSH-Verbindungseinstellungen (Default: false)

  • aktiviert die Bearbeitung von Menüeinträgen der Kommandozeilenbefehle (Default: false)

  • gibt den Hauptmenüeintrag Server-Konsole als solchen frei (Default: true)

  • schaltet alle SSH-Menüeinträge frei, die hinterlegte Befehle darstellen (Default: true)

Vordefinierte Befehle

Im Menü Server-Konsole / opsi stehen vordefinierte Kommandozeilenbefehle bereit, die folgende Aktionen ausführen:

  • Package-Updater: Installieren oder aktualisieren Sie Pakete mit dem opsi-package-updater; im sich öffnenden Dialog wählen Sie aus dem Drop-down-Menü Aktion entweder den Eintrag Pakete aktualisieren , Alle Repositorys auflisten oder Pakete installieren.

  • Paket-Installation: Installieren Sie opsi-Pakete mit dem *opsi-package-manager auf allen oder einzelnen Depots. Sie können den Pfad zum Paket angeben oder ein Paket aus dem Internet herunterladen.

  • Paket-Deinstallation: Wählen Sie aus einer Liste eines oder mehrere Pakete zur Deinstallation mit dem opsi-package-manager aus.

  • opsi-Paket packen: Geben Sie ein Verzeichnis auf dem Server an, in dem Dateien für ein opsi-Paket liegen. Über eine Schaltfläche können Sie die in der control-Datei gefundenen Versionen (Paket- und Produkt-Version) anzeigen und ggf. überschreiben. Über einen Klick auf Erweiterte Optionen blenden Sie Checkboxen ein, über die Sie Zsync- oder Md5-Dateien erstellen sowie die Rechte im Anschluss setzen. Die Schaltfläche Das neu erstellte Paket installieren ruft den opsi-package-manager auf.

  • Datei-Download: Laden Sie eine beliebige Datei aus dem Internet mit wget herunter und legen diese auf dem Server im Verzeichnis Ihrer Wahl ab.

  • Modules-Datei hochladen: Laden Sie eine Freischaltdatei für opsi-Erweiterungen zum Server hoch. Diese wählen Sie entweder auf dem lokalen Rechner aus oder laden Sie mit wget aus dem Internet herunter. Optional können Sie Zugangsdaten für den wget-Befehl eingeben.

  • opsi-Rechte setzen: Korrigiert die Zugriffsrechte von Dateien und Verzeichnissen auf einem opsi-Server und ruft dazu das Kommando opsi-set-rights auf.

  • opsi-Client-Agent verteilen: Um existierende Rechner als Clients in die opsi-Umgebung aufzunehmen, muss auf diesen der Client-Agent installiert werden. Wählen Sie hier die gewünschten Rechner aus; um den Befehl auf mehreren Clients gleichzeitig auszuführen, müssen die Logindaten auf diesen gleich sein.

Das Skript zum Deployen der Clients muss im Verzeichnis /var/lib/opsi/depot/opsi-client-agent liegen und opsi-deploy-client-agent heißen (siehe Kapitel Clients hinzufügen).

Einige Dialoge (z. B. opsi-Rechte setzen oder Paket-Installation) haben Buttons zur Auswahl von lokalen Dateien. Betätigen Sie die Schaltfläche Ermittle Unterverzeichnisse, um alle Verzeichnisse und Dateien aus dem angegebenen Pfad aufzulisten. Um weitere Ebenen mit einzubeziehen, klicken Sie den Button mehrfach.

Befehle definieren

Sie können über den Eintrag Befehle definieren auch eigene Kommandozeilenbefehle definieren, die sie dann über das Menü Server-Konsole erreichen.

Beachten Sie, dass nicht alle Linux-Distributionen dieselben Befehle bzw. Parameter verwenden. Stellen Sie als Administrator sicher, dass die Distribution für den opsi-Server die Kommandos unterstützt.
*opsi-configed*: Befehle definieren
Figure 3. opsi-configed: Befehle definieren

Sie können die folgenden Angaben im Dialog Befehle bearbeiten machen:

  • Menütext des Befehls: Der Menüeintrag muss eindeutig sein und darf nicht an anderer Stelle verwendet werden. Um einen Menütext zu ändern, löschen Sie den Befehl über das Icon mit dem Minuszeichen und erstellen dann einen neuen Befehl. (obligatorische Einstellung)

  • Übergeordnetes Menü: Legt fest, in welchem Menü der neue Befehl als Menüeintrag erscheinen soll. Lassen Sie das Feld leer, erscheint er automatisch im Menü Server-Konsole. (optionale Einstellung)

  • Beschreibung: Hinterlegen Sie hier eine Beschreibung, dann taucht sie als Tooltip-Text des Befehls auf. (optionale Einstellung)

  • Position im Menü: Die Position bestimmt die Reihenfolge (kleine Zahlen zuerst) der Menüpunkte insgesamt und damit innerhalb des jeweiligen Menüs. (optionale Einstellung)

  • Root-Rechte benötigt: Aktivieren Sie die Checkbox, wenn ein Kommando administrative Rechte benötigt. (optionale Einstellung)

  • Befehlsliste: Tragen Sie hier die Linux-Befehle ein, einen pro Zeile, um sie nacheinander aufzurufen. (obligatorische Einstellung)

  • Über das Drop-down-Menü Als Parameter in Befehl einfügen stehen verschiedene optionale Datenquellen für die Befehlsliste zur Verfügung:

    • Interaktive Eingabe: Parameter nicht fest vorgeben, sondern interaktive Eingabe in der Form <<<"Interaktive Eingabe">>>, wobei wir empfehlen, eine Beispieleingabe zu notieren.

    • Configserver

    • IP-Adressen der ausgewählten Clients

    • IP-Adressen der ausgewählten Depots

    • Namen der ausgewählten Clients

    • Namen der ausgewählten Depots

    • Optionen für Skript auswählen

    • Verbundener SSH-Server

Außer bei der interaktiven Eingabe kann die Rückgabe der Methoden formatiert werden, beispielsweise als durch Kommata voneinander getrennte Liste.
*opsi-configed*: Befehl ausführen, Parameterabfrage
Figure 4. opsi-configed: Befehl ausführen, Parameterabfrage
Operatoren wie AND (&&), || (OR), das Pipezeichen (|) sowie Umleitungsoperatoren (>, < und >>) für die Linux-Befehle sind erlaubt. Beachten Sie, dass keine Benutzereingaben während der Ausführung möglich sind. Kombinieren Sie zwei Befehle und erfordert das erste Kommando Root-Rechte, aktivieren Sie die erwähnte Checkbox; erfordert das zweite ebenfalls Root-Rechte, notieren Sie sudo im Befehl:
apt-get update --yes && sudo apt-get upgrade --yes