我对如何将 Apache Felix 与 SSH 一起使用感兴趣?我想使用 SSH 从远程计算机访问 Felix shell。我知道有 telnet 支持,但它太不安全了。有什么解决办法吗?
问问题
1820 次
1 回答
3
是的,有一个,如此处所述(该指南与 Eclipse 的 Equinox 相关,但没关系)使用gogo shell、apache mina sshd服务器和三个equinox 控制台捆绑包(core+ssh 插件+jaas ssh 插件)的组合身份验证)您将能够连接到 mina 的 ssh 服务器,并且您与 OSGi 相关的命令将由 gogo shell 执行。
您将需要这些捆绑包:
- GoGo 外壳:org.apache.felix.gogo.command.jar、org.apache.felix.gogo.runtime.jar、org.apache.felix.gogo.shell.jar
- Equinox 控制台捆绑包: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
- 用于记录 slf4j-api.jar 和 slf4j-api_impl.jar
如此处所述,您还需要在 Felix 配置文件中使用这些属性:
osgi.console.enable.builtin=false
osgi.console.ssh=<port>
osgi.console.ssh.useDefaultSecureStorage=true
Equinox JAAS 包将搜索一个org.eclipse.equinox.console.authentication.config
文件,该文件将启用登录模块:
equinox_console {
org.eclipse.equinox.console.jaas.SecureStorageLoginModule REQUIRED;
};
我不太确定使用 Felix 将在哪里搜索(我不确定这是以标准 OSGi 方式完成的),但该conf
目录是一个很好的猜测。
用户 equinox/equinox 已经存在,可以使用提供的控制台命令创建其他用户。
编辑:对于 Equinox 控制台/可支持性捆绑包,您可以 从此处获取 Mars 版本,扩展附加捆绑包部分:
于 2015-06-24T21:04:18.613 回答