您的位置:首页 > 编程语言 > Java开发

java调用Telnet

2016-04-04 23:42 316 查看
//老师要求用java模拟手动的Telnet过程。

具体要求:

在Linux下搭建Telnet-server。在客户端Telnet连接成功后,服务器会有输出,客户端读取以后,发送用户名和口令,然后会登录到Linux服务器上。

环境:用CentOS 7 64位机器搭建的Telnet,在Win10 64位机器上搭建的Telnet-client。

实现思路:

用apache提供的commons-net-3.4.jar,对Telnet实现java调用。实例化Telnet类后,向目标IP发起请求,请求成功后进入Telnet界面,由于客户端是搭建在Win10上,因此DOS命令下时以>这个符号作为每次命令执行结束的标识符号,而由于服务端在Centos7上,其shell命令是$作为结束符号,因此用$作为命令执行完成后的结束符号,若是Ubuntu则是#。在Telnet登录界面,服务器端返回的字符含Login:,读取该字符串后,写入用户名,然后再读取Password:,再写入密码,此时的写入条件看Telnet服务器成功后返回的登录字符串是怎样一种形式。若登录成功,则进入CentOS,此时应注意将命令执行结束的标记符号修改为$,然后即可向服务端发起需要的命令。若登录失败,则服务端会返回login
incorrect,以返回的字符串作为条件判断登录失败。

大概的思路就是如此。获得Telnet对象,向服务器发请求,获得服务器返回的字符串,从字符串解析需要的目标字符串是否存在。

多想想机器是怎么工作的,模拟的过程。

//第一次编辑 20min
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息