在linux上安装XRDP远程登录Linux系统

2023-05-16

XRDP远程登录Linux系统  

 一般情况下我们用ssh客户端远程登陆Linux系统,至于图形界面下的linux远程登陆工具,我们一般都会想到vnc,但它的安全性不够,在这里,我将介绍XRDP的安装配置方法。

xrdp安装配置方法

1、如果是debian系发行版,可以设置好源后直接apt-get install xrdp
如果是RedHat系发行版,可以到http://www.xrdp.org/下载安装

●安装前需要安装

  pam-devel、openssl-devel

  gcc、make

如果是RedHat系,设置好源直接yum install pam-devel openssl-devel

●下载好xrdp的安装包后,用tar -xvzf 解压
进入解压出来的目录用root帐号执行如下命令

./bootstrape

./configure 

make

make install

●安装完xrdp后,xrdp需要vncserver,所以还要安装vncserver,由于这里主要讲述xrdp,所以在这里就不在详述vncserver的安装

●准备好后,可以通过解压出来的目录下的xrdp.sh运行启动xrdp服务,如下命令

./xrdp.sh start

可以把此脚本添加到/etc/rc.d/init.d/中,让它开机自动运行。

●启动好xrdp,就可以通过客户端的rdp client 连接到服务器上,win下可以用mstsc,linux下可以用rdesktop或者krdp。

●xrdp的配置文档在/etc/xrdp目录下的xrdp.ini和sesman.ini

xrdp.ini 关键部分在globals

[globals]
bitmap_cache=yes 位图缓存
bitmap_compression=yes 位图压缩
port=3389 监听端口
crypt_level=low 加密程度(low为40位,high为128位,medium为双40位)
channel_code=1 不知道是什么

sesman.ini

[Globals]
ListenAddress=127.0.0.1 监听ip地址(默认即可)
ListenPort=3350 监听端口(默认即可)
EnableUserWindowManager=1 1为开启,可让用户自定义自己的启动脚本
UserWindowManager=startwm.sh
DefaultWindowManager=startwm.sh

[Security]
AllowRootLogin=1 允许root登陆
MaxLoginRetry=4 最大重试次数
TerminalServerUsers=tSUSErs 允许连接的用户组(如果不存在则默认全部用户允许连接)
TerminalServerAdmins=tsadmins 允许连接的超级用户(如果不存在则默认全部用户允许连接)

[Sessions]
MaxSessions=10 最大会话数
KillDisconnected=0 是否立即关闭断开的连接(如果为1,则断开连接后会自动注销)
IdleTimeLimit=0 空闲会话时间限制(0为没有限制)
DisconnectedTimeLimit=0 断开连接的存活时间(0为没有限制)

[Logging]
LogFile=./sesman.log 登陆日志文件
LogLevel=DEBUG 登陆日志记录等级(级别分别为,core,error,warn,info,debug)
EnableSyslog=0 是否开启日志
SyslogLevel=DEBUG 系统日志记录等级

装好后,我们就可以直接从win系统下利用mstsc直接进行登陆,相当方便,如果是linux,可以用rdesktop。

Linux Xrdp 安裝

Xrdp 是开放原始码的远端桌面通讯协定 Remote Desktop Protocol 伺服器服务,可用来替代传统的 vnc server,以增进远端连线的效能。

以 apt 指令安装 xrdp 将会显示
vnc4server xbase-clients xrdp 等三个相依套件需要安装,记得在使用 Ubuntu 9.10 时,仍需加装「libpam0g-dev」和「libcurl4-openssl-dev」才能顺利运作 xrdp,所以安装指令为:



sudo apt-get install libpam0g-dev libcurl4-openssl-dev xrdp

不过,来到了 Ubuntu 10.04 这个版本,xrdp 版本虽然仍是 2008-07-18 的 v0.4.1,很好奇的试了一下只用这一行指令:

sudo apt-get install xrdp

系统已简化了安装流程,自动列出「vnc4server xbase-clients xrdp」三个相依套件,按下「enter」安装后好就可启用了,而且实测结果:连线成功!

