纯Java实现SSH协议
<dependency> <groupId>cn.schoolwow</groupId> <artifactId>QuickSSH</artifactId> <version>{最新版本}</version> </dependency>
//密码方式登录 SSHClient client = QuickSSH.newInstance() .host("127.0.0.1") .port(22) .username("root") .password("123456") .build(); //公钥文件方式登录 SSHClient client = QuickSSH.newInstance() .host("127.0.0.1") .port(22) .username("root") //目前仅支持rsa类型 .publickey("/path/to/id_rsa", "passphrase") .build(); //执行exec命令 String resut = sshClient.exec("pwd"); //获取sftp命令 SFTPChannel sftpChannel = sshClient.sftp(); sftpChannel.xxxxxx();
本软件使用 LGPL 开源协议!
QuickSSH项目是本人参考SSH协议相关RFC文件(包括RFC4250-4254)开发而来,整体项目组织结构和相关代码未借鉴任何项目。本人有参阅jsch项目和mina子项目sshd的相关代码思想,但未复制任何代码。
本项目代码力求言简意赅,一方面是作为本人学习SSH协议的实践,另一方面也希望能够给想学习SSH协议的开发者提供帮助。希望我们国家的开源事业蓬勃发展,另一方面也希望大家能够多多专注于底层实现,夯实我们国家的科技硬基础。