i did the same, but when trying to connect on forwarded port it falls. server: object SshDaemon {
private val sshd = SshServer.setUpDefaultServer() def start(): Unit = { sshd.setPort(22) sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider(new File("hostkey.ser"))) sshd.setTcpipForwardingFilter(new ForwardingFilter { override def canForwardX11(session: Session): Boolean = true override def canForwardAgent(session: Session): Boolean = true override def canListen(address: SshdSocketAddress, session: Session): Boolean = true override def canConnect(`type`: Type, address: SshdSocketAddress, session: Session): Boolean = true }) sshd.setPasswordAuthenticator(new PasswordAuthenticator { override def authenticate(username: String, password: String, session: ServerSession): Boolean = username == "root" && password == "root" }) sshd.start() } def stop() = sshd.stop(true) } client: object SshAgent { private val ssh = SshClient.setUpDefaultClient() def start() = { ssh.setTcpipForwardingFilter(new ForwardingFilter { override def canForwardX11(session: Session): Boolean = true override def canForwardAgent(session: Session): Boolean = true override def canListen(address: SshdSocketAddress, session: Session): Boolean = true override def canConnect(`type`: Type, address: SshdSocketAddress, session: Session): Boolean = true }) ssh.start() val connect = ssh.connect("root", "localhost", 22) connect.await() val session = connect.getSession session.addPasswordIdentity("root") session.auth().await() val local = new SshdSocketAddress("localhost", 14722) val remote = new SshdSocketAddress("localhost", 14730) session.startRemotePortForwarding(remote, local) } def stop() = ssh.stop() } netstat: tcp6 0 0 127.0.0.1:14730 :::* LISTEN - connect: ssh -vvv root@localhost -p 14730 OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to localhost [127.0.0.1] port 14730. debug1: Connection established. debug3: Incorrect RSA1 identifier debug3: Could not load "/home/svyatoslav/.ssh/id_rsa" as a RSA1 public key debug1: identity file /home/svyatoslav/.ssh/id_rsa type 1 debug1: identity file /home/svyatoslav/.ssh/id_rsa-cert type -1 debug1: identity file /home/svyatoslav/.ssh/id_dsa type -1 debug1: identity file /home/svyatoslav/.ssh/id_dsa-cert type -1 debug1: identity file /home/svyatoslav/.ssh/id_ecdsa type -1 debug1: identity file /home/svyatoslav/.ssh/id_ecdsa-cert type -1 debug1: identity file /home/svyatoslav/.ssh/id_ed25519 type -1 debug1: identity file /home/svyatoslav/.ssh/id_ed25519-cert type -1 debug1: Enabling compatibility mode for protocol 2.0 debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.6 ssh_exchange_identification: Connection closed by remote host -- View this message in context: http://apache-mina.10907.n7.nabble.com/Remote-Port-Forwarding-tp41196p50381.html Sent from the Apache MINA User Forum mailing list archive at Nabble.com.