解决sftp第二次连接异常

一、问题想象:IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!

Someone could be eavesdropping on you right now (man-in-the-middle attack)!

It is also possible that a host key has just been changed.

The fingerprint for the ECDSA key sent by the remote host is

SHA256:K24W0Pw1TOIp+xXAOGpF19OVDi56FdhURPwXExCz9HE.

Please contact your system administrator.

Add correct host key in C:\\Users\\Admin/.ssh/known_hosts to get rid of this message.

Offending ECDSA key in C:\\Users\\Admin/.ssh/known_hosts:1

ECDSA host key for 192.168.224.128 has changed and you have requested strict checking.

Host key verification failed.

Connection closed

二、原因:ssh会把每个你访问过计算机的公钥(public key)都记录在本地~/.ssh/known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。

一台主机上有多个Linux系统,会经常切换,那么这些系统使用同一ip,登录过一次后就会把ssh信息记录在本地的~/.ssh/known_hsots文件中,切换该系统后再用ssh访问这台主机就会出现冲突警告。

三、解决方案:

1. 手动删除修改known_hsots里面的内容;【建议这个,本人只使用过这个】
2. 修改配置文件“~/.ssh/config”,加上这两行,重启服务器。
   StrictHostKeyChecking no
   UserKnownHostsFile /dev/null

优缺点:
1. 需要每次手动删除文件内容,一些自动化脚本的无法运行(在SSH登陆时失败),但是安全性高;

2. SSH登陆时会忽略known_hsots的访问,但是安全性低;

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java SFTP连接是指使用Java编程语言与远程服务器进行安全文件传输协议(SFTP)通信的过程。在Java中,可以使用JSch库来实现SFTP连接。 以下是使用Java进行SFTP连接的基本步骤: 1. 导入JSch库:在Java项目中,首先需要导入JSch库,以便使用其中的类和方法。可以通过在项目中添加JSch库的依赖或手动导入jar包的方式进行导入。 2. 创建JSch对象:使用JSch类的实例化对象,创建一个JSch对象。 3. 创建Session对象:通过调用JSch对象的getSession方法,创建一个Session对象。在创建Session对象时,需要设置连接的主机名、端口号、用户名和密码等信息。 4. 设置连接属性:可以通过Session对象的setConfig方法设置一些连接属性,例如设置连接超时时间、禁用主机密钥检查等。 5. 连接到远程服务器:通过Session对象的connect方法,与远程服务器建立连接。 6. 打开SFTP通道:通过Session对象的openChannel方法,打开一个SFTP通道。 7. 连接SFTP服务器:通过打开的SFTP通道,调用connect方法连接SFTP服务器。 8. 执行SFTP操作:通过SFTP通道,可以执行一系列的SFTP操作,例如上传文件、下载文件、删除文件等。 9. 关闭连接:在完成SFTP操作后,需要关闭SFTP通道和Session对象,释放资源。 下面是相关问题: 1. 什么是SFTP? 2. 除了JSch,还有其他的Java库可以用于SFTP连接吗? 3. 如何在Java中上传文件到SFTP服务器? 4. 如何在Java中下载SFTP服务器上的文件? 5. SFTP连接过程中可能会遇到的常见问题有哪些? 6. 如何处理SFTP连接异常? 7. SFTP连接是否支持文件夹的操作? 8. SFTP连接是否支持断点续传? 9. SFTP连接是否支持文件权限的设置? 10. SFTP连接是否支持文件的压缩和解压缩操作?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值