I am trying to run the following example provided in otp for an ssh daemon:
https://raw.github.com/erlang/otp/maint/lib/ssh/examples/ssh_sample_cli.erl
1> c(ssh_sample_cli).
ssh_sample_cli.erl:146: Warning: this expression will fail with a 'badarith' exception
{ok,ssh_sample_cli}
2> ssh_sample_cli:listen(1111).
{ok,<0.51.0>}
From my shell I try to connect but I get the following:
$ ssh localhost -p 1111 -oLoglevel=DEBUG
debug1: Reading configuration data /etc/ssh_config
debug1: Applying options for *
debug1: Connecting to localhost [::1] port 1111.
debug1: Connection established.
debug1: identity file /Users/eric/.ssh/id_rsa type 1
debug1: identity file /Users/eric/.ssh/id_rsa-cert type -1
debug1: identity file /Users/eric/.ssh/id_dsa type -1
debug1: identity file /Users/eric/.ssh/id_dsa-cert type -1
debug1: Remote protocol version 2.0, remote software version Erlang
debug1: no match: Erlang
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-sha1 none
debug1: kex: client->server aes128-cbc hmac-sha1 none
no hostkey alg
$
Why does this happen? What did I miss?
My hostkey has to be accessible from Erlang. Solution was to copy my ssh hostkey into a folder change permissions so Erlang could access it and use the
{system_dir, "/<folder>/ssh/"}option.