手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

深入了解远程登录标准协议Telnet

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

Telnet选项的协商方式也很有意思,他对于每个选项的处理都是对称的,即任何一端都能够发出协商申请;任何一端都能够接受或拒绝这个申请。另外,假如一端试图协商另一端不了解的选项,接受请求的一端可简单的拒绝协商。因此,有可能将更新,更复杂的Telnet客户机服务器版本和较老的,不太复杂的版本进行交互操作。假如客户机和服务器都理解新的选项,可能会对交互有所改善。否则,他们将一起转到效率较低但可工作的方式下运行。任何的这些设计,都是为了增强适应异构性,可见Telnet的适应异构性对其的应用和发展是多么重要。

上面讨论了一些原理方面的东西,虽然我们在Telnet的使用过程中很难接触到这一层面,但我认为了解这些是有意义的,他会给我们带来许多启示。下面让我们来看看Win2000的Telnet服务。

四 Win2000的Telnet服务

其实从应用层面上,Win2000的Telnet服务并没有什么可说的,绝大部分内容您都能够从HELP文档中得到,我在此只是把他稍微整理一下而已。

1 基本配置

Win2000为我们提供了Telnet客户机和服务器程式:Telnet.exe是客户机程式(Client),tlntsvr.exe是服务器程式(server),同时他还为我们提供了Telnet服务器管理程式tlntadmn.exe。

Windows 2000 默认安装了 Telnet 服务,但是并没有默认启动。下面给出HELP文档中 Telnet 服务的一部分默认配置:

AllowTrustedDomain:是否允许域用户访问。默认值是1,允许信任域用户访问。能够改为0: 不允许域用户访问(只允许本地用户)。

DefaultDomain:能够对和该电脑具备信任关系的任何域配置。默认值是"."。

DefaultShell:显示 shell 安装的路径位置。默认值是: %systemroot%System32Cmd.exe /q /k

MaxFailedLogins:在连接终止之前显示尝试登录失败的最大次数。默认是3。

LoginScript:显示 Telnet 服务器登录脚本的路径位置。默认的位置就是“%systemroot%System32login.cmd”,您能够更改脚本内容,这样登录进Telnet的欢迎屏幕就不相同了。

NTLM:NTLM身份验证选项。默认是2。能够有下面这些值:

0: 不使用 NTLM 身份验证。

1: 先尝试 NTLM 身份验证,假如失败,再使用用户名和密码。

2: 只使用 NTLM 身份验证。

TelnetPort:显示 telnet 服务器侦听 telnet 请求的端口。默认是:23。您也能够更改为其他端口。

以上各项配置您能够使用tlntadmn.exe(Telnet服务器管理程式)来进行很方便的配置,配置后需要重新启动Telnet服务。

2 NTLM

提到了telnet就不能不提NTLM,我想这也是让入侵者最为头痛的一件事,哪怕您获得了管理员帐号和密码,想简单通过NTLM也并非易事,况且win2000中的telnet默认仅以NTLM方式验证身份,这就让我们不得不关注NTLM这个东东,那么什么是NTLM呢?

早期的SMB协议在网络上明文传输口令,后来出现了"LAN Manager Challenge/Response"验证机制,简称LM,他十分简单以至很容易被破解,微软随后提出了WindowsNT挑战/响应验证机制,即NTLM。现在已有了更新的NTLMv2连同Kerberos验证体系。NTLM工作流程是这样的:

1、客户端首先在本地加密当前用户的密码成为密码散列

2、客户端向服务器发送自己的帐号,这个帐号是没有经过加密的,明文直接传输

3、服务器产生一个16位的随机数字发送给客户端,作为一个 challenge(挑战)

4、客户端再用加密后的密码散列来加密这个 challenge ,然后把这个返回给服务器。作为 response(响应)

5、服务器把用户名、给客户端的challenge 、客户端返回的 response 这三个东西,发送域控制器

6、域控制器用这个用户名在 SAM密码管理库中找到这个用户的密码散列,然后使用这个密码散列来加密 challenge。

7、域控制器比较两次加密的 challenge ,假如相同,那么认证成功。

从上面的过程我们能够看出,NTLM是以当前用户的身份向Telnet服务器发送登录请求的,而不是用您扫到的对方管理员的帐户和密码登录,显然,您的登录将会失败。举个例子来说,您家的机器名为A(本地机器),您入侵的机器名为B(远地机器),您在A上的帐户是xinxin,密码是1234,您扫到B的管理员帐号是Administrator,密码是5678,当您想Telnet到B时,NTLM将自动以当前用户的帐号和密码作为登录的凭据来进行上面的7项操作,即用xinxin和1234,而并非用您扫到的Administrator和5678,且这些都是自动完成的,根本不给您插手的机会,因此您的登录操作将失败。

由于Telnet服务器对NTLM的使用有3个选项,所以当您Telnet远地机器时,会显示下面情况中的一种:

1)身份验证选项=0时

Microsoft (R) Windows (TM) Version 5.00 (Build 2195)

Welcome to Microsoft Telnet Service

Telnet Server Build 5.00.99201.1

login:

password:

/为0时不使用NTML身份验证,直接输入用户名和密码,比如您能够输入扫到的Administrator和5678

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!