Я хотел бы использовать библиотеку JMS (Java Message Service), ActiveMQ или FFMQ, но мне нужно запустить ее по протоколу SSH. Я начал реализовывать свой собственный метод фабрики соединений ActiveMQ, но затем меня поразила идея реализации интерфейсов Socket / SocketFactory через SSH. Это позволило бы мне адаптировать практически любую реализацию JMS, не касаясь ее кода. Как обычно, кто-то уже имел эту идею, и я нашел несколько реализаций этого подхода.
http://svn.apache.org/repos/asf/pig/trunk/lib-src/shock/org/apache/pig/shock/SSHSocketImplFactory.java
http://benkstein.net/java/SSHSocketFactory/javadoc/
Первый - это класс где-то в духе Apache Pig. Второй - это взломанный аддон для клиента MySQL, опубликованный Фрэнком Бенкштейном в 2004 году. Похоже, что сообщество MySQL не интересовалось этим (http://www.webservertalk.com/archive277-2004-7-294282.html).
Интересно, есть ли другие реализации фабрики SocketOverSsh, возможно, лучше задокументированные / поддерживаемые?
Обновление: моя основная мотивация - избегать дополнительных открытых портов или изменений конфигурации как на клиенте, так и на сервере. Так что SOCKS или обычная переадресация порта не являются желательными решениями.