远程桌面连接(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 /
随机推荐
- SQL数据库各种查询建表插入集合-待续持续更新
创建表 drop table student; DROP table Course; DROP table sc; CREATE TABLE student ( sid integer PRIMARY ...
- 小记redis持久化的机制
刚学redis,就经常看到两种持久化机制在眼头晃,RDB和AOF,然而当时学的还知道这两东西是啥玩意,过段时间又忘了,中文记忆这两种概念总感觉有些别扭.今心血来潮翻看redis的配置文件,豁然开朗,仿 ...
- Spring Boot Thymeleaf 实现国际化
开发传统Java WEB工程时,我们可以使用JSP页面模板语言,但是在SpringBoot中已经不推荐使用了.SpringBoot支持如下页面模板语言 Thymeleaf FreeMarker Vel ...
- Spring MVC-从零开始-分拆applicationContext. xrnl
1.目录结构 2.web.xml配置 <?xml version="1.0" encoding="ISO-8859-1"?> <web-app ...
- Spring MVC-从零开始-如何访问静态资源
转(Spring MVC静态资源处理) 优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置Dis ...
- ajax跨域问题以及解决方案
转:https://blog.csdn.net/csdn_ds/article/category/6937392/3 在工作中,大家应该都遇到过ajax跨域问题,浏览器的错误如下: XMLHttpRe ...
- 从ASP.Net Core Web Api模板中移除MVC Razor依赖项
前言 :本篇文章,我将会介绍如何在不包括MVC / Razor功能和包的情况下,添加最少的依赖项到ASP.NET Core Web API项目中. 一.MVC VS WebApi (1)在ASP. ...
- 004-python面向对象,错误,调试和测试
---恢复内容开始--- 1.面向对象 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作 ...
- 又写了两个实用的微信小程序
忙里偷闲,最近又写了两个小程序. 一个是手机壁纸小程序,名字叫[来搜图],特点是界面干净清爽,没有多余的东西.开发这个是因为讨厌市面上那些壁纸app那样那么多的广告,真的太影响体验了.而且小程序更加轻 ...
- Spring Boot (八): Mybatis 增强工具 MyBatis-Plus
1. 简介 在上一篇文章<Spring Boot (七): Mybatis极简配置> 中我们介绍了在 Spring Boot 中 Mybatis 的基础使用方式,其中有一部分美中不足的是 ...