如何建置比較安全的遠端桌面
開放遠端桌面的確很方便.你可以隨時隨地使用你家中的電腦.但是你必須要承擔一些風險.
假設你的遠端桌面軟體沒有提供密碼加密功能.那就會很危險了.這篇文章主要讓大家了解如何用 ssh tunnel.
簡單來說就是利用加密的技術.來防範有心人士的攔截.
材料 : RealVNC (Free Edition), Putty, ssh server, 防火牆
首先你要先有 ssh server.如果你那裡沒有 linux 的機器那我要跟你說抱歉了.
如果你是微軟使用者,那你可能要花錢去買 ssh server for windows.
就目前我知道的範圍.我還沒有看過 ssh server 是免費的.如果有人知道歡迎跟大家分享.謝謝.
再來你也要有個防火牆裝置.通常家用型的 ip 分享器都會有內建.
開放 ssh 的 port 轉向到 你的 ssh server.
預設是 22 port.建議隨便用其他不常用的 port.
常見的遠端桌面軟體大概有微軟的遠端桌面.賽門鐵克的 PC Anywhere.還有 RealVNC.
請自己選一套你喜歡的軟體ㄅ.我個人建議用 RealVNC. 你可以直接下載免費版本使用.
假設你上面的步驟都完成了.
那就可以開始玩用比較安全的遠端桌面了.
它的原理蠻簡單的.就是利用 ssh 加密的通道來連接遠端桌面.
將自己的某個 port 綁到遠端的某個位址的 port.
ssh會幫你做forward的動作.就如同你已經連接到家裡的區域網路內.
所以你需要下面的設定.
如果你使用 ssh secure shell 請參考下面圖解 :
首先先選擇 Tunneling 的頁籤(tab), 新增Outgoing的Tunneling. 按 Add 後會出現下面對話方塊.
如果遠端機器的VNC server在 5901 port. 那在上面的 Listen Port 就需要寫 5901. 在 Destination Port可以自己定義. 不過按照我的習慣我會設定和遠端機器一致.
設定後, 就進行連線. 經由認證後, 你就可以打開 VNC 軟體. 連 localhost:5901 這樣就等同連線到遠端機器的 5901 port.
如果你使用 putty 請參考下面圖解 :
在putty也是可以建立 ssl 通道(tunnel). 在 Category -> SSH -> Tunnels 如下圖所示.
Source port 要對應到 VNC Server 的 port. 通常會是 5900 or 5901. Destination port 就打 localhost:5901 後面的數字可以自行調整. 打完後按 Add.
就可以在 Forwarded ports內看到 L5901 localhost:5901 的描述. 連線後, VNC Viewer 就可以連 localhost:5901 這樣就等同於連接到遠端的VNC Server
如果你用 Linux & Mac OS X 請參考下面範例 :
ssh -g -L 5901:localhost:5901 -l accountname www.yourhost.com
經過上面的連接.
你就可以自由的連到家中的遠端桌面了.
在連接過程中全程受到 ssh 加密的保護.
雖然也是有可能被破解.
不過比起你直接連還要安全拉.
希望這樣的小分享對大家有用.
😀