首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用j2ssh实现不需要主机密钥验证的ssh连接

使用j2ssh实现不需要主机密钥验证的ssh连接
EN

Stack Overflow用户
提问于 2015-09-11 11:17:42
回答 1查看 2.2K关注 0票数 1

我有两个连接可信的服务器。我想通过SFTP传输文件,通过ssh连接,没有主机密钥验证。

我正在使用Java1.7和Redhat Linux操作系统。

以前,我使用j2ssh-core0.2.9.jar连接到ssh,如下所示:

代码语言:javascript
复制
SshConnectionProperties properties = new SshConnectionProperties();
SshClient ssh = new SshClient();            
properties.setHost(host);
properties.setPort(port);               
ssh.setSocketTimeout(readTimeOut);
ssh.connect(properties,new IgnoreHostKeyVerification());    

在j2ssh特立独行,

代码语言:javascript
复制
        SshConnector con = SshConnector.createInstance();
        con.getContext().setHostKeyVerification(
                new ConsoleKnownHostsKeyVerification());
        con.getContext().setPreferredPublicKey(
                Ssh2Context.PUBLIC_KEY_SSHDSS);
        SocketTransport t = new SocketTransport(hostname, port);
        t.setTcpNoDelay(true);
        SshClient ssh = con.connect(t, username);
        Ssh2Client ssh2 = (Ssh2Client) ssh;

请建议如何在j2ssh中实现这一点。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-11 17:58:17

要在没有主机密钥验证的情况下进行连接,只需从J2SSH Maverick代码段中删除以下代码

代码语言:javascript
复制
con.getContext().setHostKeyVerification(
                new ConsoleKnownHostsKeyVerification());

但是,您正在删除协议中对服务器进行身份验证的重要部分。让你完全接受中间人的攻击。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32522183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档