導航:首頁 > 源碼編譯 > 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