Ganymed SSH2 for Java
Ganymed SSH2 for Java is a library which implements the SSH2 protocol in pure Java
(tested on J2SE 1.4.2 and 5.0). It allows one to connect to SSH servers from within Java programs.
It supports SSH sessions (remote command execution and shell access), local port forwarding,
local stream forwarding, and SCP.
There are no dependencies on any JCE provider, as all crypto functionality is included.
Ganymed SSH2 for Java is used in the Ganymed replication project and a couple of other projects here at the IKS group.
Download
- NEW: 2005-08-24: build 208 (including jar, examples, source and javadoc):
ganymed-ssh2-build208.zip
(413KB, MD5: ae771443ab1925bcd3f25de5f952792e)
Latest release notes: HISTORY.TXT
|
Sourceforge download mirrors: Ganymed SSH2 files at Sourceforge
FAQ + Javadoc
There is now also a FAQ online: view the FAQ.
The javadoc files are also online: view the Javadoc.
Features
- 100% Java implementation of the SSH-2 protocol (tested on J2SE 1.4.2 and 5.0)
- No dependency on any JCE provider, all crypto functionality is included in the Ganymed SSH2 for Java library.
- Supports SSH sessions (remote command execution and shell access), local port forwarding, local stream forwarding and SCP.
- Thread safe, multiple threads can concurrently execute commands, open shells etc. on the same SSH connection.
- Available ciphers: aes256-ctr, aes192-ctr, aes128-ctr, blowfish-ctr, aes256-cbc, aes192-cbc, aes128-cbc, blowfish-cbc, 3des-ctr and 3des-cbc.
- Supports DSA and RSA server keys (ssh-dss and ssh-rsa). Extensive support for known_hosts file handling.
- Key exchange methods: diffie-hellman-group-exchange-sha1 (parameters configurable), diffie-hellman-group14-sha1 and diffie-hellman-group1-sha1.
- Supported MAC algorithms: hmac-sha1-96, hmac-sha1, hmac-md5-96 and hmac-md5.
- User authentication: password, keyboard-interactive and public-key with DSA and RSA keys (client-side private keys (PEM format) may also be 3DES, DES or AES encrypted).
License
The Ganymed SSH2 for Java library is released under a BSD style license.
The Java implementations of the AES, Blowfish and 3DES ciphers have been
taken (and slightly modified) from the cryptography package released by
The Legion Of The Bouncy Castle.
For details, please see the LICENSE.txt file.
Feedback and Questions
We welcome feedback of any kind! Especially if things run fine for you then please let us know, this keeps us motivated to improve this piece of software =)
Please contact Christian Plattner.
Older Releases
- 2005-07-21: build 207 (including jar, examples, source and javadoc):
ganymed-ssh2-build207.zip (365KB, MD5: c8c4a36af6a48d9d33d0c32803896057)
- 2005-07-04: build 206 (including jar, examples, source and javadoc):
ganymed-ssh2-build206.zip (338KB, MD5: 5d7365a3702dc1023c4b40720b0f3348)
- 2005-06-27: build 205 (including jar, examples, source and javadoc):
ganymed-ssh2-build205.zip (331KB, MD5: 74cf6b15f7cf9d7bce1909277a633548)
Behind the Scenes
If you are interested in the details of the SSH-2 protocol then please have a look at the following
documents:
The latest drafts can be downloaded here: http://ietf.org/html.charters/secsh-charter.html
Trademarks
SSH is a registered trademark of SSH Communications Security Corp in the United States
and in certain other jurisdictions. Java and J2ME are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.
All other names and marks are property of their respective owners.
|