xrdp 服务启动后,使用者就可以用 Windows 上的「远端桌面连线」来操作 Linux 的桌面了。对于惯用「远端桌面连线」的人来说,最大的好处在于不用再另外再安装 vnc 连线程式了。不过,第一次使用时将会发现,并非如 Windows 平台间的「远端桌面连线」那样,「直接」登入就可操作远端电脑。而是多了一个陌生的登入视窗,萤幕上显示的共有「sesman-Xvnc」、「console」、「vnc-any」……等六种登入选项。原来 xrdp 服务是以 Port 3389 接受「远端桌面连线」,操作桌面时再转交给主机中的 vncserver 来执行。

XRDP远程登录Linux系统

因此,选用「console」模式,就成了以本机连线方式操作了,这时只要输入 vnc 密码就可以登入了。而从「vnc-any」模式中的 IP 栏位可知道,这裡不仅可输入本机的 IP,或者「localhost」也行,试着指定其他提供 vnc 服务主机的 IP,照样也可以登入。本来是在Ubuntu 9.10 版上大多以「console」模式,连线到被控端电脑,Ubuntu 10.04 似乎改变了使用者登入方式,这个「console」模式常常无法登入。还好预设的第一个模式「sesman-Xvnc」,输入使用者帐号、密码就能操作了。那就改用这个模式吧!

如果操作环境安全条件许可的话,将连线设定储存成


转载于:https://blog.51cto.com/misliang/1533172

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在linux上安装XRDP远程登录Linux系统 的相关文章

  • 拆分字符串以仅获取前 5 个字符

    我想去那个地点 var log src ap kernelmodule 10 001 100 但看起来我的代码必须处理 ap kernelmodule 10 002 100 ap kernelmodule 10 003 101 等 我想使用
  • 是否可以在Linux上将C转换为asm而不链接libc?

    测试平台为Linux 32位 但也欢迎 Windows 32 位上的某些解决方案 这是一个c代码片段 int a 0 printf d n a 如果我使用 gcc 生成汇编代码 gcc S test c 然后我会得到 movl 0 28 e
  • 抑制 makefile 中命令调用的回显?

    我为一个作业编写了一个程序 该程序应该将其输出打印到标准输出 分配规范需要创建一个 Makefile 当调用它时make run gt outputFile应该运行该程序并将输出写入一个文件 该文件的 SHA1 指纹与规范中给出的指纹相同
  • 跟踪 Linux 程序中活跃使用的内存

    我想跟踪各种程序在特定状态下接触了多少内存 例如 假设我有一个图形程序 最小化时 它可能会使用更少的内存 因为它不会重新绘制窗口 这需要读取图像和字体并执行大量库函数 这些对象仍然可以在内存中访问 但实际上并没有被使用 类似的工具top它们
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • 使用 grep 查找包含所有搜索字符串的行

    我有一个文件 其中包含很多与此类似的行 id 2796 some model Profile message type MODEL SAVE fields account 14 address null modification times
  • 如何使用 bash 锁定文件

    我有一个任务从远程服务器同步目录 rsync av email protected cdn cgi l email protection srv data srv data 为了使其定期运行并避免脚本 reEnter 问题 我使用 rsyn
  • 为什么 Linux perf 使用事件 l1d.replacement 来处理 x86 上的“L1 dcache misses”?

    在英特尔 x86 上 Linux用途 https stackoverflow com a 52172985 149138事件l1d replacements来实施其L1 dcache load misses event 该事件定义如下 计数
  • chown:不允许操作

    我有问题 我需要通过 php 脚本为系统中的不同用户设置文件所有者权限 所以我通过以下命令执行此操作 其中 1002 是系统的用户 ID file put contents filename content system chown 100
  • Linux 中的动态环境变量?

    Linux 中是否可以通过某种方式拥有动态环境变量 我有一个网络服务器 网站遵循以下布局 site qa production 我想要一个环境变量 例如 APPLICATION ENV 当我在 qa 目录中时设置为 qa 当我在生产目录中时
  • 如何在数组中存储包含双引号的命令参数?

    我有一个 Bash 脚本 它生成 存储和修改数组中的值 这些值稍后用作命令的参数 对于 MCVE 我想到了任意命令bash c echo 0 0 echo 1 1 这解释了我的问题 我将用两个参数调用我的命令 option1 without
  • 所有平台上的java

    如果您想用 java 为 Windows Mac 和 Linux 编写桌面应用程序 那么所有这些代码都相同吗 您只需更改 GUI 即可使 Windows 应用程序更像 Windows 等等 如果不深入细节 它是如何工作的 Java 的卖点之
  • 如何有效截断文件头?

    大家都知道truncate file size 函数 通过截断文件尾部将文件大小更改为给定大小 但是如何做同样的事情 只截断文件的尾部和头部呢 通常 您必须重写整个文件 最简单的方法是跳过前几个字节 将其他所有内容复制到临时文件中 并在完成
  • arm64和armhf有什么区别?

    Raspberry Pi Type 3 具有 64 位 CPU 但其架构不是arm64 but armhf 有什么区别arm64 and armhf armhf代表 arm hard float 是给定的名称Debian 端口 https
  • 两种情况或 if 哪个更快? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我必须制作一个 非常 轻的脚本 它将接受用户的选项并调用脚本中的函数来执行一些任务 现在我可以使用 IF 和 CASE 选项 但我想知道两
  • Linux 内核标识符中前导和尾随下划线的含义是什么?

    我不断遇到一些小约定 比如 KERNEL Are the 在这种情况下 是内核开发人员使用的命名约定 还是以这种方式命名宏的语法特定原因 整个代码中有很多这样的例子 例如 某些函数和变量以 甚至 这有什么具体原因吗 它似乎被广泛使用 我只需
  • Linux 可执行文件与 OS X“兼容”吗?

    如果您在基于 Linux 的平台上用 C 语言编译一个程序 然后将其移植以使用 MacOS 库 它会工作吗 来自编译器的核心机器代码在 Mac 和 Linux 上兼容吗 我问这个问题的原因是因为两者都是 基于 UNIX 的 所以我认为这是真
  • Linux:如何从特定端口发送TCP数据包?

    如何打开原始套接字以从特定 TCP 端口发送 我希望所有连接始终来自临时端口以下的一系列端口 如果您正在使用raw套接字 然后只需在数据包标头中填写正确的 TCP 源端口即可 相反 如果您使用 TCP 套接字接口 socket connec
  • 如何在shell中输出返回码?

    我正在尝试通过调用自定义 shell 脚本sh bin sh c myscript sh gt log txt 2 gt 1 echo 该命令的输出是创建的后台进程的 PID 我想指导 bin sh保存返回码myscript sh到某个文件
  • Linux 中什么处理 ping?

    我想覆盖 更改 linux 处理 ping icmp echo 请求数据包的方式 这意味着我想运行自己的服务器来回复传入的 icmp 回显请求或其他 数据包 但为了使其正常工作 我想我需要禁用 Linux 的默认 ping icmp 数据包

