SSH in Java

Has anyone built an SSH server in java before?

The crazy weirdos :wink: who develop commercial products all appear to charge a starting price of around $1000 - $4000 for a single license to use their sshd, which is ahem beyond ridiculous for what is a fairly straightforward protocol (given that Sun gives away a completely free encryption layer!).

Although I (used to) know the algorithms and even the mathematical explanations of half a dozen core encryption algorithms, I’ve never implemented one before, and certainly never tried doing SSH.

But it looks as though that’s our only option - use JSSE to make our own sshd implementation from scratch because no-one else on the planet has done this in java and is distributing it for less than $XXXX :(.

Maybe it’s easy (with JSSE), or maybe it’s really really hard. Any advice? (or even…any alternatives? the openssh.org site is entirely useless, BTW)

Just found that:

No idea what it does…

It’s a commercial project charging thousands of dollars.

I don’t get it - what exactly do you need? Isn’t it built-in to the JRE now?

Cas :slight_smile:

uhm? sure? - SF projects are required to be OpenSource AND free…

[quote]I don’t get it - what exactly do you need? Isn’t it built-in to the JRE now?
[/quote]
If there’s an SSH daemon built-in to JRE, please tell me WHERE! ???

Remember that: SSH != SSL

At the moment it appears we’ll just have to:

  1. tunnel over ssh + sshd (the linux applications) for now
  2. when 1.5 goes gold, waste several weeks integrating a full ssh pipeline into the grexengine
  3. …re-use item 2 to do what I’m trying to do now

1 is a terrible option because it requires the customer to:
a. remember to firewall correctly (!)
b. remember to setup ssh tunnelling, different on each platform :frowning:

ā€œwasteā€ is not an entirely accurate description for 2, in that by doing 2 we are also adding a feature that some people might wish to use later on - but we’ve not met anyone who wanted an sshd inside their gameserver as a feature, so it may be that it only ever gets used for what we’re doing now (but I can’t bear the thought of yet-another-network-code-path to maintain…).

[quote]uhm? sure? - SF projects are required to be OpenSource AND free…
[/quote]
Shrug. Whatever. The fact is that many SF projects are now only actively maintained as commercial and all that is left of the original appears to be the old downloads (since nearly every single SF developer feels they are above petty things such as using the SF documentation system, and so the only docs are on their website - which they then overwrite with a link to the commercial site - as is the case with sshtools)

J2SSH is LGPL, nothing prevented me from downloading it, nobody asked for thousands… where’s the problem here?

Ups, too late … yes, the download is a 2003-version.

Doesn’t mean it has to be bad or non-functional?

But I see what you mean.

[quote]J2SSH is LGPL, nothing prevented me from downloading it, nobody asked for thousands… where’s the problem here?

Ups, too late … yes, the download is a 2003-version.

Doesn’t mean it has to be bad or non-functional?

But I see what you mean.
[/quote]
…and I need the server version. From reading the webpage linked to from SF, it appears that J2SSH doesn’t include the daemon (although perhaps I’ve misinterpreted that?) but instead is only the client.

package com.sshtools.daemon;
public class SshDaemon {
}

LOL thanks, I guess I shouldn’t have taken their commercial site at face value and should have dug deeper. Will look at that more closely later.