ersten Mal auf Stackoverflow und auch mit sshj fragen. Neben den Beispielen, die mit sshj zur Verfügung gestellt werden, habe ich keine wirklich guten Ressourcen gefunden, um diese API zu benutzen.net.schmizz.sshj.userauth.UserAuthException: Erschöpfte verfügbare Authentifizierungsmethoden
Ich habe versucht, Remote-Port-Weiterleitung mit sshj zu tun und habe in diesem Fehler aufgetreten.
Exception in thread "main" net.schmizz.sshj.userauth.UserAuthException: Exhausted available authentication methods
Ich testete die Authentifizierung mit einer VM, aber ohne einen öffentlichen Schlüssel zu verwenden. Ich würde dies verwenden, um eine Verbindung zu einer EC2-Instanz herzustellen, auf der ich die Anmeldung kenne.
public void startRemotePortForwardingConnection(LocalPortForwarder.Parameters parameters) throws IOException{
sshClient.connect(parameters.getLocalHost());
this.connectionStatus = CONNECTED;
System.out.print("Connected to localhost" + NEWLINE);
try {
sshClient.authPassword(this.username, this.password);
System.out.print("Authorized with as user " + username + " with password " + password + NEWLINE);
// the local port we should be listening on
RemotePortForwarder.Forward localPortToListenOn = new RemotePortForwarder.Forward(parameters.getLocalPort());
System.out.print("localPortToListenOn initialized" + NEWLINE);
// where we should forward the packets
InetSocketAddress socketAddress = new InetSocketAddress(parameters.getRemoteHost(), parameters.getRemotePort());
SocketForwardingConnectListener remotePortToForwardTo = new SocketForwardingConnectListener(socketAddress);
System.out.print("remotePortToForwardTo initialized" + NEWLINE);
//bind the forwarder to the correct ports
sshClient.getRemotePortForwarder().bind(localPortToListenOn, remotePortToForwardTo);
System.out.print("ports bound together" + NEWLINE);
sshClient.getTransport().setHeartbeatInterval(30);
sshClient.getTransport().join();
}
finally {
sshClient.disconnect();
}
}
Wahrscheinlich nicht der beste (oder sogar richtige) Weg, dies zu tun.
Mögliches Duplikat [SSHJ - Keypair Login auf EC2-Instanz] (http: // Stackoverflow .com/Fragen/9283556/sshj-Schlüsselpaar-Login-zu-ec2-Instanz) – Pureferret