当前位置: 首页 > wzjs >正文

小企业网站源码seo如何优化关键词上首页

小企业网站源码,seo如何优化关键词上首页,ios应用程序开发,怎么做简单的微信浏览的网站ganymed-ssh2连接openssh 8.2 存在的问题 ganymed-ssh2是一个ssh-2协议实现,因为该项目比较老旧,当sshd服务使用较新的openssh时,一般情况下是无法正常建立ssh连接的。 访问sshd的代码,如下所示: public class Mai…

ganymed-ssh2连接openssh 8.2

存在的问题

ganymed-ssh2是一个ssh-2协议实现,因为该项目比较老旧,当sshd服务使用较新的openssh时,一般情况下是无法正常建立ssh连接的。

访问sshd的代码,如下所示:

public class Main {public static void main(String[] args) throws IOException {String ipAddress = "127.0.0.1";ch.ethz.ssh2.Connection conn = new ch.ethz.ssh2.Connection(ipAddress,22);conn.connect();boolean isAuthenticated = conn.authenticateWithPassword("username", "password");if (isAuthenticated == false)throw new IOException("Authentication failed.");}
}

当使用如下代码访问sshd时,系统会报如下异常:
在这里插入图片描述

解决方法

找到报错代码

下载ganymed-ssh2源码,源码地址为https://www.ganymed.ethz.ch/ssh2/。
在这里插入图片描述

找到ch.ethz.ssh2.transport.KexManager文件,搜索异常关键字"Cannot negotiate, proposals do not match."。代码如下所示:

kxs.np = mergeKexParameters(kxs.localKEX.getKexParameters(), kxs.remoteKEX.getKexParameters());if (kxs.np == null)throw new IOException("Cannot negotiate, proposals do not match.");

从中可知,mergeKexParameters方法返回的kxs.np为空,导致报上述异常。进入mergeKexParameters方法,发现异常原因是因为getFirstMatch方法返回NegotiateException。

打印客户端和服务端协商的算法过程

private String getFirstMatch(String[] client, String[] server) throws NegotiateException{if (client == null || server == null)throw new IllegalArgumentException();if (client.length == 0)return null;log.log(20, "------------------------------");for (int i = 0; i < client.length; i++){log.log(20, "client-->" + client[i]);for (int j = 0; j < server.length; j++){log.log(20, "server-->" + server[i]);if (client[i].equals(server[j]))return client[i];}}log.log(20, "------------------------------");throw new NegotiateException();}
1750672202863 : ch.ethz.ssh2.transport.TransportConnection: Sent SSH_MSG_KEXINIT 478 bytes payload
1750672202864 : ch.ethz.ssh2.transport.TransportConnection: Received SSH_MSG_KEXINIT 929 bytes payload
1750672202868 : ch.ethz.ssh2.transport.KexManager: ------------------------------
1750672202868 : ch.ethz.ssh2.transport.KexManager: client-->diffie-hellman-group-exchange-sha1
1750672202868 : ch.ethz.ssh2.transport.KexManager: server-->curve25519-sha256
1750672202868 : ch.ethz.ssh2.transport.KexManager: server-->curve25519-sha256
1750672202868 : ch.ethz.ssh2.transport.KexManager: server-->curve25519-sha256
1750672202868 : ch.ethz.ssh2.transport.KexManager: server-->curve25519-sha256
1750672202868 : ch.ethz.ssh2.transport.KexManager: server-->curve25519-sha256
1750672202868 : ch.ethz.ssh2.transport.KexManager: kex_algo=diffie-hellman-group-exchange-sha1
1750672202868 : ch.ethz.ssh2.transport.KexManager: ------------------------------
1750672202868 : ch.ethz.ssh2.transport.KexManager: client-->ssh-rsa
1750672202868 : ch.ethz.ssh2.transport.KexManager: server-->rsa-sha2-512
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->rsa-sha2-512
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->rsa-sha2-512
1750672202869 : ch.ethz.ssh2.transport.KexManager: server_host_key_algo=ssh-rsa
1750672202869 : ch.ethz.ssh2.transport.KexManager: ------------------------------
1750672202869 : ch.ethz.ssh2.transport.KexManager: client-->aes256-ctr
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: ------------------------------
1750672202869 : ch.ethz.ssh2.transport.KexManager: client-->aes256-ctr
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->3des-cbc
1750672202869 : ch.ethz.ssh2.transport.KexManager: enc_algo_client_to_server=aes256-ctr
1750672202869 : ch.ethz.ssh2.transport.KexManager: enc_algo_server_to_client=aes256-ctr
1750672202869 : ch.ethz.ssh2.transport.KexManager: ------------------------------
1750672202869 : ch.ethz.ssh2.transport.KexManager: client-->hmac-sha1-96
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512
1750672202869 : ch.ethz.ssh2.transport.KexManager: client-->hmac-sha1
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512-etm@openssh.com
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512-etm@openssh.com
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512-etm@openssh.com
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-512-etm@openssh.com
1750672202869 : ch.ethz.ssh2.transport.KexManager: client-->hmac-md5-96
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256
1750672202869 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256
1750672202870 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256
1750672202870 : ch.ethz.ssh2.transport.KexManager: client-->hmac-md5
1750672202870 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256-etm@openssh.com
1750672202870 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256-etm@openssh.com
1750672202870 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256-etm@openssh.com
1750672202870 : ch.ethz.ssh2.transport.KexManager: server-->hmac-sha2-256-etm@openssh.com
1750672202870 : ch.ethz.ssh2.transport.KexManager: ------------------------------
1750672202870 : ch.ethz.ssh2.transport.TransportManager: Receive thread: error in receiveLoop: Cannot negotiate, proposals do not match.
1750672202870 : ch.ethz.ssh2.transport.TransportManager: Receive thread: back from receiveLoop

