mirror of https://github.com/Rekoe/rk_svnadmin
parent
f78a08e84c
commit
273ca39b5f
@ -0,0 +1,51 @@
|
||||
package com.rekoe.ssh;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
import ch.ethz.ssh2.Connection;
|
||||
import ch.ethz.ssh2.ConnectionInfo;
|
||||
import ch.ethz.ssh2.Session;
|
||||
import ch.ethz.ssh2.StreamGobbler;
|
||||
|
||||
public class PublicKeyAuthentication {
|
||||
public static void main(String[] args) {
|
||||
String hostname = "xxx.xxx.xxx.xxx";
|
||||
String username = "root";
|
||||
|
||||
File keyfile = new File("~/.ssh/id_dsa"); // or "~/.ssh/id_dsa"
|
||||
try {
|
||||
/* Create a connection instance */
|
||||
Connection conn = new Connection(hostname, 59231);
|
||||
/* Now connect */
|
||||
ConnectionInfo info = conn.connect();
|
||||
System.out.println(info.keyExchangeAlgorithm);
|
||||
/* Authenticate */
|
||||
boolean isAuthenticated = conn.authenticateWithPublicKey(username, keyfile, "");
|
||||
if (isAuthenticated == false)
|
||||
throw new IOException("Authentication failed.");
|
||||
/* Create a session */
|
||||
Session sess = conn.openSession();
|
||||
sess.execCommand("ls");
|
||||
InputStream stdout = new StreamGobbler(sess.getStdout());
|
||||
BufferedReader br = new BufferedReader(new InputStreamReader(stdout));
|
||||
System.out.println("Here is some information about the remote host:");
|
||||
while (true) {
|
||||
String line = br.readLine();
|
||||
if (line == null)
|
||||
break;
|
||||
System.out.println(line);
|
||||
}
|
||||
/* Close this session */
|
||||
sess.close();
|
||||
/* Close the connection */
|
||||
conn.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace(System.err);
|
||||
System.exit(2);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package com.rekoe.ssh;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
import ch.ethz.ssh2.Connection;
|
||||
import ch.ethz.ssh2.SCPClient;
|
||||
|
||||
public class Scp {
|
||||
public static void main(String[] args) {
|
||||
String hostname = "xxx.xxxx.xxxx.xxxx";
|
||||
String username = "root";
|
||||
File keyfile = new File("~/.ssh/id_dsa"); // or ""
|
||||
try {
|
||||
/* Create a connection instance */
|
||||
Connection conn = new Connection(hostname, 59231);
|
||||
/* Now connect */
|
||||
conn.connect();
|
||||
boolean isAuthenticated = conn.authenticateWithPublicKey(username, keyfile, "");
|
||||
if (isAuthenticated == false)
|
||||
throw new IOException("Authentication failed.");
|
||||
/* Create a session */
|
||||
SCPClient scpClient = conn.createSCPClient();
|
||||
scpClient.put("d:/xxx.json", "/root/");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in new issue