:::

mRemoteNG使用外部工具來進行SFTP連線 / Setup mRemoteNS’s Ext. App to Integrate SFTP

2014-08-13_172107 - Copy

本文介紹mRemoteNG的外部工具使用,以FileZilla Portable來建立SFTP外部工具為例,並提供整合多個外部工具的mRemoteNG Portable下載

This article introduces the external tool (Ext. App) of mRemoteNG. I used FileZilla Portable as example to demonstrate how to create a SFTP Ext. App in mRemoteNG. Finally I shared my mRemoteNG portable with many Ext. App integrated.


網管人員的需求 / Tools of Server Management

作為機房管理人員,時常會使用各種網路連線方式控制伺服器。管理Windows伺服器,一般會使用遠端桌面連線;管理Linux伺服器,那就要用PieTTY來做SSH連線,或是用RealVNC來連到VNC遠端桌面;有網頁界面的伺服器,那就用瀏覽器開啟HTTPHTTPS網頁。

但是當伺服器一多,要使用的工具複雜起來,而伺服器的連線資訊也散落在各個工具中,使用起來不甚方便。這時候我們就需要一個整合性的管理工具。市面上有些是要收費的,像是Remote Desktop ManagerroyalTS (繼承mRemote之後的收費平臺);免費的則有Terminals,以及本文要講的mRemoteNG

mRemoteNG是什麼? / What’s mRemoteNG

2014-08-13_172621

mRemoteNGmRemote的分支版本,它是一個開放原始碼、具頁籤整合、多通訊協定、遠端連線的整合性管理工具。由於mRemote在2012年之後就停止開發了,所以接下來是由mRemoteNG接手繼續發展。

mRemoteNG支援以下幾種通訊協定:

儘管mRemoteNG支援了很多通訊協定,但是卻沒有支援最重要也是最好用的遠端檔案管理通訊協定:FTP與SFTP。沒關係,mRemoteNG另一個強大的地方,在於他提供了可以彈性設定的外部工具(Ext. App)。我們可以自定義一些常用的應用程式,例如能連線到FTP或SFTP的FileZilla,將之整合成為mRemoteNG的一部分。

外部工具的運作原理 / What is Ext. App?

2014-08-14_005738

mRemoteNG的外部工具是透過Windows的指令列命令來開啟外部工具,然後再把連線位址(Hostname)、連接埠(Port)、使用者名稱(Username)與密碼(Password)等連線設定以參數傳入該工具。

要在mRemoteNG使用外部工具的話,我們需要做幾件事情:

  1. 確定外部工具的所在路徑。我建議將外部工具放入mRemoteNG資料夾中。
  2. 在mRemoteNG中設定外部工具。
  3. 新增連線時,使用外部工具。

以下我以FileZilla來建立SFTP連線使用外部工具為例,介紹如何在mRemoteNG中使用外部工具。

Step 1. 設置外部工具:FileZilla Portable / Setup Ext. App: FileZilla Portable

2014-08-14_100307

要使用外部工具之前,要取得外部工具的程式或腳本。比起原始的FileZilla Client,我一向喜歡使用FileZilla Portable

2014-08-14_011523

下載完之後,請在mRemoteNG底下開啟一個新目錄,叫做「External Applications」,然後將FileZilla Portable安裝該目錄。其中[mRemoteNG]是mRemoteNG的安裝目錄:

[mRemoteNG]\External Applications\FileZillaPortable

Step 2. 設定外部工具 / Configure Ext. App

接下來我們要在mRemoteNG裡面設定外部工具。

2014-08-14_011118

先打開mRemoteNG,開啟Tools裡面的External Tools。

2014-08-14_011226

接著會顯示External Tools的頁籤。如果要新增外部工具,請在這頁內任意地方按滑鼠右鍵,顯示出「New External Tool」。這個設計很容易讓大家迷路,很少人想到是藏在右鍵選單裡面。

2014-08-14_011049

然後會多一列可供設定的外部工具,請在下方外部工具屬性(External Tool Properties)輸入以下設定:

  • Display Name: SFTP
  • Filename: External Applications\FileZillaPortable\App\filezilla\filezilla.exe
  • Arguments: sftp://%Username%:%Password%@%Hostname%:%Port%%Userfield%
  • Options: 勾選Try to integrate

以下說明各欄位的內容:

檔案名稱 / Filename

檔案名稱(Filename)是指外部工具實際上開啟的程式。在此使用相對路徑,去開啟FileZilla Portable中實際上真的FileZilla Client程式的所在位置。

參數 / Arguments

