2015-06-02 10 views
7

Ich bin interessiert, wie ich Apache Felix mit SSH verwenden kann? Ich möchte Felix-Shell von Remote-Computer mit SSH zugreifen. Ich weiß, dass es eine Telnet-Unterstützung gibt, aber es ist zu unsicher. Gibt es eine Lösung?Apache Felix Shell mit SSH

Antwort

3

Ja, es ist, als here beschrieben (die Führung relativ Equinox zu verdunkeln, aber es spielt keine Rolle) mit einer Kombination aus gogo shell, apache mina sshd Server und drei equinox console bundles (core + ssh-Plugin + jaas Plugin für die SSH-Authentifizierung) Sie können sich mit dem ssh-Server von mina verbinden und Ihre OSGi-Befehle werden von der gogo-Shell ausgeführt.

Sie werden diese Pakete benötigen:

  • GoGo Shell: org.apache.felix.gogo.command.jar, org.apache.felix.gogo.runtime.jar, org.apache. felix.gogo.shell.jar
  • Equinox Konsole Bundles: org.eclipse.equinox.console.jar, org.eclipse.equinox.console.supportability.jar, org.eclipse.equinox.console.jaas.fragment. jar
  • Apache Mina: org.apache.mina.core.jar, org.apache. sshd.core.jar
  • Und slf4j-api.jar für die Anmeldung und eine slf4j-api_impl.jar

Wie here beschrieben, müssen Sie auch diese Eigenschaften in Ihrem Felix Konfigurationsdatei:

osgi.console.enable.builtin=false 
osgi.console.ssh=<port> 
osgi.console.ssh.useDefaultSecureStorage=true 

die Tagundnachtgleiche JAAS Bündel für eine org.eclipse.equinox.console.authentication.config Datei suchen, die die Login-Modul ermöglicht:

equinox_console { 
    org.eclipse.equinox.console.jaas.SecureStorageLoginModule REQUIRED; 
}; 

ich bin mir nicht ganz sicher, w Hier wird mit Felix gesucht (ich bin mir nicht sicher, ob dies in einer Standard-OSGi-Weise gemacht wird), aber das Verzeichnis conf ist eine gute Schätzung.

Der Benutzer Äquinoktium/Equinox wird bereits vorhanden sein, andere Benutzer können mit den bereitgestellten Konsolenbefehlen erstellt werden.

Edit: Für die Tagundnachtgleiche Konsole/Wartbarkeit Bündel können Sie die Mars from here erhalten lassen Sie den Abschnitt erweitert Add-on-Bundles:

org.eclipse.equinox.console_1.1.100.v20141023-1406.jar

Sie brauchen auch die supportability bundle hinaus können Sie Get from here (die letzte Version ist von 2011).

+0

Ich schaffte es, diese https://www.dropbox.com/s/rkd9phus29yb3dd/server.zip?dl=0 zu erstellen, aber ich bekomme diese Fehler: http://pastebin.com/XhihQDcb –

+0

'fehlende Anforderung [Org .apache.mina.core [1] (R 1.0)] osgi.wiring.package; (& (osgi.wiring.packa ge = org.slf4j) 'Sie brauchen die Slf4j Gläser, die für die Protokollierung verwendet werden. –

+0

Ich habe dieses Problem behoben. https://www.dropbox.com/s/a7gyz1bd29yhan7/server_2.rar? dl = 0 Aber es gibt ein neues Problem: 'org.osgi.framework.BundleException: Konnte org.eclipse.equinox.console' nicht beheben –

Verwandte Themen