SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH为建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
今天要和大家分享的是使用SSH连接操作交换机,完成Telnet交换机可以完成的事情。此次分享主要依赖mina-core-2.0.9.jar、slf4j-api-1.7.7.jar、expectit-core-0.8.1.jar和sshd-core-1.2.0.jar,相关资源大家可以上网找,在Apache官网、Github官网或者Maven上都能找到。把简单封装的Demo分享给大家!
package com.joyce.net.ssh;
import static net.sf.expectit.filter.Filters.removeColors;
import static net.sf.expectit.filter.Filters.removeNonPrintable;
import static net.sf.expectit.matcher.Matchers.regexp;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
import net.sf.expectit.Expect;
import net.sf.expectit.ExpectBuilder;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.sshd.client.SshClient;
import org.apache.sshd.client.channel.ClientChannel;
import org.apache.sshd.client.future.ConnectFuture;
import org.apache.sshd.client.session.ClientSession;
import com.hupu.iman.util.StringUtil;
/**
* SSH基类
* @author Joyce.Luo
* @date 2016-8-8 上午09:12:51
* @version V3.0
* @since Tomcat6.0,Jdk1.6
* @copyright Copyright (c) 2016
*/
public class BaseSS