本文整理匯總了Java中com.jcraft.jsch.Session.connect方法的典型用法代碼示例。如果您正苦於以下問題:Java Session.connect方法的具體用法?Java Session.connect怎麽用?Java Session.connect使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.jcraft.jsch.Session
的用法示例。
在下文中一共展示了Session.connect方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: fileFetch
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
public static void fileFetch(String host, String user, String keyLocation, String sourceDir, String destDir) {
JSch jsch = new JSch();
Session session = null;
try {
// set up session
session = jsch.getSession(user,host);
// use private key instead of username/password
session.setConfig(
"PreferredAuthentications",
"publickey,gssapi-with-mic,keyboard-interactive,password");
jsch.addIdentity(keyLocation);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
// copy remote log file to localhost.
ChannelSftp channelSftp = (ChannelSftp) session.openChannel("sftp");
channelSftp.connect();
channelSftp.get(sourceDir, destDir);
channelSftp.exit();
} catch (Exception e) {
e.printStackTrace();
} finally {
session.disconnect();
}
}
示例2: testTestCommand
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
@Test
public void testTestCommand() throws JSchException, IOException {
JSch jsch = new JSch();
Session session = jsch.getSession("admin", "localhost", properties.getShell().getPort());
jsch.addIdentity("src/test/resources/id_rsa");
Properties config = new Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
ChannelShell channel = (ChannelShell) session.openChannel("shell");
PipedInputStream pis = new PipedInputStream();
PipedOutputStream pos = new PipedOutputStream();
channel.setInputStream(new PipedInputStream(pos));
channel.setOutputStream(new PipedOutputStream(pis));
channel.connect();
pos.write("test run bob\r".getBytes(StandardCharsets.UTF_8));
pos.flush();
verifyResponse(pis, "test run bob");
pis.close();
pos.close();
channel.disconnect();
session.disconnect();
}
開發者ID:anand1st,項目名稱:sshd-shell-spring-boot,代碼行數:24,代碼來源:SshdShellAutoConfigurationWithPublicKeyAndBannerImageTest.java
示例3: executeCommand
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
public void executeCommand(final String command) throws IOException { // Cliente SSH final
JSch jsch = new JSch();
Properties props = new Properties();
props.put("StrictHostKeyChecking", "no");
try {
Session session = jsch.getSession(user, host, 22);
session.setConfig(props);
session.setPassword(password);
session.connect();
java.util.logging.Logger.getLogger(RemoteShell.class.getName())
.log(Level.INFO, session.getServerVersion());
Channel channel = session.openChannel("exec");
((ChannelExec) channel).setCommand(command);
// Daqui para baixo é somente para imprimir a saida
channel.setInputStream(null);
((ChannelExec) channel).setErrStream(System.err);
InputStream in = channel.getInputStream();
channel.connect();
byte[] tmp = new byte[1024];
while (true) {
while (in.available() > 0) {
int i = in.read(tmp, 0, 1024);
if (i < 0) {
break;
}
System.out.print(new String(tmp, 0, i));
}
if (channel.isClosed()) {
if (in.available() > 0) {
continue;
}
System.out
.println("exit-status: " + channel.getExitStatus());
break;
}
try {
Thread.sleep(1000);
} catch (Exception ee) {
}
}
channel.disconnect();
session.disconnect();
} catch (JSchException ex) {
java.util.logging.Logger.getLogger(RemoteShell.class.getName())
.log(Level.SEVERE, null, ex);
}
}
示例4: connectAndExecute
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
public static String connectAndExecute(String user, String host, String password, String command1) {
String CommandOutput = null;
try {
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
JSch jsch = new JSch();
Session session = jsch.getSession(user, host, 22);
session.setPassword(password);
session.setConfig(config);
session.connect();
// System.out.println("Connected");
Channel channel = session.openChannel("exec");
((ChannelExec) channel).setCommand(command1);
channel.setInputStream(null);
((ChannelExec) channel).setErrStream(System.err);
InputStream in = channel.getInputStream();
channel.connect();
byte[] tmp = new byte[1024];
while (true) {
while (in.available() > 0) {
int i = in.read(tmp, 0, 1024);
if (i < 0)
break;
// System.out.print(new String(tmp, 0, i));
CommandOutput = new String(tmp, 0, i);
}
if (channel.isClosed()) {
// System.out.println("exit-status: " +
// channel.getExitStatus());
break;
}
try {
Thread.sleep(1000);
} catch (Exception ee) {
}
}
channel.disconnect();
session.disconnect();
// System.out.println("DONE");
} catch (Exception e) {
e.printStackTrace();
}
return CommandOutput;
}
示例5: init
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
ChannelSftp init(String filename) throws JSchException, UnsupportedEncodingException {
jsch = new JSch();
ConnectionInfo ci = splitStringToConnectionInfo(filename);
Session session = jsch.getSession(ci.username, ci.host, ci.port);
UserInfo ui = new SftpUserInfo(ci.password);
session.setUserInfo(ui);
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
ChannelSftp c = (ChannelSftp) channel;
logDebug("success: init Sftp");
return c;
}
示例6: testJschConnection
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
@Test
public void testJschConnection() throws InterruptedException, SftpException, JSchException, IOException {
JSch jsch = new JSch();
String passphrase = "";
jsch.addIdentity(privateKey,
StringUtil.isEmpty(passphrase) ?
null : passphrase);
Session session = jsch.getSession(user, host, port);
System.out.println("session created.");
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
config.put("PreferredAuthentications",
"publickey,keyboard-interactive,password");
session.setConfig(config);
session.connect();
Thread.sleep(500);
session.disconnect();
}
示例7: create
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
@Override
public Session create(ConnectionDetails connectionDetails) throws Exception {
log.debug("Creating session for "+connectionDetails);
Session session = null;
try {
byte[] privateKey = connectionDetails.getPrivateKey();
if (privateKey != null) {
jsch.addIdentity(connectionDetails.getUsername(), privateKey, null, connectionDetails.getPassword().getBytes());
}
session = jsch.getSession(connectionDetails.getUsername(), connectionDetails.getHost(), connectionDetails.getPort());
session.setPassword(connectionDetails.getPassword());
if (!hostKeyValidation) {
session.setConfig("StrictHostKeyChecking", "no");
}
session.setDaemonThread(true);
session.connect();
} catch (Exception e) {
log.error("Failed to connect to "+connectionDetails);
throw e;
}
return session;
}
示例8: sshCall
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
protected void sshCall(String username, String password, SshExecutor executor, String channelType) {
try {
JSch jsch = new JSch();
Session session = jsch.getSession(username, props.getShell().getHost(), props.getShell().getPort());
session.setPassword(password);
Properties config = new Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
Channel channel = session.openChannel(channelType);
PipedInputStream pis = new PipedInputStream();
PipedOutputStream pos = new PipedOutputStream();
channel.setInputStream(new PipedInputStream(pos));
channel.setOutputStream(new PipedOutputStream(pis));
channel.connect();
try {
executor.execute(pis, pos);
} finally {
pis.close();
pos.close();
channel.disconnect();
session.disconnect();
}
} catch(JSchException | IOException ex) {
fail(ex.toString());
}
}
示例9: validateCredentials
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
public Message validateCredentials(String host, String user, String password) {
JSch jsch = new JSch();
Session session;
try {
session = jsch.getSession(user, host, SSH_PORT);
session.setPassword(password);
java.util.Properties config = new java.util.Properties();
config.put(STRICT_HOST_KEY_CHECKING, STRICT_HOST_KEY_CHECKING_DEFAULT_VALUE);
session.setConfig(config);
session.setConfig(PREFERRED_AUTHENTICATIONS, PREFERRED_AUTHENTICATIONS_DEFAULT_VALUES);
session.connect();
session.disconnect();
} catch (Exception e) {
return getErrorMessage(e);
}
return new Message(MessageType.SUCCESS, GENERAL_SUCCESS_MESSAGE);
}
示例10: scpFileFromRemoteServer
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
/**
*
* Scp file from remote server
*
* @param host
* @param user
* @param password
* @param remoteFile
* @param localFile
* @throws JSchException
* @throws IOException
*/
public void scpFileFromRemoteServer(String host, String user, String password, String remoteFile, String localFile) throws JSchException, IOException {
String prefix = null;
if (new File(localFile).isDirectory()) {
prefix = localFile + File.separator;
}
JSch jsch = new JSch();
Session session = jsch.getSession(user, host, 22);
// username and password will be given via UserInfo interface.
UserInfo userInfo = new UserInformation(password);
session.setUserInfo(userInfo);
session.connect();
// exec 'scp -f remoteFile' remotely
String command = "scp -f " + remoteFile;
Channel channel = session.openChannel("exec");
((ChannelExec) channel).setCommand(command);
// get I/O streams for remote scp
OutputStream out = channel.getOutputStream();
InputStream in = channel.getInputStream();
channel.connect();
byte[] buf = new byte[1024];
// send '\0'
buf[0] = 0;
out.write(buf, 0, 1);
out.flush();
readRemoteFileAndWriteToLocalFile(localFile, prefix, out, in, buf);
session.disconnect();
}
示例11: connect
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
public static Session connect(String host, Integer port, String user, String password) throws JSchException{
Session session = null;
try {
JSch jsch = new JSch();
if(port != null){
session = jsch.getSession(user, host, port.intValue());
}else{
session = jsch.getSession(user, host);
}
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
//time out
session.connect(3000);
} catch (JSchException e) {
e.printStackTrace();
System.out.println("SFTPUitl connection error");
throw e;
}
return session;
}
示例12: executeSSH
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
private boolean executeSSH(){
//get deployment descriptor, instead of this hard coded.
// or execute a script on the target machine which download artifact from nexus
String command ="nohup java -jar -Dserver.port=8091 ./work/codebox/chapter6/chapter6.search/target/search-1.0.jar &";
try{
System.out.println("Executing "+ command);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
JSch jsch = new JSch();
Session session=jsch.getSession("rajeshrv", "localhost", 22);
session.setPassword("rajeshrv");
session.setConfig(config);
session.connect();
System.out.println("Connected");
ChannelExec channelExec = (ChannelExec)session.openChannel("exec");
InputStream in = channelExec.getInputStream();
channelExec.setCommand(command);
channelExec.connect();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String line;
int index = 0;
while ((line = reader.readLine()) != null) {
System.out.println(++index + " : " + line);
}
channelExec.disconnect();
session.disconnect();
System.out.println("Done!");
}catch(Exception e){
e.printStackTrace();
return false;
}
return true;
}
示例13: exec
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
@SneakyThrows
public static int exec(@Nonnull String host,
int port,
@Nonnull String username,
@Nonnull String password,
@Nonnull String cmd) {
JSch jSch = new JSch();
Session session = jSch.getSession(username, host, port);
session.setPassword(password);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
Channel channel = session.openChannel("exec");
((ChannelExec) channel).setCommand(cmd);
((ChannelExec) channel).setInputStream(null);
((ChannelExec) channel).setErrStream(System.err);
InputStream inputStream = channel.getInputStream();
channel.connect();
log.info("# successful connect to server [{}:{}]", host, port);
log.info("# exec cmd [{}]", cmd);
StringBuilder sb = new StringBuilder();
byte[] bytes = new byte[1024];
int exitStatus;
while (true) {
while (inputStream.available() > 0) {
int i = inputStream.read(bytes, 0, 1024);
if (i < 0) {
break;
}
sb.append(new String(bytes, 0, i, StandardCharsets.UTF_8));
}
if (channel.isClosed()) {
if (inputStream.available() > 0) {
continue;
}
exitStatus = channel.getExitStatus();
break;
}
Thread.sleep(1000);
}
if (StringUtils.isNotEmpty(sb)) {
log.info("# cmd-rs \n" + sb);
}
channel.disconnect();
session.disconnect();
log.info("# successful disconnect to server [{}:{}]", host, port);
return exitStatus;
}
示例14: getSession
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
public synchronized Session getSession(Uri path) throws JSchException{
String username="anonymous";
String password = "";
NetworkCredentialsDatabase database = NetworkCredentialsDatabase.getInstance();
Credential cred = database.getCredential(path.toString());
if(cred==null){
cred = new Credential("anonymous","",buildKeyFromUri(path).toString(), true);
}
if(cred!=null){
password= cred.getPassword();
username = cred.getUsername();
}
Session session = sessions.get(cred);
if(session!=null){
if(!session.isConnected())
try {
session.connect();
} catch (JSchException e1) {
removeSession(path);
return getSession(path);
}
return session;
}
JSch jsch=new JSch();
try {
session = jsch.getSession(username, path.getHost(), path.getPort());
session.setPassword(password);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
sessions.put(cred, session);
return session;
} catch (JSchException e) {
// TODO Auto-generated catch block
throw e;
}
}
示例15: connect
import com.jcraft.jsch.Session; //導入方法依賴的package包/類
/**
* 連接到服務器
*/
private static Session connect(String host,String user,String pass) throws JSchException{
JSch sch = new JSch();
Session session = sch.getSession(user, host, 22);
session.setPassword(pass);
Properties config = new Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.setTimeout(60000);
session.connect();
return session;
}