- Telnet 是一种较老的协议,允许远程控制台访问,但所有数据都以明文形式传输,没有加密。
- Windows 10 和 11 中存在 Telnet 客户端,但默认处于禁用状态,必须手动启用。
- 可以通过“启用或关闭 Windows 功能”启用 Telnet,也可以通过命令行使用 DISM 启用。
- 出于安全考虑,建议仅在受控网络中使用 Telnet,并优先选择 SSH 或 RDP 等替代方案。
如果你曾经尝试使用过该命令 远程登录 如果你运行的是 Windows 系统,并且系统提示无法识别该设备,请不要担心:并不是缺少什么特殊组件,只是…… Telnet客户端默认处于禁用状态。 在 Windows 10 和 Windows 11 中,激活它都很简单,但了解你正在启用的功能以及为什么它的使用频率不如以前高很有帮助。
尽管如今存在许多更安全、更现代的替代方案,但 Telnet 仍然非常有用。 诊断网络问题 测试端口 或连接到旧设备但是,它确实有一些非常重要的安全细节,所以让我们详细了解一下它是什么,它是如何工作的,它的风险是什么,以及如何在 Windows 中逐步正确启用它。
Telnet是什么?它现在主要用于什么用途?
Telnet 是一种 基于 TCP/IP 的网络协议 它允许您仅使用命令行界面(无需图形界面)远程连接到另一台计算机。它起源于 20 世纪 60 年代末,并且长期以来一直是远程访问服务器和计算机的标准方法之一。
其经典操作基于以下模型 客户端-服务器计算机上运行着 Telnet 服务器,该服务器通常监听…… TCP 端口 23然后从另一台计算机运行 Telnet 客户端进行连接,该客户端就是您从终端或命令提示符运行的客户端。
当你尝试连接时,客户端会向远程服务器发送请求,远程服务器会响应并询问你。 用户名和密码如果凭据正确,则会以文本模式打开远程会话,就像您坐在那台计算机前一样,但只能使用命令。
所有通过 Telnet 传输的内容都以某种方式传输。 纯文本,未加密这包括用户名、密码以及您在会话期间输入或接收的任何信息。这个细节当时并未被认为十分严重,但现在却成了它的主要漏洞。
历史上它曾被用于 管理服务器、访问数据库、查询BBS或MUD系统以及管理网络设备如今,它的使用范围已主要缩小到受控环境和特定测试,因为像 SSH 这样更安全的替代方案已成为常态。
Telnet 的技术工作原理
Telnet 依赖于该协议 TCP通常情况下,客户端和服务器之间会在 23 端口建立可靠的会话。连接建立后,服务器会等待客户端连接,连接建立后,会进行初始选项交换(Telnet 协商),然后才会出现身份验证提示。
从用户的角度来看,你只能看到一个可以输入命令的控制台,但实际上,后台一直在发送消息。 双向实时字符没有图形界面:一切都是文本,就像连接到大型主机的旧终端一样。
进入系统后,您可以浏览目录、运行程序、查看日志或更改设置,具体取决于…… 帐户权限 这就是使用 Telnet。在许多较旧的网络设备或嵌入式系统中,Telnet 访问曾经是(在某些情况下现在仍然是)主要的管理方法。
Telnet 也可用于检查远程端口是否响应。例如,您可以连接到端口 25 上的邮件服务器,查看它是否接受连接,或者测试端口 80 或 443 上的 Web 服务是否响应,尽管现在有更专业的工具可用于此目的。
在本地网络或访问受限的环境中,如果流量不流向互联网且访问受到控制,偶尔使用它仍然是有意义的。 快速诊断和连接性测试始终假定所有流量均未加密。
Telnet 在管理和支持中的实际应用
Telnet 仍然最常见的应用场景之一是在以下任务中: 技术支持和网络管理许多旧设备或某些专用设备的指南和手册仍然指示“通过 Telnet 连接”来查看或修改配置。
例如,某些监控设备或较旧的摄像头允许通过 Telnet 访问以查看。 日志、跟踪或内部值技术人员可能需要这些信息来诊断问题。在这种情况下,如果您的电脑禁用了客户端,您将无法按照说明操作,直到您启用它为止。
Telnet 也可用于 检查电子邮件服务测试特定计算机上的 SMTP 端口(25、587 或 465,视情况而定)是否响应。如果电子邮件客户端无法发送邮件,则可以通过对相应端口进行简单的 Telnet 测试来排除端口阻塞或防火墙问题。
另一个有趣的用途是 网络连接验证即使您随后使用浏览器管理内容,您也可以尝试通过 Telnet 连接到服务器的 80 端口(HTTP)或 443 端口(HTTPS)来检查传输层响应。
在网络中,如果服务定义在自定义端口上(例如,使用非常规端口的内部应用程序),Telnet 允许 快速检查哪些端口可访问 从网络上的某个点来看,这在调整防火墙或怀疑存在中间阻塞时非常有用。
Telnet 安全风险和问题
Telnet最大的弱点是…… 它不会对您发送或接收的任何内容进行加密。所有流量,包括登录凭证,都以明文形式传输。任何能够访问网络流量的人(例如,在共享的 Wi-Fi 网络或被入侵的网络段上)都可以拦截并读取所有内容。 Wireshark 等工具.
这就为这类攻击打开了方便之门。 “中间人攻击”(MITM)在这些攻击中,攻击者会把自己置于客户端和服务器之间,截获凭据和命令,甚至可以注入恶意指令。在公共网络或不受控制的网络上使用 Telnet 实际上就等于泄露你的信息。
此外,Telnet 没有 强身份验证机制验证仅限于纯文本用户名和密码,没有证书、强大的公钥或加密层来保护初始交换,而像 SSH 这样的新协议确实提供了这些功能。
出于上述原因,在开放互联网上使用 Telnet 被认为是过时且危险的。像 IETF 这样的组织多年来一直在推动使用其他方法。 加密和现代协议实际上,任何稍微严肃一点的环境都应该已经迁移到 SSH 或其他安全解决方案。
在企业网络中,即使 Telnet 仍然在旧设备上使用,通常也会将其封装在其他安全机制中,限制其对内部网络段的访问,并应用严格的控制措施来最大限度地减少遭受攻击的风险。
Windows 10 和 Windows 11 中的 Telnet:您可以做什么和不能做什么
在现代Windows系统中,Telnet客户端仍然存在,但是 默认情况下处于禁用状态。这种情况发生在 Windows 10、Windows 11 以及许多早期的桌面版本,例如 Windows 8 或 Windows Vista。
改变的是,在当前的桌面版本中, 未包含 Telnet 服务器换句话说,您可以将 Windows 计算机用作客户端连接到其他具有活动 Telnet 服务器的计算机或设备,但您不能将 Windows 10 或 11 计算机变成 Telnet 服务器供其他人访问。
在早期版本(例如 Windows 7 或 Windows Vista)中(当然,也包括其他版本), Windows服务器虽然现在在面向互联网的生产环境中强烈不建议安装和启用 Telnet 服务器服务,但当时是可以安装和启用 Telnet 服务器服务的。
微软决定在桌面系统中默认禁用客户端并移除服务器,这是对以下情况的直接回应: 该协议存在严重的安全缺陷这样一来,它就只会由那些有意识地激活它的人使用,并且理论上来说,这些人知道自己将要面对什么。
如果您的目标只是执行连接性测试、诊断端口或将旧设备连接到内部网络,那么这将足够了。 激活 Telnet 客户端 在您的 Windows 10 或 Windows 11 系统上,您可以按照下面我们将介绍的方法之一进行操作。
如何在 Windows 图形界面中启用 Telnet
对许多用户来说,最直观、最容易记住的方法是从设备内部激活它。 Windows控制面板Windows 10 和 Windows 11 中的操作过程非常相似,基本上只是访问该选项的方式有所不同。
在 Windows 10 中,您可以打开“开始”菜单并键入 “控制面板” 在搜索栏中。在 Windows 11 中,您也可以直接搜索“Windows 功能”以获得更快捷的体验,但传统的控制面板仍然可用。
进入控制面板后,建议将视图更改为 “大图标”或“小图标” 要更好地查找选项,请单击“程序和功能”,其中管理可选的系统组件。
在左侧栏中,您会看到该链接 “启用或禁用Windows功能”点击它将打开一个窗口,其中包含一个相当全面的组件列表,可以添加或删除组件,包括 Telnet 客户端。
稍等片刻,待完整列表加载完毕后,查找名为“ “Telnet客户端”只需勾选复选框,点击“确定”,然后让 Windows 安装必要的文件。稍等片刻,Telnet 客户端就会在您的计算机上启用。
如何使用命令在 Windows 中启用 Telnet
如果您喜欢直奔主题并且熟悉使用终端,您可以从终端激活 Telnet 客户端。 命令提示 使用一条指令即可完成操作,如果您需要在多台计算机上执行此操作或使用脚本,这将非常实用。
首先,以管理员权限打开命令提示符窗口。为此,请在“开始”菜单搜索栏中键入“cmd”。 “ cmd”右键单击“命令提示符”,然后选择“以管理员身份运行”。如果出现用户帐户控制提示,请接受。
以管理员身份打开控制台后,输入以下命令以启用与 Windows Telnet 客户端对应的系统功能:
dism /online /enable-feature /featurename:TelnetClient
按下回车键后,DISM(部署映像服务和管理)工具将开始运行。 添加可选组件 系统会收到此操作。您会在控制台上看到进度条,进度条完成后,会指示操作已成功完成。
从那一刻起,命令 远程登录 它将在系统中可用,您可以从同一个 CMD 窗口或从您现在打开的其他控制台(例如 Windows Terminal 或 PowerShell)中使用它(通过调用相应的可执行文件)。
在 Windows 11 中启用和使用 Telnet
在 Windows 11 中,客户端的工作方式相同,激活过程几乎没有变化。实际上,它仍然依赖于相同的系统。 可选功能“Telnet客户端” 该功能在之前的操作系统版本中已经存在。
访问图形选项的最快方法是打开“开始”菜单或搜索框,然后键入 “特征”在搜索结果中,选择“打开或关闭 Windows 功能”,这将直接带您进入组件列表所在的窗口。
到了那里之后,你只需要找到…… “Telnet客户端”选中它,然后单击“确定”。Windows 11 将需要几秒钟时间来搜索和配置必要的文件,完成后,客户端即可在任何终端上使用。
接下来,打开应用程序。 Windows终端 或者,您可以使用经典的“命令提示符”启动 telnet 命令,无需安装任何其他软件。请务必记住,您必须在连接计算机以及(如果适用)另一台将作为交叉测试客户端的计算机或设备上启用 telnet 客户端。
如果您在任何时候不再需要此功能或想要减少系统的攻击面,您可以返回到 Windows 功能窗口, 取消选中该框 从“Telnet客户端”再次禁用它。
从控制台使用 Telnet 的基本操作
客户端激活后,基本用法非常简单:只需调用命令即可。 远程登录 后面跟上要连接的计算机地址,还可以选择输入端口号。此操作始终在终端窗口或命令提示符下完成。
例如,要尝试通过域名访问服务器,您可以输入类似这样的内容: telnet domain-name.com如果 Telnet 服务正在监听默认端口(23),并且没有设置任何阻止条件,则会建立连接。
如果要测试特定端口(例如网站或内部服务的端口),也可以指定端口号,例如: telnet 192.168.1.50 80 从您的计算机检查该 IP 地址的 80 端口是否已打开。
当端口关闭或路径被阻塞时,连接通常会失败,并显示错误信息。 错误信息 或者它可能会一直挂起直到超时。如果它立即响应,则说明端口可以访问,但该服务可能还需要进行其他更高级的测试。
除了主命令外,Telnet 还有一些内部命令(例如: 显示、设置或模式)允许您查看和调整连接参数、更改传输模式和其他高级详细信息,尽管大多数用户只需要基本的连接和端口测试功能。
启用 Telnet 以便在同一网络上的计算机之间进行测试
在小型办公网络、POS 或销售点系统等环境中,有时会使用 Telnet 来检查是否已连接。 服务器与终端之间的通信 它运行正常。一个典型的例子是桌面应用程序,它们需要确保所有计算机都能访问服务器。
第一步是一样的: 启用 Telnet 客户端 在将要执行测试的计算机上,按照已在 Windows 计算机上解释的任何方法(控制面板或 DISM 命令)进行操作。
接下来,在充当应用程序服务器的计算机上,可以方便地获取您的信息。 团队名称和 IP 地址 在本地网络中执行此操作。为此,请打开命令提示符(“开始”→“运行”→“cmd”),然后在打开的窗口中键入 ipconfig /all;如果需要更多命令,请执行以下操作 使用命令管理网络和 WiFi,查看该指南。
记录下这些信息后,您可以从同一网络上的另一台客户端计算机发出如下命令: telnet 服务器名称端口 或者使用 telnet server-ip-port 命令检查您要访问的服务在局域网内是否响应正常。
这种类型的测试有助于区分问题是否是由……引起的。 网络连接、端口被阻止或应用程序设置尤其是在多台 PC 依赖于单个中央服务器的部署环境中。
Telnet 的现代且安全的替代方案
由于 Telnet 最大的问题是完全缺乏加密,多年来出现了许多替代方案。 安全性、强大的身份验证以及更多功能同时保持远程管理设备的能力。
最流行的替代方案无疑是 SSH(安全外壳协议);要从 Windows 管理 SSH 连接,您可以使用以下方法: Plink 命令该协议的工作原理类似,允许以命令行模式打开远程会话,但所有通信均采用端到端加密。它还支持使用公钥进行身份验证、加密隧道和安全文件传输(SFTP、SCP)。
另一个有趣的选择是 莫什(手机壳)Mosh 专为不稳定或移动网络连接而设计。与 Telnet 或纯 SSH 不同,Mosh 即使在网络连接不稳定或移动网络不稳定的情况下也能保持会话。 无论您是切换网络、短暂断开连接还是合上笔记本电脑。这使得它对经常出差的管理员非常有用。
在 Windows 生态系统中,远程访问中非常常见的 Telnet 替代方案是 RDP(远程桌面协议)微软的远程桌面协议不是通过命令而是通过图形界面进行管理的,这使得它非常适合那些喜欢直接查看对方计算机桌面的人,而且比 Telnet 更安全。
也有 VNC(虚拟网络计算)它允许您远程查看和控制另一台计算机的桌面。虽然其安全性不如 SSH 本身强大,但它可以与 SSH 隧道结合使用以增加加密功能,因此对于需要以图形方式访问远程系统的用户来说,它是一个有用的补充。
在安全至关重要的环境中,通常建议除非绝对必要,否则避免使用 Telnet,而选择其他方式。 SSH、RDP 或其他加密协议这样就能实现更安全、更灵活的远程管理,以适应当前的需求。
如今,在 Windows 中启用 Telnet 主要意义在于…… 现场测试、实验室环境或与旧设备的兼容性始终仅在受控网络中使用。对于所有其他用途,最好依赖现代替代方案,并将 Telnet 安全地束之高阁,仅在绝对必要时才使用。
对字节世界和一般技术充满热情的作家。我喜欢通过写作分享我的知识,这就是我在这个博客中要做的,向您展示有关小工具、软件、硬件、技术趋势等的所有最有趣的事情。我的目标是帮助您以简单而有趣的方式畅游数字世界。