XRDP让CentOS变成rdp server

工作台安装了linux桌面发行版,同时想要做远程控制

通过vnc远程连接到工作台,发现vnc过去以后,本地屏幕也会显示,所有操作暴露无遗~

找一找比vnc更安全的远程桌面服务(也许是我vnc设置不对~请指教~)

发现鸟哥推荐:xrdp

http://linux.vbird.org/linux_server/0310telnetssh.php#xrdp

顾名思义,它模仿了windows下的rdp连接

首先配置epel

epel真的是太方便了,免除了编译安装的繁琐,我们的目的在于快速使用,而非具体的调优

https://fedoraproject.org/wiki/EPEL/zh-cn

配置epel

   1:  wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
   2:  rpm -ivh epel-release-6-8.noarch.rpm
   3:  yum clean all
   4:  yum makecache

然后安装xrdp

xrdp直接yum安装,安装完后无需修改任何配置,直接启动即可

   1:  yum install xrdp
   2:  ...
   3:  Installed:
   4:    xrdp.x86_64 0:0.5.0-0.13.el6
   5:  Dependency Installed:
   6:    tigervnc-server.x86_64 0:1.1.0-8.el6_5
   7:  ...

可以看到xrdp同时也会安装tigervnc-server,vnc的作用下面就知道了

启动就不用说了

/etc/init.d/xrdp start; chkconfig xrdp on

xrdp会启动2个进程,2个端口

   1:  [[email protected] log]# netstat -nlp|grep xrdp
   2:  tcp        0      0 127.0.0.1:3350              0.0.0.0:*                   LISTEN      16922/xrdp-sesman
   3:  tcp        0      0 0.0.0.0:3389                0.0.0.0:*                   LISTEN      16918/xrdp

连接,试用

通过windows的远程桌面连过去,有一个输入框,输入系统账号和密码,点“OK”

然后出错了(鸟哥~不是说直接跑起来就可以连上吗~我的版本号也对呀,centos6.2)

然后看一下日志:/var/log/xrdp-sesman.log

[20140522-14:36:55] [INFO ] scp thread on sck 7 started successfully
[20140522-14:36:55] [INFO ] ++ created session (access granted): username root, ip 192.168.1.100:53227 - socket: 7
[20140522-14:36:55] [INFO ] starting Xvnc session...
[20140522-14:37:05] [ERROR] X server for display 10 startup timeout
[20140522-14:37:05] [INFO ] starting xrdp-sessvc - xpid=16837 - wmpid=16836
[20140522-14:37:05] [ERROR] X server for display 10 startup timeout
[20140522-14:37:05] [ERROR] another Xserver is already active on display 10
[20140522-14:37:05] [DEBUG] aborting connection...
[20140522-14:37:05] [INFO ] ++ terminated session:  username root, display :10.0, session_pid 16834, ip 192.168.1.100:53227 - socket: 7

一箩筐东西,xserver is already active?什么情况?

搜索了一下,发现好多人碰到,比如说这位

http://thornelabs.net/2013/06/28/rhel-6-fix-xrdp-error-another-xserver-is-already-active-on-display-10.html

或者这位

http://fendertech.blogspot.ro/2013/04/xrdp-not-working-on-centos-62.html

都提到了字符问题,后面这位直接给出了解决方案:

yum install pixman libXfont

在我这边运行,直接update了这两个包

   1:  yum install pixman libXfont
   2:  ...
   3:    Updating   : libXfont-1.4.5-3.el6_5.x86_64
   4:    Updating   : pixman-0.26.2-5.1.el6_5.x86_64
   5:    Cleanup    : libXfont-1.4.1-2.el6_1.x86_64
   6:    Cleanup    : pixman-0.18.4-1.el6_0.1.x86_64
   7:  ...

然后重启服务

再次连接,OK,搞定~!

为什么要依赖tigervnc-server

之前安装xrdp会一起把vnc server安装上,这个vnc sererver到底是干啥的

rdp连接上服务器以后,查看连接状态

   1:  [[email protected] log]# netstat -tanp
   2:  Active Internet connections (servers and established)
   3:  Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
   4:  ......
   5:  tcp        0      0 127.0.0.1:5910              0.0.0.0:*                   LISTEN      16930/Xvnc
   6:  tcp        0      0 127.0.0.1:3350              0.0.0.0:*                   LISTEN      16922/xrdp-sesman
   7:  tcp        0      0 0.0.0.0:3389                0.0.0.0:*                   LISTEN      16918/xrdp
   8:  tcp        0      0 192.168.1.10:3389           192.168.1.100:53250         ESTABLISHED 16918/xrdp
   9:  tcp        0      0 127.0.0.1:5910              127.0.0.1:47050             ESTABLISHED 16930/Xvnc
  10:  tcp        0      0 192.168.1.10:53296          125.56.200.168:80           ESTABLISHED 8734/clock-applet
  11:  tcp        1      0 192.168.1.10:44985          96.17.151.11:80             CLOSE_WAIT  17072/clock-applet
  12:  tcp        0      0 127.0.0.1:47050             127.0.0.1:5910              ESTABLISHED 16918/xrdp
  13:  ......

