:::
顯示具有 Software/mRemoteNG 標籤的文章。 顯示所有文章

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

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!

(more...)

mRemoteNG使用PieTTY與安裝XULrunner

mRemoteNG使用PieTTY與安裝XULrunner

mRemoteNG - mosic

作為一位網管,我時常需要遠端連線到各種伺服器。有的伺服器是Windows,那就用遠端桌面連線(Remote Desktop Protocol,RDP);有的是Linux,那就用SSH (Secure Sheel Protocol);有的則是用網頁形式操作,GUI的操作介面也很方便。

最近發現mRemoteNG可以整合上述三種連線方式,不僅可以幫我記錄各個不同伺服器的帳號密碼,也可以用資料夾將站台分門別類。

mRemoteNG有一些部分可供自訂。像是可以把SSH連線從原始的PuTTY換成國人客製化的PieTTY;網頁引擎也可以不使用IE而用Firefox的Gecko。以下我就介紹一下mRemoteNG,然後說明上述兩種自訂功能如何使用。


mRemoteNG特色

  • 支援多種連線方式:RDPVNCSSH (Version 1 & 2)Telnet、Rlogin、RAW、HTTP、HTTPS、ICA、Ext. APP
  • 伺服器資料除了記錄伺服器連線位置之外,還能夠記錄密碼、設定顯示方式等等細節。
  • 用資料夾將伺服器分門別類,方便整理。
  • 頁籤顯示各連線資料,也可以將頁籤拉出來成為獨立視窗。讓你一口氣連很多伺服器時不容易混亂。

PieTTY:替換PuTTY的SSH連線工具

PieTTY是改自於PuTTY,並做了亞洲多國語系字元的調整。以下是PieTTY網頁的介紹:

PuTTY 是個小巧方便的 Telnet/SSH 安全遠端連線程式, 但用於非英語系文字時有非常多的問題, 而且它對於初學者來說過於複雜的使用界面也為人詬病已久。 PieTTY 則是源自於 PuTTY ,修正與完整支援亞洲等多國語系字元、 並在使用界面上大幅改進、易學易用的版本。

下載PieTTY
擺放PieTTY

下載PieTTY的之後,請放到以下資料夾:

  • <mRemoteNG-Portable下載位置>\

放置之後PieTTY會在以下路徑:

  • <mRemoteNG-Portable下載位置>\pietty0400b14.exe

20121207-170157 下載pietty - draw

舉例來說,我的mRemoteNG擺在D:\ Program Files (x86)裡面,實際路徑就會變成:

  • D:\Program Files (x86)\mRemoteNG-Portable\pietty0400b14.exe

Gecko:替換Internet Explorer的Firefox使用排版引擎

mRemoteNG預設使用Internet Explorer來開啟網頁,可是我個人比較偏好使用Firefox的網頁排版引擎Gecko(當然,如果有Google Chrome的WebKit就更好了)。

下載XULrunner

要讓mRemoteNG使用Gecko開啟網頁,你必須下載XULrunner

擺放XULrunner

下載XULrunner的之後,請放到以下資料夾:

  • <mRemoteNG-Portable下載位置>\xulrunner

放置之後PieTTY會在以下路徑:

  • <mRemoteNG-Portable下載位置>\xulrunner\xulrunner

舉例來說,我的mRemoteNG擺在D:\ Program Files (x86)裡面,實際路徑就會變成:

  • D:\Program Files (x86)\mRemoteNG-Portable\xulrunner\xulrunner

    設定mRemoteNG

    20121207-170632 options - draw

    將檔案就定位之後,接下來我們回到mRemoeNG設定。請到Tools裡面的Options,打開左邊導覽的Advanced,你會看到上圖的畫面。

    接著勾選「Use custom Putty path:」,輸入PieTTY的位置:「<mRemoteNG-Portable下載位置>\pietty0400b14.exe」(例如:D:\Program Files (x86)\mRemoteNG-Portable\pietty0400b14.exe)

    然後在「XULrunner path:」輸入XULrunner的位置:「<mRemoteNG-Portable下載位置>\xulrunner\xulrunner」(例如:D:\Program Files (x86)\mRemoteNG-Portable\xulrunner\xulrunner)

    檢查設定是否成功

    image

    首先我們先來檢查PieTTY是否設定妥當。當你連線到SSH網站時,如果發現上面多一排「連線(C) 編輯(E) 檢視(V) 視窗(W) 選項(O) 說明(H)」,那就是已經是在PieTTY底下連線囉。

    image

    然後我們來看看XULrunner是否設置成功。回到mRemoteNG一開始的Components Check,按下右下角的「Refresh」,你就會看到Gecko (Firefox) Rendering Engine (HTTP/S) Check變成綠色的,表示設定妥當。

    使用Gecko開啟網頁

    20121207-171849 Gecko - draw

    就算安裝好Gecko,mRemoteNG預設依然是用Internet Explorer來連線。你必須在建立HTTP或HTTPS站台的時候,在左下角的Rendering Engine改成「Gecko (Firefox)」才行,請參見上圖。


    結語:mRemoteNG不足之處

    支援的連線方式不夠全面

    雖然mRemoteNG已經支援許多種連線方式,但是對我們來說仍有幾個不足之處,像是不支援FTP、SFTP檔案傳輸(現在我主要依賴FileZilla Portable在使用FTP);不支援流行的遠端連線TeamViewer。另外一個類似mRemoteNG的工具軟體 Remote Desktop Manager就有支援上述的功能,可惜是收費軟體就是。

    網頁沒有密碼記憶功能

    mRemoteNG雖然提供了HTTP/HTTPS網頁開啟的連線方式,可是沒有記憶密碼的功能,所以每次都要重新輸入。

    缺乏中文化

    另一方面就是mRemoteNG並沒有中文化語系,而且他的語系檔編譯成了dll動態連結檔,要自行中文化並沒有這麼簡單。這都是比較可惜的地方。

    儘管mRemoteNG不盡完美,但對於一個開放原始碼的工具來說,已經算是幫得上許多忙了,在此推薦給大家!

    (more...)