首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >确定当前是否通过远程桌面连接访问服务器

确定当前是否通过远程桌面连接访问服务器
EN

Server Fault用户
提问于 2015-08-26 03:42:05
回答 3查看 3K关注 0票数 4

例如,我有一个由4个人使用的服务器,该服务器中只有一个帐户。我们知道,当有人已经访问它,而另一个用户访问服务器时,当前用户将被断开连接。

是否有任何方法可以识别当前是否通过远程桌面连接访问服务器,以防止活动用户不必要的中断。

EN

回答 3

Server Fault用户

回答已采纳

发布于 2015-08-26 07:47:47

这适用于以下操作系统: Windows 2008、Windows 2008 R2、Windows 2012和Windows。尝试以下命令:

代码语言:javascript
运行
复制
query session [<SessionName> | <UserName> | <SessionID>] [/server:<ServerName>] [/mode] [/flow] [/connect] [/counter]

这将提供如下输出:

代码语言:javascript
运行
复制
C:\>query session
 SESSIONNAME    USERNAME       ID STATE  TYPE   DEVICE
>console        Administrator1  0 active wdcon
 rdp-tcp#1      User1           1 active wdtshare
 rdp-tcp                        2 listen wdtshare
                                4 idle
                                5 idle

来源

希望这能有所帮助。

票数 5
EN

Server Fault用户

发布于 2015-08-26 18:38:05

Windows平台支持多个并发RDP会话--通常最多支持两个会话--如果用户试图连接到已经达到最大值的服务器,则会发出警告。因此,您所描述的情况完全可以通过为每个人创建单独的用户帐户来避免--这是一种安全最佳实践。

如果没有单独的用户帐户,您当然会遇到这样的资源共享问题。但是,您也无法单独管理用户权限,也无法在事件日志中区分一个人和另一个人。

即使在非服务器平台上(例如: Windows 7、Windows8.1、Windows 10等),如果您有单独分配的用户帐户,您的场景也不会出现问题。这些平台一次只允许一个会话处于活动状态。当RDP用户连接,并且已经有一个活动会话时,将发生以下三种情况之一:

  • 如果用于连接的帐户与活动会话所有者相同,则将建立连接。该用户的现有RDP连接将被删除。如果用户的预先存在的会话在本地控制台上,控制台将被踢出“锁屏幕”。
  • 如果用于连接的帐户与活动会话所有者不相同,并且帐户没有管理员权限,则新会话将被拒绝。用户将被告知系统已经在使用,连接将被终止。
  • 如果用于连接的帐户与活动会话所有者不相同,并且帐户具有管理员权限,则会话仍然不会立即建立。用户将被告知,该系统已经在使用,他们将有选择地强迫活跃的用户离开系统,以便他们可以登录。根据系统配置的不同,强制新会话可能会导致活动用户的会话被断开/锁定(但仍可在以后恢复)或实际注销。

尽管如此,以下是对现有答案的一些评论以及我自己的建议:

TheJulyPlot迈克尔·贝利在本质上提出了同样的观点。QWINSTAQUSER都是QUERY实用程序的快捷方式,分别用于SESSIONUSER函数。这些程序可以在带有/computer:参数的远程计算机上运行,因此在您实际连接之前,可以使用它们来检查系统。

贾斯-的建议本身对您并不有用,因为它要求您已经连接到远程系统,并且您希望在这样做之前检查它。但是,如果您使用PsExec运行它(由Michael建议),您可以完成您想要做的事情。不过,有更好的方法来满足您的需要,使用内置的工具以及Microsoft提供的其他实用程序。

如果您已经拥有了PsTools,我建议您尝试使用PsLoggedOn,而不是与PsExec和Netstat混为一谈。PsLoggedOn可以远程运行,并显示RDP会话和远程文件系统或注册表连接。远程运行PsLoggedOn的语法是:

代码语言:javascript
运行
复制
PsLoggedOn \\servername

其他有用资源:

SS64

PsLoggedOn

查询用户/ Quser

查询会话/ Qwinsta

PsExec

Netstat

TechNet

PsTools

票数 0
EN

Server Fault用户

发布于 2015-08-26 03:55:07

从命令提示符。

注意,在已建立的状态下监听3306端口到外部地址192.168.2.205的TCP本地地址

代码语言:javascript
运行
复制
C:\Users\foo>netstat -anp tcp

Active Connections

  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:554            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:3306           0.0.0.0:0              LISTENING
...
  TCP    10.0.0.248:3306        192.168.2.205:48156    ESTABLISHED 
...
  TCP    192.168.130.1:139      0.0.0.0:0              LISTENING
  TCP    192.168.233.1:139      0.0.0.0:0              LISTENING
票数 -1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/717034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档