有没有看到pid为16930的那个Xvnc进程~

注意看第9行和第12行~

[xrdp的127.0.0.1:47050] 与
[Xvnc的127.0.0.1:5910] 是互连状态

也就是说,rdp连接不过是个“假象”;外部设备连接到xrdp的3389端口,然后xrdp会从内部连接到一个内部的vnc服务

客户端 –> [服务端:xrdp-3389] –>
[服务端:xvnc-59xx]

为什么要“多此一举”?

鸟哥说了vnc的加密设置很繁琐,而rdp自带了加密,这样做起来,设备到设备之间的链路已经加密了,至于内部通信的加密在这里不算那么严重

小结

东东还是可以用,屏幕终端登录和rdp远程互不冲突,但跑进程的时候会有干扰了

2014-05-22发现的问题:

太卡了,家里100M无线网络测试,即便把rdp设置为56K的网络条件,操作也不是非常流畅

还有一个问题,丢PATH:/usr/lib64/qt-3.3/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin;是在运行ifconfig发现的

时间: 2024-10-10 22:07:41

XRDP让CentOS变成rdp server的相关文章

centos 安装git server

1.yum install lrzsz wget git 2.安装gitosis:gitosis为Git用户权限管理系统,通过管理服务端的/home/git/.ssh/authorized_key文件来执行对用户权限的管理,是一个python模块包 #yum install python python-setuptools #git clone git://github.com/res0nat0r/gitosis.git #cd gitosis/ #python setup.py install

centos 安装FTP server详情(转)

centos 安装FTP server详情 分类: linux 2013-12-27 16:45 227人阅读 评论(0) 收藏 举报 我们这里以安装vsftpd 服务器端为例子: 1.进入到centos 终端上 首先执行 yum search vsftpd 查看安装软件名字; 2.然后安装 列出来的软件名,首选第一个 yum install vsftpd,开始执行安装 3.安装好后通过 service vsftpd status 查看ftp 运行状态 如果没运行 可以使用 service vs

ubuntu unable to connect to rdp server

今天早上开机,远程连接win,提示unable to connect to rdp server,昨天还好好的,怎么今天突然不行了,telnet win 的3389端口,是通的,用remina remote desktop client 连接其它的win 也正常 用其它的连接在ubuntu下不能连接的win,也正常,看来是ubuntu配置问题,google下,终于找到解决方法 vim ~/.freerdp/known_hosts 删除不能连接的win的信息,重新连接即可

centos remote control server 6.x

reference: http://www.itzgeek.com/how-tos/linux/centos-how-tos/install-xrdp-remote-desktop-to-centos-6-rhel-6.html#axzz3YUmJrTYJ 1. 32bits # rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm 64bits # rpm -Uvh http

CentOS 下 VNC Server 的配置与使用

VNC 是一款优秀的远程控制工具软件.由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 UNIX 和 Linux 操作系统的免费的开源软件,远程控制能力强大,高效有用,其性能能够和 Windows 和 MAC 中的不论什么远程控制软件媲美. 在 Linux 中.VNC 包含下面四个命令:vncserver.vncviewer,vncpasswd,和 vncconnect. 大多数情况下用户仅仅须要当中的两个命令:vncserver 和 vncviewer. 1.命令描写叙述 vncs

CentOS安装RStudio Server

环境:CentOS6.4 64 一.安装epel-relase #yum install epel-release 修改/etc/yum.repo.d/epel.repo 将#baseurlmirrorlist改成baseurl#mirrorlist 安装R语言 #yum install R 安装RStudio Server # sudo yum install openssl098e # Required only for RedHat/CentOS 6 and 7 # wget http:/

centos 安装VNC Server

linux系统给给开发者带来性能的便利,但是失去了window系统的界面化管理的便利.下面介绍怎么通过在linux系统上实现界面化操作.(CENTOS为例) 本文详细讲解在centos下安装VNC 服务并用 VNC viewer 连接. VNC SERVER 安装: 1. 用root用户身份运行以下命令 yum install tigervnc-server 2. 停用防火墙 systemctl stop firewalld.service systemctl disable firewalld

CentOS下Zabbix Server 安装

Zabbix Server 安装 信息 Author: rootming Date: 2018/10/31 ChangeLog 说明 以下文档在CentOS 7操作 使用 # 说明代表root用户执行, $ 为普通用户, 其他命令提示符根据使用的软件决定 认证信息 系统 & 数据库 系统 username: root password: 密码 数据库 username: root password: 密码 username: zabbix password: 密码 安装Zabbix 安装软件包

Centos下一个server安装的版本号mysql

首先这里说的是这里的路径.以及语句都是在网上看了非常多错误后自己实践后改动过来的,希望对大家实用. 这里在安装的时候要按着我的这个顺序.否则可能会由于路径错误而找不到对应的指令. 一.安装cmake # 安装所需依赖包(这段指令是一直输入的) yum -y install gcc libxml2-dev curl screen \ libpng12-dev autoconf libpcre3-dev make bzip2 \ libevent-dev patch libjpeg62-dev li