Karaf

Karaf ist eine der zentralen Systemkomponenten für das BPC. Es handelt sich um eine Open Source Software der Apache Software Foundation

Die Dokumentation der Software finden Sie hier.

Im Rahmen der BPC-Installation wird eine bereits vorkonfigurierte Variante von Apache Karaf bereitgestellt.

Konfiguration

Arbeitsspeicher (RAM)

Die Höhe des zugewiesenen Arbeitsspeichers wird über die Umgebungsvariable EXTRA_JAVA_OPTS gesetzt. Diese Umgebungsvariable wird auch bei Verwendung der zentralen Konfiguration über bpc.env.sh genutzt.

Bitte auch die Arbeitsspeicher-Beispiele für die zur Verfügung stehende Hardware unter Systemanforderungen beachten.

Konsole

Über die Karaf-Konsole können einfach der aktuelle Zustand des Systems abgefragt sowie Konfigurationen ausgelesen und angepasst werden.
Siehe auch Apache Karaf Documentation - Using the Console.

Für besonders häufig genutzte Karaf-Konsolen-Kommandos steht ein Karaf-Konsolen-Befehle Cheat Sheet zur Verfügung.

Zugriff

Der Zugriff auf die Konsole ist lokal und auch remote möglich. Die Authentifizierung findet über die Karaf-Benutzerliste statt.
Die vordefinierte Rolle admin kann sich anmelden, aber erst in Kombination mit weiteren Rollen können umfassende administrative Aufgaben ausgeführt werden. Diese Rollen sind zur vordefinierten Gruppe g:admingroup zusammengefasst.
Detaillierte Informationen finden Sie unter Apache Karaf Documentation - Security.

Karaf Client

Im Karaf-Verzeichnis befindet sich unter bin/client (bzw. bin/client.bat für Windows) ein Client für die Konsole. Dieser ermöglicht lokal als auch remote Zugriff auf die Konsole.

SSH

Die Karaf-Konsole ist auch direkt via SSH-Protokoll verfügbar. Dafür steht, falls nicht anders konfiguriert (siehe Zentrale Konfigurationsdatei), der Port 8101 zur Verfügung.

Externer Zugriff via SSH

Standardmäßig wird der SSH-Zugriff auf den Host localhost eingeschränkt. Falls es erforderlich ist, Karaf auch über externe Verbindungen zugänglich zu machen, kann dies durch Anpassen der Einstellung org.apache.karaf.shell.sshHost erfolgen. Der Wert 0.0.0.0 erlaubt Verbindungen von allen IP-Adressen.

Die Änderung kann entweder über die Konfigurationsdatei KARAF_HOME/etc/org.apache.karaf.shell.cfg, die Karaf-Konsole oder die zentrale Konfigurationsdatei vorgenommen werden.

Wir empfehlen, die zentrale Konfigurationsdatei zu verwenden. Aktivieren Sie dazu einfach die standardmäßig auskommentierte Zeile:

  • Linux (bpc.env.sh):

export ORG_APACHE_KARAF_SHELL_SSHHOST=0.0.0.0
  • Windows (bpc.env.cmd):

SET ORG_APACHE_KARAF_SHELL_SSHHOST=0.0.0.0

Nutzen Sie für eine optimale Sicherheit stets die restriktivsten Einstellungen, die Ihren Arbeitsablauf ermöglichen.

Zugriff mit Private/Public-Key Verfahren

Befolgen Sie die folgenden Schritte:

  1. Erstellung des Schlüsselpaares:
    Führen Sie den folgenden Befehl aus, um ein neues Schlüsselpaar zu erstellen. Alternativ können Sie auch ein bereits bestehendes Schlüsselpaar verwenden.
    ssh-keygen -t rsa -f karaf.id_rsa

  2. Public Key in keys.properties einfügen.
    Die Datei keys.properties im KARAF_HOME/etc-Verzeichnis ermöglicht die Zuordnung eines SSH-Schlüssels zu einem Benutzer. Die Benutzer-Schlüssel-Paare werden in folgendem Format definiert: user=key,role

keys.properties Datei mit SSH-Public-Key
virtimo=<SSH-Public-Key>,_g_:admingroup
_g_\:admingroup = group,admin,manager,viewer,systembundles,ssh

Wird die Syntax der Datei nicht eingehalten, so ist eine Authentifizierung nicht möglich und es kann keine Verbindung hergestellt werden.
Stellen Sie sicher, dass im SSH-Public-Key keine Leerzeichen enthalten sind.

Der SSH-Zugang erfordert die Rolle ssh, die nicht standardmäßig gesetzt ist.

  1. Verbindung per SSH herstellen:
    ssh -p 8101 -i ~/karaf.id_rsa virtimo@localhost

Zugriff mit Username/Passwort

Alternativ zum Public/Private Key-Verfahren kann auch eine Authentifizierung über Username und Passwort erfolgen. Dazu wird die Datei users.properties im KARAF_HOME/etc-Verzeichnis verwendet.

Befolgen Sie die folgenden Schritte:

  1. Benutzer und Passwort in users.properties hinzufügen: Siehe Verwendung von users.properties für Karaf Zugriff.

  2. Verbindung per SSH herstellen:
    ssh -p 8101 -i ~/karaf.id_rsa karaf@localhost

Detaillierte Informationen finden Sie unter Apache Karaf Documentation - Security.

BPC-spezifische Kommandos


Keywords: