远程桌面连接(mstsc)
更新时间:2019.09.10
1. 序言
有时候需要用到远程桌面连接(Microsoft terminal services client)来远程连接到其他的电脑,下面来记录一下mstsc的使用和常见问题的解决方法。
ps:本人使用的是win10专业版(\(\color{#8B8682}{查看受支持的windows版本}\)),但是有的版本并不支持内置的远程连接功能,像win10家庭版。忽然感受到微软深深的恶意
。因此,如果使用家庭版并且想要使用远程连接,要不就装一个专业版使用系统内置的mstsc,要不就使用第三方的远程控制工具。
2. 准备工作
2.1 开启远端计算机的远程桌面功能
打开系统属性--->远程设置--->选择允许远程连接到此计算机,根据自己的需要选择是否仅允许使用NLA进行访问。
- 如果在使用内网进行远程连接的时候可以开启“仅允许使用网络级别身份验证(NLA)”,这样做会更加的安全
。但是似乎开启这种验证之后,某些系统的电脑(像xp)就不能进行远程控制
- 如果是使用外网进行远程连接,就不要开启NLA安全验证。
。
2.2 设置防火墙通信
打开控制面板--->系统和安全--->Windows Defender 防火墙--->允许的应用或功能通过Windows Defender 防火墙,对远程桌面进行勾选。
tip1:一般来说,在开启远程桌面功能后,防火墙的远程桌面设置会自动勾选上。因此,如果执行了步骤2.1后并尝试进行远程连接时,却出现以下界面时,请检查防火墙的设置(万一哪一天自己脑袋抽风,关了防火墙远程桌面的允许设置,就连不上了
)。

tip2:如果允许通过防火墙的应用中找不到远程桌面(系统设置开启远程桌面时有警告提示---必须为远程桌面启用windows防火墙例外),可以在本地组策略编辑器中开启远程桌面的设置。按下win + R--->输入cmd(可选)--->输入gpedit.msc--->计算机配置--->管理模板--->网络--->网络连接Windows Defender 防火墙--->标准配置文件--->允许入站远程桌面例外--->策略设置--->已启用
2.3 获取远端计算机的信息
要远程访问其他的计算机,需要获取远端计算机的名称(计算机名、ip地址或者Internet域名),用于访问的远端用户名及其密码。如果使用外网连接,还需要获取所在的公网ip,要映射的端口(默认是使用3389)
- 获取ip的方法:运行cmd--->输入ipconfig,IPV4就是电脑的ip,默认网关就是路由器的ip
- 获取要映射的端口的方法:运行cmd--->输入tasklist /svc | find “TermService” ,得到它的PID(像我的是1112)--->输入netstat -ano | find "1112"(1112需要替换为之前查询到的PID),这样就可以查到端口。
3. 内网远程连接(以mstsc的方式)
运行命令行cmd,输入mstsc,输入远端计算机名称与用户名信息,连接并输入密码凭据(未保存或未使用保存凭据时),理想情况下就可以愉快地远程的访问远端的计算机了
。

tip:最好勾选保存凭据的选项,这样下一次进行同样的远程连接就不需要再输用户名和密码了。也可以手动添加windows凭据,打开控制面板--->用户账户--->凭据管理器--->添加windows凭据
4. 问题---凭据不工作
理想很丰满,现实很骨感。在实际远程连接时,很可能会因为各种问题导致远程连接无法成功
,像远程机被关了,被远程机拉黑了,用户密码错了等等。而我实际上遇到过的便是“凭据不工作”问题
。
4.1Solution:将远端机器的本地账户共享和安全模型设为经典模式
运行命令行cmd--->输入gpedit.msc--->计算机配置--->windows设置--->安全设置--->本地设置--->安全选项--->网络访问:本地帐户的共享和安全模型,双击修改为经典-对本地用户进行身份验证,不该变其原来的身份---> 确定,更新一下计算机策略(gpupdate /force)--->执行步骤3
ps:我用这种方法是能成功解决凭据不工作的问题
4.2 其他Solution:
除了上述的Solution,网上还有一些别的方法,但是我都试过(单一方法或者多重组合),并没有成功解决凭证不工作的问题。为了以防万一,也把其他方法整理放在这里。
- 在客户端与远程会话主机服务器通信期间指定使用一个特定的安全层:运行命令行cmd--->输入gpedit.msc--->计算机配置--->管理模板--->windows组件--->远程桌面服务--->选择远程桌面会话主机--->安全--->远程(RDP)连接要求使用指定的安全层--->策略设置--->启用(选用RDP)。
- 设置分配保存的凭据用于NLTM身份验证:运行命令行cmd--->输入gpedit.msc--->计算机配置--->管理模板--->系统--->凭据管理--->允许分配保存的凭据仅用于NLTM服务器身份验证。
5. 外网远程连接(mstsc)
如果需要通过外网进行远程连接,要用到端口转移或者设置vpn。以端口转移为例,除了像内网远程连接那几个步骤之外,还要通过设置远程机连接的路由器,将端口映射到电脑的ip上,最后通过访问公网的ip(我们通常使用的路由器ip并不是公网的ip)。实现外网远程连接。
至于实际上怎么完成端口映射的操作,可以参考以下关于端口映射的文章:
6. 结语
当然还有其他许多远程连接的方法,像frp(具体可以参考以下这篇文章“内网穿透在家远程连接公司电脑?”)等,由于我还没有用过,就留在以后再继续探讨了
。
远程桌面连接(mstsc)的更多相关文章
- 远程桌面连接(mstsc)全攻略
打算从今天开始,写一写我经常用的,有长时间使用经验的东西,与大家分享,就从mstsc开始吧! mstsc应该是在Windows中,除了calc.cmd.notepad.mspaint,我使用率最高的系 ...
- 远程桌面连接mstsc 超扎心
搞了一天问了几千个人.最后终于有一位大佬解决了.扎心啊. http://jingyan.baidu.com/article/39810a23edc48bb637fda672.html 就是服务没打开.
- Win7系统 mstsc远程桌面连接失败,提示“您的凭据不工作” 或者“无法连接到远程计算机”的问题。
WIN7 mstsc远程桌面连接其他电脑,提示"您的凭据不工作xxxxxxx"的问题. 或者提示: 本机通过mstsc远程桌面连接服务器,我们按照下面的步骤来逐一排查: 本机配置以 ...
- mstsc Windows局域网内远程桌面连接
1.检查被连接计算机的远程桌面连接功能是否开启 控制面板->系统和安全->系统->远程设置->远程桌面->勾选"仅允许运行使用网络级别身份验证的远程桌面的计算 ...
- 远程桌面连接(mstsc)无法断开的解决方案
某2008 r2有二个系统账户,同时允许两个tcp连接,但每个用户仅同时允许一人登录.不知何因,关闭远程桌面连接的窗口后,再次连接就瞬间提示无法被连接.查看了事件查看器,信息为被注销,这是因为设置了“ ...
- Windows 7远程桌面连接Ubuntu 16.04
转自:http://jingyan.baidu.com/article/8ebacdf0cdc64949f75cd555.html 从Windows 7远程到Windows系统比较简单,只要对方电脑开 ...
- 同网段下,windows自带远程桌面连接
1.服务器关闭防火墙 2.右键点击’我的电脑‘进入’属性‘点击左侧菜单栏中的’远程设置‘: 把远程桌面选项设置成’允许运行任意版本远程桌面的计算机连接‘. 3.客户端点击“开始”在附件菜单下面找到“远 ...
- windows在远程桌面连接中使用命令行参数
在此版本的 Windows 中,可以从搜索框("运行"对话框或命令行)启动远程桌面连接,而不是从「开始」菜单启动它. 从"运行"对话框启动远程桌面的步骤 依次单 ...
- windows server 远程桌面连接问题。
远程桌面连接相当于 linux 服务器root权限连接 mstsc /admin /v:目标IP mstsc /admin /
随机推荐
- 用Python怎么SSH到网络设备
0. 前言 自上一篇文章<用python怎么telnet到网络设备>,简单使用了telnetlib库给大家演示了下,但是,现实环境中仍不建议去使用telnet. SSH(Secure Sh ...
- .NetCore技术研究-一套代码同时支持.NET Framework和.NET Core
在.NET Core的迁移过程中,我们将原有的.NET Framework代码迁移到.NET Core.如果线上只有一个小型的应用还好,迁移升级完成后,只需要维护.NET Core这个版本的代码. 但 ...
- DocumentFormat.OpenXml read excel file
这里向大家介绍一种读取excel 数据的方法,用的是DoucmentFormat.OpenXml.dll 废话不多说,向大家展示一下在项目中处理过的方法,如果有任何疑问,随时联系我. using Do ...
- 【ADO.NET基础-数据加密】第一篇(加密解密篇)
可以采用下面的函数实现密码的加密 public static string EncryptString(string str) { //密文 string key = "www"; ...
- ZK集群的Leader选举源码阅读
前言 ZooKeeper对Zab协议的实现有自己的主备模型,即Leader和learner(Observer + Follower),有如下几种情况需要进行领导者的选举工作 情形1: 集群在启动的过程 ...
- js数组和表的基本操作
数组 var v = [3, 6, "hello"]; console.log(v.length); 数组的遍历1 function ss() { for (var i = 0; ...
- .NET进阶篇-语言章-2-Delegate委托、Event事件
知识只有经过整理才能形成技能 整个章节分布简介请查看第一篇 内容目录 一.概述 二.解析委托知识点 1.委托本质 2.委托的使用 3.委托意义 逻辑解耦,减少重复代码 代码封装支持扩展 匿名方法和La ...
- vodevs3031 最富有的人
在你的面前有n堆金子,你只能取走其中的两堆,且总价值为这两堆金子的xor值,你想成为最富有的人,你就要有所选择. 输入描述 Input Description 第一行包含两个正整数n,表示有n堆金子. ...
- SpringBoot自动注入分析
我们经常会被问到这么一个问题:SpringBoot相对于spring有哪些优势呢?其中有一条答案就是SpringBoot自动注入.那么自动注入的原理是什么呢?我们进行如下分析. 1:首先我们分析项目的 ...
- 树莓派(4B)Linux + .Net Core嵌入式-初始化环境(一)
一.树莓派简单介绍 二.软&件准备 硬件:树莓派4B主机.电源线.TF卡&TF读卡器.PC 软件:win32diskimager(用于烧系统到TF卡).Xshell或Windows T ...