參數(Arguments)是指要輸入外部工具的連線位址、連接埠、使用者與密碼等資訊。以SFTP來說,我們會須要SFTP伺服器主機的連線位址、連接埠(或是預設22連接埠)、使用者(預設可能是root)與密碼。而在mRemoteNG中,這些參數是以前後%的變數替代。目前我的知道可以使用的參數如下:

  • 連線位址:%Hostname%
  • 連接埠:%Port%
  • 使用者:%Username%
  • 密碼:%Password%
  • MAC位址(MAC Address):%Macaddress%
  • 使用者自訂欄位(User Field):%Userfield%

這些參數會在命令列中輸入到FileZilla,讓FileZilla啟動時自動進行參數的連線。那我們怎麼知道FileZilla可以輸入這些參數呢?剛好FileZilla就有提供命令列的操作方式。以SFTP連線方式來說,我們可以直接在後面加入「 sftp://%Username%:%Password%@%Hostname%:%Port%%Userfield% 」設定,就能夠連到SFTP。同樣的,要連到FTP的話,就是把開頭的通訊協定改成ftp即可。

選項 / Options

選項的部分有兩個。等待離開(Wait for exit)打勾時,外部工具結束會連帶的讓mRemoteNG的頁籤也會跟著關閉,但是在嘗試整合(Try to integrate)打勾時預設啟動;嘗試整合(Try to integrate)是將外部工具塞到mRemoteNG當中,成為頁籤的一部分,建議打勾。

好了,那我們就設定好一個外部工具,叫做SFTP了。接下來就是在新增連線時使用這些外部工具囉。

Step 3. 使用外部工具 / Ext. App Usage

mRemoteNG要連線到任何伺服器主機,都要先新增連線。

2014-08-14_102709

在連線(Connections)上按右鍵,選擇「New Connection」。

2014-08-14_102854

連線設定中,要在通訊協定(Protocol)的欄位選擇「外部工具」(Ext. App)。附帶一提,mRemoteNG的中文(繁體) (中華民國)翻譯居然翻成「結束. App」,所以我就換回英文界面了。

2014-08-14_103247

接下來大部分的欄位都會隱藏,只留下外部工具(External Tool)跟連接埠。External Tool欄位選擇剛剛新增的外部工具SFTP

2014-08-14_103453

接著我們填好其他的伺服器資訊。主要包括:

  • Name:連線的名稱
  • Hostname/IP:連線位址
  • Userame:使用者名稱
  • Password:密碼
  • Port:連接埠,SFTP預設是22
  • User Field:在此定義為遠端主機的預設目錄

2014-08-14_114221

然後就能夠在mRemoteNG裡面開啟FileZilla了!這是不是令人感到開心呢?


外部工具的其他應用 / Other Ext. App

看到這邊,你可以知道只要可以使用命令列,你就能夠把任何外部工具整合到mRemoteNG當中。

LazyWinAdmin在「mRemoteNG - External Applications」一文中整理了mRemoteNG可以使用的眾多外部工具。舉例來說:

  • nmap網路掃描、主機分析工具:Zenmap GUI
  • 瀏覽器:Firefox
  • Windows內建工具ping、tracerout

我還想到可以用瀏覽器開啟外部網路的檢查工具,例如APM Cloud Monitor (以前是Just Ping),它可以用其他的伺服器確認網站狀況PingDNS分析Traceroute。特別是當你區域網路可以連線之後,別忘了用APM Cloud Monitor來確認是否別人也可以連線。

2014-08-14_110235

而我把這些工具整合到mRemoteNG Portable版本中,順便整合進PieTTY,在此提供大家下載:

如果你有其他好用的外部工具,也歡迎在下面留言處跟大家討論、分享喔。(例如TeamViewer如何?


結語:使用mRemoteNG的心得 / Conclusion: Usage Experience of mRemoteNG

原本一開始覺得mRemoteNG介面不好用,而且連線功能也沒有像是Remote Desktop Manager有著超級多種的連線工具可供使用,讓人覺得mRemoteNG真的是湊合著用的感覺。

可是我在前年寫完「mRemoteNG使用PieTTY與安裝XULrunner」之後,我因為意外發現LazyWinAdmin的教學,很快就搞懂了怎麼使用外部工具。當時甚至妄想使用ownCloud同步工具,同步mRemoteNG Portable,讓每一臺電腦都可以輕鬆地管理大量的伺服器。可惜Portable還是會有路徑上的問題,只好因此作罷。

直到現在,mRemoteNG已經是我最重要的網管工具。大量伺服器的連線資訊、好用的資料夾分類、靈活的外部工具,這些特色構成了mRemoteNG的無限可能性。真心推薦使用Windows的網管都來使用mRemoteNG!

總共1 則留言, (我要發問)

  1. 關於mRemoteNG的介紹,也可以看這篇:
    節省工具箱 / Jason Tools:[經驗分享]功能強大的集中式主機管理開源軟體
    http://jasontools.blogspot.tw/2017/04/mrenoteng-rdp-ssh-ad-http.html

    回覆刪除

留言工具: