🍬 博主介绍
👨🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!
文章目录
1 遇到问题:登陆不同账号
提示:
登录消息:其他用户当前已登录到此计算机。如果继续,则该用户必须断开与此计算机的连接。是否继续?
点击继续登录,原登录用户admin提示:
远程桌面连接
admin-PCladmin 要连接到该计算机。
请单击“确定”立即断开您的会话连接或单击“取消”保持连接状态。
否则,您将在 30 秒后被断开。
确定 取消
虚拟机中win7系统登陆了用户admin
远程其他用户admin1
提示:
登录消息:其他用户当前已登录到此计算机。如果继续,则该用户必须断开与此计算机的连接。是否继续?
点击继续登录,原登录用户admin提示:
远程桌面连接
admin-PCladmin 要连接到该计算机。
请单击“确定”立即断开您的会话连接或单击“取消”保持连接状态。
否则,您将在 30 秒后被断开。
确定 取消
等待30s之后,原登陆账户admin被挤掉,远程登录的admin1用户登录成功。
2 解决方案:找了很久才正确解决
2.1 用GPT找到的解决方案如下:
在Windows 7系统中,当您尝试远程连接到另一台计算机时,如果遇到“你已断开连接,因为已与远程计算机建立了另一个连接”的提示,这通常意味着远程计算机上已经有一个活跃的会话,而Windows默认不允许多个并发的远程桌面会话。为了解决这个问题并实现多用户同时登录(包括本机登录和远程登录),可以尝试以下几种方法:
1.使用第三方工具
RDP Wrapper Library
这个工具可以修改Windows系统的远程桌面相关设置,绕过系统的限制,使得多个用户能够同时远程登录到系统而不会互相影响。
从可靠的来源下载RDP Wrapper Library。
解压下载的文件,运行安装程序。
安装完成后,运行RDPConf.exe文件来检查和配置远程桌面服务的状态。
AnyViewer
这是一款免费且稳定的远程访问软件,它提供了持久的远程会话,用户无需再担心远程会话断开的问题。
在两台电脑上分别下载并安装AnyViewer。
启动AnyViewer,选择“设置”,然后点击“接受者”。
勾选三个选项,并在框中设置您的安全码。
在控制端输入需要被控电脑上的设备ID,然后单击“连接”。
2.修改系统注册表
按“Win + R”键打开运行对话框,输入“regedit”并回车打开注册表编辑器。
导航至HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server。
找到名为“fDenyTSConnections”的键值,将其数据修改为0(如果它的值为1的话)。
然后,找到名为“AllowMultipleTSSessions”的键值(如果没有则需要创建一个新的DWORD值,名称为“AllowMultipleTSSessions”),将其数据设置为1。
3.更改本地组策略
按“Win + R”键打开运行对话框,输入“gpedit.msc”并回车打开组策略编辑器。
导航至计算机配置 > 管理模板 > Windows 组件 > 远程桌面服务 > 远程桌面会话主机 >连接。
双击打开“将远程桌面服务用户限制到单独的远程桌面服务会话”,将其设置为“已禁用”。
4.调整远程会话设置
搜索“远程桌面连接”,然后在窗口中选择“显示选项”。
切换到“本地资源”选项卡,再单击“详细信息”。
取消勾选“智能卡或 Windows Hello 企业版”并单击“确定”。
2.2 无效的解决方案
刚开始不想用第三方工具,想通过注册表、本地策略组的方式进行解决,但最终一一试了一遍,没能成功解决。
猜想可能和版本等有关系,尝试了专业版、旗舰版、教育版都没能解决这个问题,当时都只试了一遍,没有每一个镜像都进行尝试。
以下三种是无效的解决方案,当然各位小伙伴碰到了也可以尝试一下。
1.修改系统注册表无效
按“Win + R”键打开运行对话框,输入“regedit”并回车打开注册表编辑器。
导航至HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server。
找到名为“fDenyTSConnections”的键值,将其数据修改为0(如果它的值为1的话)。
然后,找到名为“AllowMultipleTSSessions”的键值(如果没有则需要创建一个新的DWORD值,名称为“AllowMultipleTSSessions”),将其数据设置为1。
2.更改本地组策略-无效
按“Win + R”键打开运行对话框,输入“gpedit.msc”并回车打开组策略编辑器。
导航至计算机配置 > 管理模板 > Windows 组件 > 远程桌面服务 > 远程桌面会话主机 > 连接。
双击打开“将远程桌面服务用户限制到单独的远程桌面服务会话”,将其设置为“已禁用”。
3.调整远程会话设置-无效
搜索“远程桌面连接”,然后在窗口中选择“显示选项”。
切换到“本地资源”选项卡,再单击“详细信息”。
取消勾选“智能卡或 Windows Hello 企业版”并单击“确定”。
2.3 有效的解决方案–使用第三方工具RDP Wrapper
由于我前面采用了GPT提供的方案没有得到解决,我又在网上搜了搜,发现大同小异,并不能真真切切的解决我的问题,于是我又回到了GPT提供的采用第三方工具的解决方案,找了 RDP Wrapper Library 这个工具直接得到了解决,其实这一款工具我是知道的,只是想试试其他的方案,这一款工具基本上每一个运维都会有,对于我们安全来说,多了解一些工具肯定是好的。
AnyViewer-没有进行尝试,感觉应该可行,感兴趣的小伙伴可以自行尝试!
RDP Wrapper Library:有效的解决碰到的问题。
这个工具可以修改Windows系统的远程桌面相关设置,绕过系统的限制,使得多个用户能够同时远程登录到系统而不会互相影响。
从可靠的来源下载RDP Wrapper Library。
解压下载的文件,运行安装程序。
安装完成后,运行RDPConf.exe文件来检查和配置远程桌面服务的状态。
AnyViewer:未尝试-理论上不能达到要求
这是一款免费且稳定的远程访问软件,它提供了持久的远程会话,用户无需再担心远程会话断开的问题。
在两台电脑上分别下载并安装AnyViewer。
启动AnyViewer,选择“设置”,然后点击“接受者”。
勾选三个选项,并在框中设置您的安全码。
在控制端输入需要被控电脑上的设备ID,然后单击“连接”。
3 解决过程如下:
3.1 下载 RDP Wrapper Library 工具:
https://pan.baidu.com/s/1aQL1vzz6CVvwZdnaxhwNbQ?pwd=6666
下载下来之后有两个文件,一个msi和一个zip,理论上两个都可以使用,可能有些由于系统版本的差异,或者少了部分插件,而无法使用,建议使用压缩包。
3.2 运行工具
解压之后:
运行install文件:注意要用管理员权限执行。
我这里之前就装上了,所以显示的是already installed
如果第一次装,显示 [+] Successfully installed 就代表安装成功了
运行完成之后就把之前碰到的问题成功解决了
4 RDP Wrapper的基本功能和使用场景
4.1 RDP Wrapper 介绍
RDP Wrapper是一个用于Windows系统的工具,主要用于实现远程桌面功能。它通过修改Windows远程桌面服务的核心文件,使得Windows家庭版用户也能使用远程桌面功能。RDP Wrapper支持多用户登录,使得多个人可以同时远程访问同一台电脑。
4.2 安装和配置RDP Wrapper的详细步骤
1.下载RDP Wrapper工具包
访问GitHub页面(https://github.com/stascorp/rdpwrap),下载最新的RDP Wrapper工具包。
2.安装RDP Wrapper
解压下载的工具包,右击
install.bat
文件,以管理员模式运行。
安装完成后,按任意键退出安装程序。
3.配置RDP Wrapper
右击
RDPConf.exe
,以管理员模式运行。
检查Service State
和Listener State
是否为绿色,如果不是绿色,需要根据具体情况进行配置。
如果Service State
非绿色,需要手动开启远程桌面服务。
如果Listener State
非绿色,需要找到对应版本的ini文件进行替换。
替换dll文件时需要暂时关闭远程桌面服务。
4.3 常见问题的解决方法
如果安装后无法启动远程桌面服务:检查RDP Wrapper的配置文件是否正确,确保所有状态都为绿色。
如果替换文件后仍然无法使用:检查下载的文件是否与当前系统版本匹配,或者尝试重新下载工具包。
如果远程桌面连接不稳定:检查网络设置和防火墙设置,确保远程桌面端口开放。
5 新版远程服务桌面的解决办法:
新版远程服务桌面存在问题:
由于 RDP Wrapper 多年未更新,自带的配置文件不支持新版本的远程桌面服务。因此我们只需更新配置文件即可。
新建一个 bat 文件并输入以下内容:
然后保存文件并双击运行,运行完成后按任意键结束。
脚本内容如下:
@echo off & title 更新RDPWrap.ini
set INI_Path="C:\Program Files\RDP Wrapper\rdpwrap.ini"
set INI_Dir="C:\Program Files\RDP Wrapper"
::检查权限
setlocal enabledelayedexpansion>nul
net session>nul
if !ERRORLEVEL! EQU 2 (
set "args=!args: ="^&chr^(32^)^&"%!"
set "args="/C"&chr(32)&chr(34)&chr(94)&chr(34)&"%~f0""
mshta "vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe", !args!, NULL, "runas", NULL)(window.close)"&&exit
)
echo.正在停止远程桌面服务……
echo Y | net stop UmRdpService
echo Y | net stop TermService
::删除旧配置文件
:DeleteFile
del %INI_Path%
if exist %INI_Path% (
echo.文件 %INI_Path% 仍被占用,请手动关闭占用该文件的程序。
start "" %INI_Dir%
pause
goto :DeleteFile
)
echo.正在下载配置文件……
curl "https://raw.gitmirror.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini">%INI_Path%
echo.正在重启远程桌面服务……
C:\WINDOWS\System32\svchost.exe -k NetworkService
net start TermService
echo.更新完成!按任意键以结束。
pause>nul
6 注意:上传文件到虚拟机方法
理论上来说我们可以直接将文件拖入虚拟机,或者复制到虚拟机,也可以本地远程连接到虚拟机然后再拖进去。
但有个时候,也不知道一些啥情况,就是拖不进去,可能是vmtools装的有问题,或者虚拟机不稳定啥的因素造成的。注意:如果出现vmtools安装失败的问题可以安装低版本vmtools。 可参考文末链接
那这个时候我们可以采用一些其他的方式进行上传,最简单的就是本机起一个python服务,然后再虚拟机里面请求这个文件。
演示如下:
本机起 python 服务:记得你的工具需要放到这个目录下
python -m http.server 80
虚拟机请求文件
http://IP
注意:如果起服务的时候没有指定端口为80,那访问的就是默认端口8080
相关资源
各类问题解决杂记录
应急响应入门到精通
[ 提升篇 ] 钓鱼实战系列
vulnhub 综合靶场通关之路
[ 问题解决篇 ] 解决windows虚拟机安装vmtools报错-winserver2012安装vmtools及安装KB2919355补丁 (附离线工具)