从日志可知,客户端支持的算法有:hmac-sha1-96,hmac-sha1,hmac-md5-96,hmac-md5四种;服务端支持的算法有:hmac-sha2-512,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha2-256-etm@openssh.com四种。客户端和服务端没有共同的算法。

查看服务器/etc/ssh/sshd_config文件,可知,hmac算法配置在MACs项中。 修改sshd_config,新增算法hmac-sha1-96,hmac-sha1,hmac-md5-96,hmac-md5,然后重启sshd服务。

测试ssh连接

idea编译ganymed-ssh2

解压下载的源码

unzip ganymed-ssh2-build210.zip -d ganymed

添加pom.xml配置

ganymed-ssh2是一个普通的java工程,不方便编译和打包测试,将其转换为maven项目。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>ch.ethz.ssh2</groupId><artifactId>test-ganymed</artifactId><version>1.0</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-shade-plugin</artifactId><version>3.2.4</version><executions><execution><phase>package</phase><goals><goal>shade</goal></goals><configuration><transformers><transformerimplementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"><mainClass>ch.ethz.ssh2.Main</mainClass></transformer></transformers></configuration></execution></executions></plugin></plugins></build>
</project>

导入idea

在idea中鼠标右键选中pom.xml, 点击"Add as Maven Project"。此时,ganymed项目可以在idea下,通过maven插件进行编译和打包。

http://www.dtcms.com/wzjs/341103.html

相关文章:

  • 谁有做爰网站号常州网站建设
  • 全国建设地产网站在线crm系统
  • 微网站 微信网络推广平台有哪些公司
  • 古典网站建设品牌运营公司
  • 建设网站的主要功能有哪些做网络推广需要多少钱
  • 苏中建设集团网站网址国际购物网站平台有哪些
  • 网站后台需要多少网站提交
  • 门窗网站源码网络推广方式有哪些
  • 机械加工订单百度seo公司电话
  • 郑州网站优化平台网站诊断分析
  • 国内外做的比较好的家装网站个人博客网站模板
  • 哪个网站买域名好seo优化交流
  • 免费网站软件正能量国内高清视频素材网站推荐
  • 可以做长页海报的网站兰州网络推广电话
  • 做农产品网站湖北网络推广公司
  • 网站错误404网络推广经验
  • 盘锦做网站建设的产品软文范例1000字
  • 一元云购手机网站建设yahoo搜索引擎入口
  • 电子工程网注册常用的seo查询工具有哪些
  • 讯美深圳网站建设经典营销案例
  • 网站要怎么做关键词数据推广公司
  • 网站开发代码制作app平台需要多少钱
  • 在线电影网站建设百度公司网站推广怎么做
  • 惠州网站建设哪家强推广代理
  • 推广网站怎么建设和维护常见网络营销推广方法
  • 高品质网站开发网络广告策划与制作
  • 如何制作学校网站电商网站模板
  • 品牌宣传网站建设google play商店
  • 外贸做网站建设哪家好网店推广是什么
  • 如何做视频网站百度网盘搜索引擎入口