共計 1198 個字符,預計需要花費 3 分鐘才能閱讀完成。
Java 可以通過使用 JSch 庫來實現 SSH 遠程訪問。JSch 是 Java Secure Channel 的簡稱,是一個純 Java 實現的 SSH2 協議客戶端。
下面是一個簡單的示例代碼,演示如何使用 JSch 實現 SSH 遠程訪問:
import com.jcraft.jsch.*;
public class SSHExample {public static void main(String[] args) {
String host = "your_host";
String username = "your_username";
String password = "your_password";
try {JSch jsch = new JSch();
// 創建 SSH 會話
Session session = jsch.getSession(username, host, 22);
session.setPassword(password);
// 關閉主機密鑰檢查,避免連接時出現 UnknownHostKey 異常
session.setConfig("StrictHostKeyChecking", "no");
// 連接 SSH服務器
session.connect();
// 執行遠程命令
ChannelExec channel = (ChannelExec) session.openChannel("exec");
channel.setCommand("ls -l");
channel.connect();
// 讀取命令輸出
byte[] buffer = new byte[1024];
while (channel.getExitStatus() == -1) {while (channel.getInputStream().available() > 0) {int len = channel.getInputStream().read(buffer);
System.out.print(new String(buffer, 0, len));
}
}
// 關閉 SSH 會話
channel.disconnect();
session.disconnect();} catch (JSchException | java.io.IOException e) {e.printStackTrace();
}
}
}
上述代碼通過 JSch 庫創建了一個 SSH 會話,并使用用戶名和密碼連接到遠程主機。然后,通過打開一個 exec 通道執行遠程命令(此處是執行 ls -l
命令),并讀取命令輸出。
需要注意的是,使用 JSch 進行 SSH 遠程訪問需要在項目中引入 JSch 庫的依賴。你可以通過將以下代碼添加到項目的 Maven 配置文件(pom.xml)中來引入 JSch 庫的依賴:
com.jcraft
jsch
0.1.54
請將上述代碼中的 your_host
、your_username
和your_password
替換為實際的遠程主機地址、用戶名和密碼。
丸趣 TV 網 – 提供最優質的資源集合!
正文完