Total Pageviews

Saturday 21 January 2012

在centos 下安装远程桌面xrdp,可实现通过3389管理及vnc服务查看其它桌面

能通过win的3389管理工具操作linux vps吗?这个肯定是可以的,只是大部分人选择了vnc。但是,xrdp相对于VNC还是有不少好处的:
1、连线的过程中有加密
2、可设定登入时的解析度
3、方便切换输入法
4、操作起来似乎比VNC 还流畅
其实xrdp 是一个Linux 远端桌面的"中继程式",为何说xrdp 是"中继程式" 呢?!因为它还是借用了VNC 的模组(libvnc.so),并且xrdp 除了可以让你用远端桌面连线存取Linux 桌面之外,还能透过它来登入其它Windows 的远端桌面、VNC Server,以及任何也有安装xrdp 的主机。 并且是允许你用不同帐号进行" 多重登入 ",这在Windows的系统只有Windows Server才支援。
所以说,安装了xrdp 等于是安装了:
1、RDP Server (允许多重登入)
2、RDP Viewer
3、XRDP Viewer
4、VNC Viewer
安装过程:
1. 安装xrdp 前请先确定系统已经安装了gcc, pam-devel, openssl-devel,可使用下列指令安装:
yum install gcc pam-devel openssl-devel -y
2.到http://xrdp.sf.net下载xrdp的原始档并安装:
cd /usr/local/src
wget http://jaist.dl.sourceforge.net/sourceforge/xrdp/xrdp-0.4.2.tar.gz
tar -xzvf xrdp-0.4.2.tar.gz
cd xrdp-0.4.2
make
make install
3. 编辑/etc/rc.d/rc.local,加入:
/usr/local/xrdp/xrdp_control.sh start
4、xrdp 的设定档
相关设定档放在"/etc/xrdp/",比较重要的是"/etc/xrdp/sesman.ini" 这个档案,在[Globals] 中的这一行:
ListenAddress=127.0.0.1
表示只允许从本机连结RDP Server,如果要从别的主机进行操作(配合登入xrdp 的"sesman-any" 选项),可将"127.0.0.1″ 改成"0.0.0.0″。
5、启动xrdp
启动xrdp 指令:
/usr/local/xrdp/xrdp_control.sh start
登入xrdp
启动xrdp 之后,你的Linux 主机基本上已经具备了接受远端桌面连线的功能,其Port 为3389,请用Windows 的"远端桌面连线" 进行存取。
连线后,首先会看到xrdp 的登入视窗,你可以选择以下6个选项之一:
sesman-Xvnc: 使用xrdp 内建的libvnc.so 模组登入本机,本机不需启动VNC Server。
console: 登入本机的VNC Server。
vnc-any: 登入其它已经启动VNC Server 的主机。
sesman-any:登入其它有安装xrdp 的主机。
rpd-any: 登入其它已经启动远端桌面(RDP Server) 的Windows 电脑或主机。
sesman-X11rdp: 这个项目我没有测试成功,从字面上的意思来看,应该​​是连结本机端由X Server 提供的RDP,但目前Linux 的桌面应该还没有具备这样的功能!
-----------------------------------------------------------------
Linux 上的遠端桌面中繼程式: xrdp


"遠端桌面(RDP)" 相對於 VNC 的好處應該是:
  1. 連線的過程中有加密
  2. 可設定登入時的解析度
  3. 方便切換輸入法
  4. 操作起來似乎比 VNC 還流暢
現在遠端桌面可不再是 Windows 的專利,在 Linux 上要做到遠端桌面的存取,如果純粹只要有 Viewer 的功能可安裝 "rdesktop",如果要同時有 Viewer 及 Server 的功能請安裝 "xrdp",以下介紹 xrdp。
其實 xrdp 是一個 Linux 遠端桌面的 "中繼程式",為何說 xrdp 是 "中繼程式" 呢?!因為它還是借用了 VNC 的模組 (libvnc.so),並且 xrdp 除了可以讓你用遠端桌面連線存取 Linux 桌面之外,還能透過它來登入其它 Windows 的遠端桌面、VNC Server,以及任何也有安裝 xrdp 的主機。並且是允許你用不同帳號進行 "多重登入",這在 Windows 的系統只有 Windows Server 才支援。
所以說,安裝了 xrdp 等於是安裝了:
  1. RDP Server (允許多重登入)
  2. RDP Viewer
  3. XRDP Viewer
  4. VNC Viewer

安裝 xrdp

1. 安裝 xrdp 前請先確定系統已經安裝了 gcc, pam-devel, openssl-devel,可使用下列指令安裝:
yum install gcc pam-devel openssl-devel
2. 到 http://xrdp.sf.net 下載 xrdp 的原始檔並安裝:
cd /usr/local/src
wget http://jaist.dl.sourceforge.net/sourceforge/xrdp/xrdp-0.4.2.tar.gz
tar -xzvf xrdp-0.4.2.tar.gz
cd xrdp-0.4.2
make
make install
3. 編輯 /etc/rc.d/rc.local,加入:
/usr/local/xrdp/xrdp_control.sh start

啟動 xrdp

啟動 xrdp 指令:
/usr/local/xrdp/xrdp_control.sh start

xrdp 的設定檔

相關設定檔放在 "/etc/xrdp/",比較重要的是 "/etc/xrdp/sesman.ini" 這個檔案,在 [Globals] 中的這一行:
ListenAddress=127.0.0.1
表示只允許從本機連結 RDP Server,如果要從別的主機進行操作 (配合登入 xrdp 的 "sesman-any" 選項),可將 "127.0.0.1″ 改成 "0.0.0.0″。

登入 xrdp

啟動 xrdp 之後,你的 Linux 主機基本上已經具備了接受遠端桌面連線的功能,其 Port 為 3389,請用 Windows 的 "遠端桌面連線" 進行存取。

連線後,首先會看到 xrdp 的登入視窗,你可以選擇:
  1. sesman-Xvnc: 使用 xrdp 內建的 libvnc.so 模組登入本機,本機不需啟動 VNC Server。
  2. console: 登入本機的 VNC Server。
  3. vnc-any: 登入其它已經啟動 VNC Server 的主機。
  4. sesman-any:登入其它有安裝 xrdp 的主機。
  5. rpd-any: 登入其它已經啟動遠端桌面 (RDP Server) 的 Windows 電腦或主機。
  6. sesman-X11rdp: 這個項目我沒有測試成功,從字面上的意思來看,應該是連結本機端由 X Server 提供的 RDP,但目前 Linux 的桌面應該還沒有具備這樣的功能!

桌面環境

以 "sesman-Xvnc" 選項登入 Linux 桌面後,預設是使用 KDE 桌面,但其操作介面是英文的,這些設定都與 "/usr/local/xrdp/startwm.sh" 這個指令檔有關。
如果要改成中文環境,請編輯 /usr/local/xrdp/startwm.sh,在程式的第二行加入:
export LANG=zh_TW.UTF-8
這樣就可以了。

No comments:

Post a Comment