jsch是一个纯java实现的ssh,作用有很多,比如实现一个sftp或者ftp,java执行shell命令等等,今天用做于模拟登陆跳板机然后操作数据库和redis,原理为通过本机的端口进行本地端口转发到跳板机再进行连接mysql,相当于如下命令:
ssh -L 1234:localhost:3306 mysql.server.remote
ssh本地端口转发远程端口转发可参考如下博客:
SSH端口转发(本地端口转发、远程端口转发、动态端口转发)工作原理、应用详解
首先导入maven依赖,数据库用的是mysql
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.53</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.36