昨天晚上在家很開心的看到 RDCMan 終於推出更新版本 ( v2.7 ),安裝起來研究了一下覺得新功能蠻不錯的,多了很多鍵盤快速鍵可用,也可以在命令提示字元下使用,不過今天到公司用 RDCMan 2.7 開啟我的 *.rdg 連線檔之後,卻發現所有連線的密碼全部都遺失了,全都跟我說 “There were problems decrypting some credentials.” 的錯誤訊息,也就是密碼全部無法解密,我的 RDCMan 可有將近 150 條連線,每一個都重打密碼我會瘋掉,今天研究出解決的辦法,有在用 RDCMan 的人請繼續看下去!
🔥 RDCMan 已被併入 Sysinternals 產品,新版 v2.81 已經發行,建議安裝新版!
首先,如果你用 RDCMan 2.2 版開啟 RDCMan 2.7 版的連線檔 ( *.rdg ) 會無法讀取資料,因為該檔案的內容與格式已經不一樣了,建議先將 RDCMan 升級到 2.7 版再重新開啟檔案。
如果你第一次用 RDCMan 2.7 開啟 RDCMan 2.2 格式的連線檔 ( *.rdg ),RDCMan 2.7 則會自動替你轉換格式,尤其是以密碼儲存格式的改變最大,這會導致你在另一台電腦開啟相同連線檔時會遇到所有連接密碼都無法解密的情況。
關於這個問題其說明如下:
首先原本 RDCMan 2.2 版可以支援將連接遠端桌面的連接密碼儲存為明碼 ( storeAsClearText="True" ),RDCMan 2.7 已經不支援這種以明碼儲存的格式!
新版 RDCMan 2.7 提供兩種將密碼加密的方式,分別是 Logged on user’s credentials 與 Certificate 這兩種 (如下圖示)。
簡單來說,預設的 Logged on user’s credentials 加密方法,會直接抓取 Windows 電腦使用者內建的憑證來加密,這個憑證每台電腦在安裝時都會自動產生,所以每台電腦也都不太一樣,因此在 A 電腦加密後的密碼,到了 B 電腦是解不開的,這就是為什麼我在家開啟的時候可以正常,但用了公司電腦就無法正常解密的原因!如果你想要讓多台電腦共用一個連線檔 ( *.rdg ) 並且讓密碼可以正常加解密,那麼你需要改用自訂 Certificate (憑證) 的加密方式才行了,以下是設定的步驟說明!
1. 先透過 Makecert.exe (憑證建立工具) 產生一個可以共用的憑證,其指令如下:
makecert -sky exchange -r -pe -a sha1 -len 2048 -ss my -n "CN=MyRDCManCert"
※ 建立完憑證後,你看不到任何檔案,因為憑證會自動被安裝到「目前的使用者」的憑證儲存區中,在稍後的步驟會需要匯出。
2. 開啟 RDCMan 2.7 並打開你的連線檔 ( *.rdg ),並在根節點上按下滑鼠右鍵選擇 Properties 項目,然後切換到 Encryption Settings 頁籤,並將 Password encryption 改到 Certificate 選項,並選取剛剛建立的那張憑證,如下圖示。
3. 在你選擇完新的密碼加密方式與憑證後,連線檔中所有的密碼都會全部重新用新憑證加密過,所以你在關閉 RDCMan 時他會提示你儲存這些變更。
4. 最後一個步驟就是將剛剛我們建立的 MyRDCManCert 憑證連同私密金鑰一起匯出,步驟如下圖示:
5. 接著將匯出的憑證檔 (必須是含有私密金鑰的憑證檔) 複製到另一台電腦,並在另一台電腦直接滑鼠雙擊該憑證檔案,透過下列圖示步驟安裝完成。
6. 最後一步就是開啟連線檔 ( *.rdg ),你會發現密碼都可以正常加解密了,因為上述第 2 個步驟已經將密碼加密方式設定在連線檔裡了,你打開 *.rdg 連線檔就可以看到設定!
相關連結