随机推荐

  • iOS app性能优化的那些事

    iPhone上面的应用一直都是以流畅的操作体验而著称 xff0c 但是由于之前开发人员把注意力更多的放在开发功能上面 xff0c 比较少去考虑性能的问题 xff0c 可能这其中涉及到objective xff0d c c 43 43 跟lu
  • Shell生成随机密码

    tr参数 c或 complerment xff1a 取代所有不属于第一字符集的字符 xff1b d或 delete xff1a 删除所有属于第一字符集的字符 xff1b 1 生成10个小写字母 root 64 kafka60 shell l
  • 如何安装与连接MySQL?

    本文用详细的步骤说明 xff0c 帮助你一步步掌握MySQL的下载 安装和服务启动 xff0c 客户端的安装 连接和测试 帮你避开初学MySQL使用中的那些坑 需求 这是一个大数据时代 如果你开发一个大规模并发网络应用 xff0c 或者需要
  • 如何在win10系统上安装linux子系统

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 对于软件开发人员来说 xff0c linux基本上是一个绕不过去的槛 因为工作经常要用到linux xff0c 电脑用纯linux还是windows 43 虚拟机装linu
  • debian9服务器系统,如何安装Debian 9(Stretch)最小服务器

    本教程将介绍如何安装Debian 9 Stretch 最小服务器 本指南的目的是提供一个最小的Debian设置 xff0c 可以作为我们其他Debian 9教程的基础 xff0c 以及在howtoing com上完美的服务器指南 1要求 要
  • 为什么在计算机里打开U盘会闪退,U盘闪退怎么办?

    萌妮i 回答数 xff1a 80 被采纳数 xff1a 95 2018 10 09 08 30 27 U盘病毒会在U盘的根目录下生成两个文件 xff1a autorun inf和runauto 两个文件 这两个文件是有隐藏属性的 怎样显示隐
  • iOS指定程序启动后初始的ViewController

    BOOL application UIApplication application didFinishLaunchingWithOptions NSDictionary launchOptions Override point for c
  • nginx服务器出现504 gateway time-out怎么解决

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 做网站的同学经常会发现一些nginx服务器访问时候提示504 Gateway Time out错误 xff0c 而出现这种错误有两种情况 xff0c 第一种可能是由于ngi
  • CString 操作指南

    原著 xff1a Joseph M Newcomer 翻译 xff1a littleloach 原文出处 xff1a codeproject xff1a CString Management 通过阅读本文你可以学习如何有效地使用 CStri
  • iOS 触摸事件之双指先后触摸问题的解决

    问题情景的引入 xff1a 在一个画板程序中 xff0c 我定义只能用一个手指的时候 xff0c 才可以画线 xff0c 当有两个手指的时候是不可以进行绘画的 问题初解决 xff1a 那么最简单的我们会想到 xff0c 禁止多点触摸不就可以
  • Kurento Utils JS

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 概述 Kurento Utils是RTCPeerConnection的包装器对象 此对象旨在简化基于WebRTC的应用程序的开发 该项目的源代码可以从GitHub存储库克隆
  • java 校验日期字符串格式_Java 校验日期(格式:yyyyMMdd)

    今天做Android的时候遇到一个需求 xff0c 即校验yyyyMMdd格式的日期 xff0c 没有搜索到合适的于是自己写了一个简单的小算法 xff0c 权当复习SE了 xff0c 顺便记录一下 package com wl cigrec
  • C++代码文件名标准化处理工具

    工具功能 xff1a 批量处理C 43 43 代码文件 xff0c 将C 43 43 代码文件名中大写字母改为下划线 43 小写字母 为了方便代码在不同平台下的移植 xff0c 代码文件命名规范为 xff1a 不使用大写字母 xff0c 单
  • linux自定义回收空间,不断回收的Linux和Swap空间中的交换大小不断增加?

    如果信息被换出到光盘然后再读回内存 它通常会在交换区域中分配 直到交换空间不足为止 这意味着如果相同的信息需要稍后再次换出并且没有改变 操作系统可以从已分配的RAM中删除页面 而无需向磁盘节省时间 分配给已经读回内存的东西的交换也将被释放
  • python django django-debug-toolbar 不能正常使用的问题

    2019独角兽企业重金招聘Python工程师标准 gt gt gt http django debug toolbar readthedocs org en 1 3 debug toolbar 1 3 django 1 8 python2
  • xfreerdp的用法

    root 64 localhost xfreerdp 192 168 1 107 u username sec nla connected to 192 168 1 107 3389 Password SSL read Failure in
  • gitlab详细安装过程,错误解决方案

    在centos6 5中安装 GitLab 全过程和问题记录 如果你想省事 xff0c 使用最新版本的gitlab xff0c 请下载一键安装包 xff0c 一键安装 脚本 xff1a https bitnami com stack gitl
  • 声音分贝的概念,dBSPL.dBm,dBu,dBV,dBFS

    需要做个音频的PPM表 xff0c 看着一堆的音频术语真是懵了 xff0c 苦苦在网上扒了几天的文档 xff0c 终于有了点收获 xff0c 下面关于声音的分贝做个总结 分贝 Decibel 分贝 xff08 dB xff09 是一个对数单
  • Docker swarm mode初探

    为什么80 的码农都做不了架构师 xff1f gt gt gt Docker从1 12引入了swarm模式 xff0c swarm mode用来管理集群化的docker engines xff0c 被称作swarm 可以使用docker C
  • 在linux上安装XRDP远程登录Linux系统

    XRDP远程登录Linux系统 一般情况下我们 用ssh客户端远程登陆Linux系统 xff0c 至于图形界面下的linux远程登陆工具 xff0c 我们一般都会想到vnc xff0c 但它的安全性不够 xff0c 在这里 xff0c 我将