导航:首页 > 源码编译 > javassh管理系统源码

javassh管理系统源码

发布时间:2024-09-13 10:13:36

A. 怎么用java实现ssh协议通信

importch.ethz.ssh2.Connection;
importch.ethz.ssh2.Session;
importch.ethz.ssh2.StreamGobbler;
importcom.io.Debug;
importjava.io.BufferedReader;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.io.OutputStream;
/**
*
*@authorleon.lee
*/
{
privateStringusername="";
privateStringoldpassword="";
privateConnectionconn=;
privatebooleanhasError=false;
privateStringErrorMessage="";
privatebooleanisSuccessfully=false;
privateStringSystemMessage="";

publicstaticfinalStringHOST="127.0.0.1";//serverip
publicbooleanisSuccessfully(){
returnisSuccessfully;
}
publicbooleanisHasError(){
returnhasError;
}
publicStringgetErrorMessage(){
returnErrorMessage;
}
publicvoidsetErrorMessage(Stringmsg){
hasError=true;
this.ErrorMessage=msg;
}
/**
*Createsanewinstanceof<code>ChangeEmailPassword</code>.
*@paramusername
*@paramoldpassword
*/
publicChangeEmailPassword(Stringusername,Stringoldpassword){
this.username=username;
this.oldpassword=oldpassword;
try{
conn=newConnection(HOST);
conn.connect();
/*Authenticate*/
booleanisAuthenticated=conn.authenticateWithPassword(username,oldpassword);
if(isAuthenticated==false){
setErrorMessage("Authenticationfailed.");
conn=;
}
}catch(Exceptione){
conn.close();
conn=;
System.out.println(e);
}
}
publicvoidsetNewPassword(Stringnewpassword){
if(hasError){
return;
}
if(conn==){
return;
}
try{
Sessionsess=conn.openSession();
sess.execCommand("passwd");
InputStreamso=sess.getStdout();
InputStreamerr=sess.getStderr();
OutputStreamout=sess.getStdin();

byte[]buffer=newbyte[500];//其实没有必要这么大.130就差不多了.怕万一有什么提示.
intlength=0;
length=err.read(buffer);
//if(length>0){
//System.out.println("#1:"+newString(buffer,0,length));
////(current)UNIXpassword:
//}
Stringcoldpassword=oldpassword+" ";
out.write(coldpassword.getBytes());
length=err.read(buffer);
//if(length>0){
//System.out.println("#2:"+newString(buffer,0,length));
////(current)UNIXpassword:
//}
Stringcnewpass=newpassword+" ";
out.write(cnewpass.getBytes());
length=err.read(buffer);
if(length>0){
Stringrs=newString(buffer,0,length);
//System.out.println("#3:"+rs);
if(rs.indexOf("BAD")>-1){
sess.close();
conn.close();
setErrorMessage(rs);
return;
}
}
out.write(cnewpass.getBytes());
length=so.read(buffer);
if(length>0){
Stringrs=newString(buffer,0,length);
if(rs.indexOf("successfully")>-1){
this.isSuccessfully=true;
this.SystemMessage=rs;
}
}
/*Closethissession*/
sess.close();
/*Closetheconnection*/
conn.close();
}catch(IOExceptione){
e.printStackTrace(System.err);
}
}
/**
*@
*/
publicstaticvoidmain(String[]args){
ChangeEmailPasswordcep=newChangeEmailPassword("username","oldpassword");
if(cep.isHasError()){
System.out.println(cep.getErrorMessage());
cep=;
return;
}
cep.setNewPassword("newpassword");
if(cep.isHasError()){
System.out.println(cep.getErrorMessage());
cep=;
return;
}
if(cep.isSuccessfully){
System.out.println(cep.getSystemMessage());
}
}
/**
*@returntheSystemMessage
*/
publicStringgetSystemMessage(){
returnSystemMessage;
}
}

B. java ssh椤圭洰锛岀粡杩囦竴涓猘ction锛屾庝箞鑳借烦杞鍒扮栌搴﹂栭〉锻锛燂纻锛燂纻

action閲宺eturn "" 铹跺悗鍦ㄩ厤缃鏂囦欢<result name="" type="redirect">锏惧害缃戝潃</result>

阅读全文

与javassh管理系统源码相关的资料

热点内容
linux好用的编辑器 浏览:998
linuxpartprobe 浏览:315
视频教育网站源码 浏览:513
java指定位数的随机数 浏览:900
300公斤压缩机 浏览:549
java时间转换毫秒数 浏览:290
我的世界怎么开挂在服务器 浏览:848
app怎么退定金 浏览:925
php获取外网地址 浏览:172
单片机lan 浏览:582
html炫酷黑页源码 浏览:955
如何远程更新服务器 浏览:785
服务器导轨怎么安装图解 浏览:984
如何设置加密共享文档 浏览:656
单片机双灯左移右移 浏览:927
网页无法打开pdf 浏览:556
linux命令scp 浏览:519
怎样把图片转为pdf格式 浏览:115
linux变量类型 浏览:840
linux中网卡配置 浏览:704