各位好,小弟是linux新手,最近使用亞馬遜虛擬主機架了一台centos6.4的server,SSH連線只能用文字介面,想說來用一下遠端桌面連線,上網查了一些資料後,我試了freenx、xrdp和vnc,防火牆都關掉了依舊連不上去,想請教使用AWS的老手們,該如何使用遠端桌面連線,謝謝各位。
我是沒用過 AWS(Amazon Web Services, Inc.)的服務,不過一般這種虛擬主機服務不會裝進 X Windoow 及相關 Desktop 的套件,外加 VNC Server 等等…遠端桌面伺服器,所以,你也無法用遠端桌面 Client 連線進去的。
若真有裝,也有啟動服務,可以用 ps 指令來查證看看。
若要調校相關 Linux 的應用服務功能,用 SSH(例 PUTTY 連線程式) 就夠了。
若真要用此功能,是否還要查閱一下 AWS 的服務條款,畢竟,開啟 X Windows ,就會佔去很多主機硬體資源了。
可參照這篇:
Install TightVNC Server in RHEL/CentOS and Fedora to Access Remote Desktops
簡言之,重要步驟如下:
安裝vncserver
<pre class="c" name="code">yum install tightvnc-server
設定使用者的vnc密碼
建議不要用root的身份跑vnc,在一般使用者的身分下執行:
<pre class="c" name="code">$ vncpasswd
Password:
Verify:
就會產生 ~/.vnc/passwd 檔案。
啟用vncserver
該篇文章是預設一開機就啟動vncserver,其實是沒有必要,
可以利用一般使用者ssh連結建立通道之時,再手動啟用。
<pre class="c" name="code">#在本地PC端windows下建立顯示遠端vnc的通道
putty -L 5901:localhost:5901 user@remote.aws.server
#在遠端aws的linux下執行:
vncserver:1
本地vnc client透過ssh連遠端
在PC端的vnc client鍵入 localhost:1
就可透過 ssh 通道來連線,避免未加密的vnc連線的安全問題。
調整~/.vnc/xstartup內容
這時看到的vnc畫面應是最陽春,這時就要設定 ~/.vnc/xstartup 的內容,
指定要開哪種的window manager。
該文是跑GNOME,可能比較耗資源,可以改成openbox或其他不耗資源的wm。
改完後要
<pre class="c" name="code">vncserver -kill :1
殺掉該session後再啟用才會生效。
有些linux版本只要在 xstartup 裡:
<pre class="c" name="code">exec /etc/X11/xinit/xinitrc
就可以跑跟實際console上執行Xorg的畫面一樣的結果。
但如果都不會在linux的console上跑Xorg,可以連xorg-init相關檔案都不裝,
這時就算沒有xinit或startx的檔案,也仍可在vnc裡跑xorg。
我這個作法是以一般使用者身分跑,對外也只用到port 22來傳,
不需動到防火牆的設定。有連線的時候再開啟vncserver,比較不耗資源。
追加日文版 Step by Step 參考
Windows 版 : AWS(EC2) CentOS 6.3をGUI化してVNCで接続
OS X 版 : Amazon EC2をVNCサーバにしてみる