永发信息网

jsch.session怎么使用 linux的信任机制

答案:1  悬赏:50  手机版
解决时间 2021-11-25 09:13
jsch.session怎么使用 linux的信任机制
最佳答案
使用 jsch 连接linux
1:首先添加maven 依赖

com.jcraft
jsch
0.1.48


使用密码 方式连接 linux
public static String exec(String host, String user, String psw, int port,
String command) {
String result = "";
Session session = null;
ChannelExec openChannel = null;
try {
JSch jsch = new JSch();
session = jsch.getSession(user, host, port);
session.setPassword(psw.getBytes());
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
openChannel = (ChannelExec) session.openChannel("exec");
openChannel.setCommand(command);
int exitStatus = openChannel.getExitStatus();
System.out.println(exitStatus);
openChannel.connect();
InputStream in = openChannel.getInputStream();
BufferedReader reader = new BufferedReader(
new InputStreamReader(in));
String buf = null;
while ((buf = reader.readLine()) != null) {
result += new String(buf.getBytes("gbk"), "UTF-8")
+ "
\r\n";
}
} catch (JSchException | IOException e) {
e.printStackTrace();
result += e.getMessage();
} finally {
if (openChannel != null && !openChannel.isClosed()) {
openChannel.disconnect();
}
if (session != null && session.isConnected()) {
session.disconnect();
}
}
return result;
}
String exec = exec("192.168.80.101", "root", "111", 22,"sleep 2;ls;");

使用 秘钥方式 连接linux
public static String exec1(String ip, String user, int port,
String privateKey, String passphrase, String command) {
String result = "";
Session session = null;
ChannelExec openChannel = null;
try {
JSch jsch = new JSch();
jsch.addIdentity(privateKey);
session = jsch.getSession(user, ip, port);

java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
openChannel = (ChannelExec) session.openChannel("exec");
openChannel.setCommand(command);
int exitStatus = openChannel.getExitStatus();
System.out.println(exitStatus);
openChannel.connect();
InputStream in = openChannel.getInputStream();
BufferedReader reader = new BufferedReader(
new InputStreamReader(in));
String buf = null;
while ((buf = reader.readLine()) != null) {
result += new String(buf.getBytes("gbk"), "UTF-8")
+ "
\r\n";
}
} catch (JSchException | IOException e) {
e.printStackTrace();
result += e.getMessage();
} finally {
if (openChannel != null && !openChannel.isClosed()) {
openChannel.disconnect();
}
if (session != null && session.isConnected()) {
session.disconnect();
}
}
return result;
}

String result=exec1("192.168.80.101", "root", 22,"C:\\Users\\ebnew\\Desktop\\office-key(1)", "", "sleep 2;ls;");
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我包工给人贴瓷砖,后来他房子外面的边缘多砌
299x78巧算怎么做
ONE~辉之季节~的发售版本
电动车没电了怎么办?有什么应急方法?
包头昆曲到吕祖庙怎么走
吉祥窗帘地址在什么地方,我要处理点事!
下直肌增粗冷敷还是热敷好
求武汉所有的大学后街或者学生街地址
iphone怎么截图?苹果手机怎么截图
Visual Studio 中 Build 和 Rebuild 的区别
惠州海滨温泉怎么样?
喷淋系统中,配水管控制的标准喷头个数问题。
我们世界中沙烁是什么样的
30w一个月做狗奴值得嘛?
成都春熙路怎么走
推荐资讯
关于VB中的COMBOBOX!急急急!
表达死亡的句子
“Gettyimages”是什么?
皇上是女人叫金篱,里面还有个南阳王
求遥遥(妖精の飞羽)主持的锣鼓巷里2人涮第1
#请教毛豆腐做法问题# 这几天用老豆腐做毛豆
怎样做个质量管理体系的认证员,都需要靠什么
牛身上有一块肉是黄色的爆炒出来是脆脆的看起
快手上一个纹身男,头发淡紫色,好像二道白色
笔记本gtx960和gtx965在实际游戏体验中差别大
深圳限制东莞惠州广州的车进入,东莞惠州广州
拉杆箱的密码打不开一个拉链头被锁了另一个没
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?