java ssh方式拷贝远程服务器上文件

在java程序中需要拷贝远程服务器上的文件,如果用http或ftp的方式,需要在远程服务器上开启相应的服务。而ssh服务默认在服务器上就是开启的,用ssh方式拷贝远程文件就比较方便了,这需要用java实现ssh协议。stackoverflow上对这个有讨论,有如下几种方式:

1. jsch

http://www.jcraft.com/jsch/

纯java实现了ssh2协议,可以连接远程sshd服务器,然后可以执行shell命令,传输文件….等。例子比较齐全,看了下代码,API封装的比较ugly,不是很友好

2. Ganymed SSH-2 for Java

http://www.cleondris.ch/opensource/ssh2/

也是纯java实现了ssh2协议,这个库代码比较老,一直没更新了,只在J2SE 1.4.2 和 5.0上测试过。网上有些例子

3. sshj

https://github.com/shikhar/sshj

API封装的很友好,功能齐全。

4. sshd

http://mina.apache.org/sshd-project/index.html

基于mina,可以同时支持ssh服务端和客户端。

发表评论

电子邮件地址不会被公开。 必填项已用*标注