您当前位置:设计在线网 >> 网络安全 >> 浏览文章

java方式ssh协议远程调用shell

分享到:
本文章讲述了java方式ssh协议远程调用shell.

 

要作用是可以简单的使用java,以ssh协议,远程登录linux,执行shell命令,或者脚本;可以方便的实现一些特殊的用例,可以持续集成起来,自动的执行下面简单介绍了前一段时间我学的内容,比较简单,如有什么问题,欢迎提出来 Orion SSH2一 概述Orion SSH2 是一个纯 Java 实现的 SSH-2 协议包,可让 Java 程序透过 SSH 协议连接到服务器上执行远程命令和文件传输功能。 Jar包wget http://172.29.62.152/software/tools/ orion-ssh2-214.jar源码包 wget http://172.29.62.152/software/tools/ orion-ssh2-214.tar.gz 源码包下有example目录,包含所有最常用的使用方式,下面的说明也是参考这个的。 二 原理介绍

SSH协议是建立在应用层和传输层基础上的安全协议,它主要由以下三部分组成,共同实现SSH的安全保密机制。

传输层协议,它提供诸如认证、信任和完整性检验等安全措施,此外它还可以任意地提供数据压缩功能。通常情况下,这些传输层协议都建立在面向连接的TCP数据流之上。

用户认证协议层,用来实现服务器的跟客户端用户之间的身份认证,它运行在传输层协议之上。

连接协议层,分配多个加密通道至一些逻辑通道上,它运行在用户认证层协议之上。

当安全的传输层连接建立之后,客户端将发送一个服务请求。当用户认证层连接建立之后将发送第二个服务请求。这就允许新定义的协议可以和以前的协议共存。连接协议提供可用作多种目的通道,为设置安全交互Shell会话和传输任意的TCP/IP端口和X11连接提供标准方法 验证方式的介绍:第一次连接机器时,服务端会返回host key ,并以fingerprint的形式显示出来,让你确认,如下:RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d确认能够连接该机器后,会将服务器的host key存到本地文件know_hosts中,以后再次访问时,直接会使用存的host key来验证服务器的合法性$ tail -1 $HOME/.ssh/known_hostsssh-server.example.com,12.18.429.21 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA06jFqviLMMJ/GaJNhGx/P6Z7+4aJIfUqcVjTGQasS1daDYejcfO AWK0juoD+zS3BsGKKYKPA5Gc5M8v+3NHLbPn1yTpDBgl6UzA0iiMPCbwnOLx61MrBTk+/qJ I9kyDaJf4LEY6Chx4IJP0ZN5NmAlCtXQsca3jwFAF72mqPbF8=之后,就是验证登录用户的合法性,一般有以下方式普通主要使用方式:第一种方式(基于口令的安全验证),只要你知道自己的帐号和口令,就可以登录到远程主机第二种方式(基于密匙的安全验证),需要依靠密匙,也就是你必须为自己创建一对密匙,并把公有密匙放在需要访问的服务器上(一般存在服务器的authorized_keys文件中)之后,就可以通过一个连接,建立多个session(即一个连接,可对应于多个通道),来执行命令,或者脚本。 三 例子使用说明(参考例子Basic.java,PublicKeyAuthentication.java)1通过ssh协议,登录机器执行命令或者脚本(注意环境变量,ssh登录只读取shell的配置,即.bashrc)新建一个物理的TCP/IP连接

Connection conn = new Connection(ip);conn.connect();登录用户验证boolean isAuthenticated = conn.authenticateWithPassword(username, password);创建一个会话,底层为通道机制,一个连接可以有多个通道,即多个会话Session sess = conn.openSession(); 在会话中执行某个命令,或者脚本,一个会话仅支持一次命令的执行。想要执行多个命令的话,可以合成一个复杂命令;或者封装为一个脚本,或者使用多个会话,一个会话一条命令sess.execCommand(command); 读取会话的执行结果,注意有标准输出与错误输出两个

推荐阅读:
网络存储DAS、NAS和SAN介绍
SSH协议介绍
nas的一些基本介绍
上一篇:nas协议中UMTS系统及重要接口协议
下一篇:没有了
推荐文章  
赞助商链接  
热门排行  
主题推广  
中国设计在线网 All Rights Reserved. 互联网违法和不良信息举报
信息产业部备案号:湘ICP备09001063号