有可能的。看一下JSch.addIdentity(...)

这使您可以将密钥用作字节数组或从文件中读取密钥。

import com.jcraft.jsch.Channel;

import com.jcraft.jsch.ChannelSftp;

import com.jcraft.jsch.JSch;

import com.jcraft.jsch.Session;

public class UserAuthPubKey {

public static void main(String[] arg) {

try {

JSch jsch = new JSch();

String user = "tjill";

String host = "192.18.0.246";

int port = 10022;

String privateKey = ".ssh/id_rsa";

jsch.addIdentity(privateKey);

System.out.println("identity added ");

Session session = jsch.getSession(user, host, port);

System.out.println("session created.");

// disabling StrictHostKeyChecking may help to make connection but makes it insecure

// see http://stackoverflow.com/questions/30178936/jsch-sftp-security-with-session-setconfigstricthostkeychecking-no

//

// java.util.Properties config = new java.util.Properties();

// config.put("StrictHostKeyChecking", "no");

// session.setConfig(config);

session.connect();

System.out.println("session connected.....");

Channel channel = session.openChannel("sftp");

channel.setInputStream(System.in);

channel.setOutputStream(System.out);

channel.connect();

System.out.println("shell channel connected....");

ChannelSftp c = (ChannelSftp) channel;

String fileName = "test.txt";

c.put(fileName, "./in/");

c.exit();

System.out.println("done");

} catch (Exception e) {

System.err.println(e);

}

}

}

java jsch 密钥登陆_我们可以使用JSch进行基于SSH密钥的通信吗?相关推荐

  1. seahorse 密钥环_使用Seahorse图形化管理SSH密钥

    seahorse 密钥环 如果您是Linux系统管理员,则可能熟悉使用安全外壳(SSH)工具安全地连接到远程服务器. 您可能还知道SSH使用公私钥对提供加密. 因此,使用SSH的第一步是生成密钥对. ...

  2. 如何使用SSH密钥登录你的云服务器?使用SSH密钥的好处

    什么是SSH秘钥对? ssh秘钥对是通过一种加密算法生产的一对秘钥: 一个对外界公开,称为"公钥": 另一个我们自己保留,称为"私钥". 公有和私有密钥被称为密 ...

  3. jsch设置代理_尽管在JSch中设置了STRICT_HOST_CHECKING,但仍获取UnknownHostKey异常

    在使用java代码连接会话时在代码下执行时获取问题 . 尝试所有更改也尝试使用SFTPFileSystemConfigurationBuilder,但从那个场景我无法设置代理服务器用户名和密码 . i ...

  4. java手机验证码登陆_在Web项目中手机短信验证码实现的全过程记录

    这篇文章主要给大家介绍了关于在Web项目中实现短信验证码的全过程记录,文中通过示例代码介绍的非常详细,在文末跟大家提供了源码下载,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧. 前言 最近在做 ...

  5. java 存放大数字_我可以使用什么变量类型在java中保存大量数字(30位数)?

    你可以使用 BigInteger类. BigInteger bi1 = new BigInteger("637824629384623845238423545642384"); B ...

  6. java 天猫模拟登陆_基于servlet+filter+反射模拟实现天猫首页的后端

    前言:为了深入web原理,本项目没有使用框架,主要描述了从请求到页面展现的思路,详情请见文末的具体项目 一.为什么要用filter?直接servlet实现不就行了 因为天猫这样的项目需要很多servl ...

  7. java模拟京东登陆_模拟登陆京东并访问我的订单

    第一个出现错误 #-*- coding: utf-8 -*- importrequests url= 'https://passport.jd.com/uc/loginService'headers= ...

  8. java微博模拟登陆_用httpclient模拟浏览器,登录新浪微博

    ①用Fiddler2追踪登录时的post请求,发现需要以下参数: check uname backURL autoLogin pwd 其中,backURL="/",check=&q ...

  9. java 12306 模拟登陆_请教java尝试模拟登录12306时遇到的一个问题

    展开全部 首先12306网站前32313133353236313431303231363533e78988e69d8331333363386133缀为"https://" 表明是用 ...

最新文章

  1. php 自定义文件后缀,自定义更改服务器asp/php/.net等文件后缀名
  2. Flex 布局教程实例
  3. python写程序注意事项(很重要)
  4. .net缓存应用与分析
  5. 力拼5G,台湾拟释放出更多频谱
  6. QT4升级QT5调研报告
  7. Java中处理日期的常用类
  8. pip慢?半分钟解决方案
  9. 芯烨 XP-350b 打印机驱动
  10. 计算机临时保存信息,Windows临时文件夹是什么,Windows临时文件夹保存位置在哪里?...
  11. PostgreSQL 执行计划与实际成本的偏差
  12. 知识表示学习研究进展
  13. 基于Java的亚马逊“手机”评论爬虫的情感分类分析
  14. 关于无损APE,FLAC转AAC的小技巧
  15. MOOC《深度学习基础》笔记(一)
  16. 用Potplayer听音乐时,声音忽大忽小问题
  17. 南天收藏库为什么大不了_那么,密码有什么大不了的呢?
  18. Malloc源码解读三——Bins与Arena
  19. NRF52832学习笔记(23)——GAP主机端连接
  20. java long string 转换_Java long 转成 String的实现

热门文章

  1. Eclipse+Web3j开发以太坊应用
  2. Java方法 传值方式
  3. 优化SQL查询:如何写出高性能SQL语句
  4. _xmlXPathNewContext, referenced from
  5. 如何修改IE浏览器的User-Agent用户代理字符串信息
  6. 网站高并发及高并发架构详解
  7. 普通视图和物化视图区别
  8. 温故而知新:HttpApplication,HttpModule,HttpContext及Asp.Net页生命周期
  9. linux avd 界面,Android Studio创建AVD
  10. 反思自己钻牛角尖:间隔反思思维方法 时时刻刻反馈目标