2012年6月24日 星期日

使用android手機遠端管理伺服主機 (Manage Windows Servers with Android Phone)

由於智慧型手機的使用越來越普及且功能亦越來越強大,所以具有高度行動力的智慧型手機自然也可以在強調行動管理的資訊環境下,扮演管理角色的裝置。身為網路工程人員,管理為數眾多的網路伺服器與設備,有時候工作在外或休假在外,臨時接到某主機發生異常的緊急通知

,這時遇到手上並無筆電或某些無法使用筆電的場合,利用相對小巧,隨身攜帶的手機連線至各種主機來檢視、診斷或解決問題已成為在緊急情況下的唯一可行方式。

為了能夠最有效率的在緊急情況下利用手機來行動式管理各種主機設備,需要評估並準備二件工作:

適當的手機管理工具 所謂工欲善其事,必先利其器,為了能夠順利的利用手機來執行管理工作,您的手機必需要有適當的管理工具,而 android手機的系統源自於Linux原始碼,而Linux上又擁有為數眾多的工具程式原始碼,所以在android play網站中應該可以找到遠端管理主機所需要的免費工具。
統合平日工作所需要負責管理的主機或設備大抵 上包含了 Windows Server、Linux 系統與CISCO設備,所以吾人需要尋找、下載並安裝下列類型的管理工具:
  1. ssh 用戶端軟體
    遠端管理CISCO設備與Linux伺服器最主要的工具為ssh,所以只要替android選擇適當的ssh用戶端軟體即可,google play 上免費的ssh軟體還不少,功能大多大同小異,經測試後,作者選擇 ConnectBot作為android手機上的ssh用戶端軟體。
  2. 遠端桌面軟體:
    遠端管理圖形介面的Windows系統,使用遠端桌面連線(RDP)為最普遍的方式,所以利用RDP連線軟體來管理Windows伺服器為最熟悉又方便的做法,經搜尋與測試後, 免費的RDP連線軟體,例如 2X Client RDP/Remote Desktop、Remote RDP Lite、Remote Desktop, RDP FREE (Mobisoft)、PocketCloud Remote RDP / VNC等,不過這些免費版本均還提供加強功能(如支援較高安全性,多個連線階段等)的商業版,經測試使用,基於穩定性、使用操作的方便性和安全性的考量,作者最後選擇了PocketCloud Remote RDP專業版,因為它在我的便宜Andriod手機上,效率,穩定性較佳,而專業版則可支援Windows 7/Windows Server 2008的網路層級驗證(NLA)功能。
  3. VPN連線軟體:
    原本許多企業組織就是透過VPN來提供員工遠端存取的能力,自己的網路環境亦使用VPN支援遠端連線,由於目前大部份的Android系統(1.6版以上)本身均已支援 VPN功能和各種通道(Tunnel)協定,所以想要利用android手機建立Client-to-Site的VPN連線並不需要借助額外的軟體,Android系統本身就已存在而足夠。
    vpn
  4. SMB/CIFS用戶軟體:
    在遠端管理Windows 系統上時,某些情況下可能需要存取Windows檔案,這時就會需要透過微軟的檔案印表機的共用存取協定(SMB/CIFS),所以自己還需要一套可支援SMB/CIFS資源共享協定的用戶端軟體,免費的AndSMB就符合自己的需求。
    smb2    smb
安全性的使用考量 管理員基於行動力的考量使用Android手機來執行主機系統的管理工作,還需要特別考慮安全性的問題,因為您需要利用無線網路(3.5G或WiFi)經由網際網路來進行連線管理作業,這種連線方式與傳送區域均屬較高風險性,所以安全性考量的建議如下:
  1. 熟悉 SSH 連線者大多知道,一般SSH用戶均可以支援密碼和公開金鑰的驗證方式,而公開金鑰的驗證方式為較安全的驗證方法,所以使用android的ssh用戶連線時建議最好採用公開金鑰的驗證方式,換言之,您需要先在ConnectBot上建立金鑰對,再將公開金鑰匯出並拷貝到伺服器上,詳細的作法網路上應該可以找到資料。而金鑰對的產生方式亦影響到安全性,建議採用RSA演算法,擁有較快CPU與較大記憶體空間的高擋手機可以使用2048長度金鑰並利用一個複雜密碼保護之。
  2. 如果需要建立VPN通道連線方式,VPN的安全性強度通常和採用的通道協定有著密切相關,所以基於安全性考量最好採用安全性較高的通道協定,就目前Android手機所支援的VPN通道中,自然以憑證為基礎的L2TP/IPSec CRT VPN 為較安全的VPN通道協定,但如果基於較方便使用考量,不希望安裝憑證,則使用一個較長預先共用金鑰的 L2TP/IPSec PSK VPN通道為次要選擇,其它還可選擇的通道協定還包括預設不加密傳輸的 L2TP VPN,PPTP 使用的RC4加密演算法較弱且不支援機器驗證,雖有簡單易於設定,微軟Windows平台上的相容性最高等優點,一般在安全性考優先的條件下並不建議採用。
  3. Windows 的資源共享協定 SMB/CIFS在網際網路直接使用時易被攻擊,請搭配並利用 VPN通道建立後再使用SMB/CIFS協定存取將較為安全。
  4. 遠端桌面連線時請使用憑證為基礎的網路層級驗證(NLA)功能,可提升安全性。
 

 

心得與後記

使用手機以遠端管理組織內部伺服器及設備通常是特殊情境下偶而為之,取其高行動力的好處,並非常態性的管理方式,平時使用時恐需一段時間加以適應,畢竟手機的螢幕尺寸過小,以作者的3.14吋螢幕及240x320解析度的android手機,不論是文字模式的ssh或是圖型介面的RDP操作起來均有些綁手綁腳,如下圖手機擷圖畫面,SSH經由調整顯示字型大小,雖然可視範圍較窄,但字體還可看得清楚,若為遠端桌面連線,硬把Windows 整個桌面全部縮放至手機螢幕,則畫面自然會小到模糊不清,但您可以放大顯示而變成虛擬桌面的延伸效果就會比較容易操作,只不過仍需常在選單的滑鼠和鍵盤功能選項上切換,一開始還著實不太習慣與方便,心想若有同樣android系統的平板電腦,則操作起來應該較為舒適而方便。

ssh

 

rdp