777精品久无码人妻蜜桃-欧美在线观看视频一区-99精品网-伊人网中文字幕-99福利网-国产精品99久久久久久武松影视-日本黄色片免费看-免费观看高清在线观看-人妻少妇被粗大爽9797pw-日韩国产在线播放-国产日产成人免费视频在线观看-一区二区人妻-午夜看毛片-国产精品s-午夜免费av-国产精品色情国产三级在-国产精品资源在线

基于安卓平臺的遠程監(jiān)控linux系統(tǒng)設(shè)備設(shè)計

來源:期刊VIP網(wǎng)所屬分類:建筑工程時間:瀏覽:次

  摘要:越來越多的設(shè)備使用linux作為操作系統(tǒng),為了實現(xiàn)對設(shè)備的遠程監(jiān)控與診斷,一般都將設(shè)備接入互聯(lián)網(wǎng)(或者局域網(wǎng)),再由一臺電腦接入該網(wǎng)絡(luò)進行遠程登錄,達到數(shù)據(jù)交換,傳輸?shù)哪康摹?/p>

  如今,安卓手機已經(jīng)相當普及,由于操作手機的便捷性,人們操作電腦的時間越來越少,使用手機越來越多,本設(shè)計基于安卓系統(tǒng)平臺,實現(xiàn)對linux系統(tǒng)設(shè)備進行遠程監(jiān)控,及時發(fā)現(xiàn)設(shè)備問題,便于設(shè)備使用人員及管理人員使用,并且對數(shù)據(jù)進行存儲,并且有利于之后對數(shù)據(jù)進行進一步分析挖掘。

  關(guān)鍵詞:遠程登錄;遠程監(jiān)控;linux系統(tǒng)設(shè)備

監(jiān)控系統(tǒng)論文

  方案設(shè)計與實現(xiàn):

  1 ssh 遠程登錄

  1.1 ssh簡介。SSH[1] (Secure Shell,安全協(xié)議外殼)是由 IETF ( Internet Engineering Task Force,國際 互聯(lián)網(wǎng)工程任務(wù)組)制定的一族協(xié)議,提供安全遠程登錄、安全文件傳輸?shù)染W(wǎng)絡(luò)服務(wù)功 能,還可以為其它應(yīng)用層協(xié)議提供安全“通道”。SSH 對服務(wù)端和客戶端提供相互的 身份驗證功能,并且保證傳輸數(shù)據(jù)的加密性和完整性。使用 SSH 還有一個額外的優(yōu)點:它會壓縮傳輸?shù)臄?shù)據(jù),縮短傳輸所需的時間。SSH 協(xié)議的軟件程序由客戶端和服務(wù)器兩部分組成,以網(wǎng)絡(luò)應(yīng)用層和傳輸層為基礎(chǔ) [2]。

  1.2 ssh驗證。從客戶端來看,SSH提供兩種級別的安全驗證。

  第一種級別(基于口令的安全驗證)

  只要你知道自己帳號和口令,就可以登錄到遠程主機。所有傳輸?shù)臄?shù)據(jù)都會被加密,但是不能保證你正在連接的服務(wù)器就是你想連接的服務(wù)器[3]。可能會有別的服務(wù)器在冒充真正的服務(wù)器,也就是受到“中間人”這種方式的攻擊。

  第二種級別(基于密匙的安全驗證)

  需要依靠密匙,也就是你必須為自己創(chuàng)建一對密匙,并把公用密匙放在需要訪問的服務(wù)器上。如果你要連接到SSH服務(wù)器上,客戶端軟件就會向服務(wù)器發(fā)出請求,請求用你的密匙進行安全驗證。服務(wù)器收到請求之后,先在該服務(wù)器上你的主目錄下尋找你的公用密匙,然后把它和你發(fā)送過來的公用密匙進行比較。如果兩個密匙一致,服務(wù)器就用公用密匙加密“質(zhì)詢”(challenge)并把它發(fā)送給客戶端軟件。客戶端軟件收到“質(zhì)詢”之后就可以用你的私人密匙解密再把它發(fā)送給服務(wù)器。

  用這種方式,你必須知道自己密匙的口令。但是,與第一種級別相比,第二種級別不需要在網(wǎng)絡(luò)上傳送口令。

  綜上所述,選用安全的ssh協(xié)議來登錄linux設(shè)備。驗證方式由于驗證的數(shù)控機床只支持賬號和口令的方式,所以選用第一種方式。

  1.3 ssh庫選用。在本項目中引入jsch庫,jsch 是一個基于ssh的java庫,可以支持安卓設(shè)備用于ssh登錄以及文件傳輸,shell腳本操作,由于android基于java語言進行開發(fā),所以可以以導(dǎo)入jar包的方式導(dǎo)入jsch庫。

  1.4異步任務(wù)庫選用。

  此外,還有一個很重要的庫。Rx(ReactiveX,響應(yīng)式編程)是一種事件驅(qū)動的基于異步數(shù)據(jù)流的編程模式,整個數(shù)據(jù)流就像一條河流,它可以被觀測(監(jiān)聽),過濾,操控或者與其他數(shù)據(jù)流合并為一條新的數(shù)據(jù)流。而RxJava是.Net Rx在JVM上的實現(xiàn)。RxJava可以應(yīng)用于大部分基于JVM的語言,如Scala,Groovy等。

  Rxjava引入,用于異步任務(wù)操作,并且可以在主線程子線程中切換,因為連接,傳輸文件屬于耗時操作,不能夠在主線程中進行,rxjava還帶有錯誤處理機制,在連接錯誤的時候可以進行處理。

  RxJava特點

  ·函數(shù)響應(yīng)式編程

  ·異步

  ·事件驅(qū)動的

  ·基于觀察者模式

  ·專門的出錯處理,當使用RxJava出現(xiàn)錯誤時,它不會直接拋出異常,而是會執(zhí)行OnError()方法;

  ·并發(fā),可以很容易實現(xiàn)多線程

  1.5建立連接。

  private void initPingCNCData(final String ip, final String password, final CallbackContext callbackContext){

  Observable.create(new Observable.OnSubscribe() {

  @Override

  public void call(Subscriber subscriber) {

  //1.ping device,檢測對方ip是否能聯(lián)通

  boolean res = AllUitls.ping(ip, 3);

  //2.建立session連接

  JSch jsch = new JSch();

  try {

  session = jsch.getSession(HOST, ip, 22);

  session.setPassword(password);

  session.connect();

  int result = 0;

  //根據(jù)返回值判斷是否連接成功

  if (!res) {

  callbackContext.error("connectfalse");1 [2] [3]

  推薦閱讀:橋梁施工監(jiān)控論文投哪個期刊

永州市| 商洛市| 庆阳市| 大港区| 车致| 龙里县| 吉安县| 吉木乃县| 清水县| 英德市| 大田县| 隆子县| 凤台县| 海门市| 镇远县| 韶关市| 稷山县| 娄底市| 包头市| 西盟| 平阴县| 曲阜市| 湖口县| 永靖县| 常熟市| 聊城市| 隆子县| 深水埗区| 从化市| 铜川市| 新营市| 雅安市| 曲麻莱县| 靖江市| 蛟河市| 柞水县| 惠来县| 龙泉市| 司法| 新闻| 东台市|