提到Windows系统的网络登录 , 一般我们首先想到的是3389登录 , 也就是通过终端连接服务器登录目标机器 。但是 , 你可能还不是十分清楚 , Windows系统之间的网络登录其实大部分是通过139端口进行的 。这是由SMB/CIFS协议所规定的 , 客户端通过139建立连接 , 发送用户名和密码到服务器端 , 服务器端在139端口监听 , 接受到客户端的请求后 , 检查接收到的用户名和口令 , 如果错误 , 则拒绝连接 , 如果正确 , 则给予客户端相应的权限 , 这就是Windows最基本网络登录过程 。上面的说法你可能会觉得很抽象 , 实质上 , 这个登录过程我们可以形象的把它看作目标机器建立IPC连接 。你执行的net use命令跟机器建立IPC连接 , 就是通过139发出请求 , 如果你的net命令里所使用的用户是Administrators组的 , 则建立成功后目标机器会给你的IPC连接Administrators权限 , 如果是Guest的权限 , 当然 , 如果是用空连接 , 那得到的权限是微不足道的了 。
关于IPC的小知识:IPC是Internet Process Connection的缩写 , 也就是远程网络连接 。它是Windows NT/2000/XP特有的一项功能 , 就是在两个计算机进程之间建立通信连接 。然后 , 一些网络通信程序的通信可以建立在IPC上面 。打个比方 , IPC连接就像是挖好的地道 , 然后我们用程序通过地道访问远程主机 。默认情况下 , IPC是共享的 , 也就是说微软已经为我们挖好了这个地道(IPC) 。建立IPC连接需要什么条件呢?首先自己的系统应该是WinNT以上的 , Windows 98不可以 , 因为Win98网络管理这方面的功能很少 , Windows 98没有IPC , IPC是Windows NT和Windows 2K/XP/2003才有的 。
OK , 理解了IPC连接 , 我们再深入一步 , 其实IPC也是一种共享资源 , 只不过比较特殊罢了 , 我们用net use建立IPC连接的时候 , 说白了 , 就是用我们所掌握的用户名和口令申请对方的IPC共享资源 。同样的 , 我们用net use命令映射对方磁盘的时候 , 也是用我们掌握的用户名和口令申请对方磁盘共享资源 。所以 , net use这个命令不管你申请IPC资源还是磁盘资源 , 都通过139端口先进行网络登录 , 然后进行的 。
网络登录过程基本上就这样了 , 我们继续深入 , 看一下网络登录获得的权限问题 。首先要说一下 , 在这权限问题上 , Windows 2000系统和Windows XP系统的处理是不同的 。
先来看Windows 2000 。Windws 2000系统做得比较实在(呵呵 , 怎么这么说呢?) , Windows 2000系统完全是按照你提供的用户名和口令赋予登录权限的 , 也就是你用超级用户登录(就是建立连接了) , 那你就可以得到超级用户的连接权限 , 你用Guest登录 , 你得到Guest的连接权限 , 而你用空连接的话 , 那得到的权限就象前面说的 , 微不足道 。再来看Windows XP , 这就跟Windows 2k系统不同了 。默认的Windows XP系统不是根据你提供的用户名和口令来赋予登录权限的 。这点你可以在Windows XP系统的帮助里面找到 , 如图所示(如图) 。Windows XP的网络登录有两种模式可用:“典型”和“仅来宾” , 详细的解释如下:
如果将登录模式设置为“典型”则登录过程中使用客户提供的用户进行登录 , 登录成功后具有这个用户的权限 。如果设置为“仅来宾” , 则登录过程中不论是用什么用户登录 , 如果登录成功 , 则自动映射到“来宾”帐户 , 也就是只有Guest用户的权限 , 简单的说 , Windows XP网络登录所获得的权限取决于系统的设置 , 如果为“典型” , 那么你可以获得你所拥有用户的相应权限 , 如果你有超级用户 , 那么取得的权限就是超级用户权限 , 而如果为“仅来宾” , 那么无论你用什么用户权限 , 即使是超级用户 , 建立连接后得到的只能是Guest权限 , 很不幸的是 , Windows XP系统默认设置是“仅来宾” 。
网络登录的权限问题搞清楚了 , 下面我们扩展一下 , 当我们去请求目标机器的资源的时候都需要什么权限 , IPC$很简单 , 在目标系统默认设置下 , 无论Guest用户 , Administrator用户 , 甚至NULL , 都可以进行登录 , 而磁盘资源则不同 , 默认设置下 , 只能用Administrators组的用户登录 , 也就是只能超级用户权限映射磁盘 。
现在网络登录已经讲的差不多了 , 下面看一下一个具体的问题 , 以下是一个朋友在论坛上发的帖子:局域网中 , 对方使用XP , 打开了139端口 , 我用对方机器上的超级用户IPC连接(密码和用户名都肯定正确) , 提示成功 , 想用net use z:ipd$这个命令映射对方的D盘 , 却老是提示用户名和密码不正确 , 就算我把正确的用户名和密码输进去 , 还是不行 。这是为什么啊??
有了前面我所介绍的基础 , 现在我们完全可以来回答这个问题了 , 对方是Windows XP系统 , 有了正确的超级用户的口令 , 用这个口令建立IPC连接成功 , 可是映射磁盘不成功 , 原因就出在Windows XP的“仅来宾”的默认设置上 , 不管你用什么口令登录 , 都是Guest权限 , 而映射磁盘必须是Administrator权限 , 所以 , 磁盘根本无法映射成功 , IPC可以连接成功 , 是因为建立IPC连接不需要什么特别的权限 , 任何用户口令甚至为NULL都可以 。
【Win 2000与XP网络登录中的一点差异】下面我们来总结一下 , 默认设置下 , Windows 2000系统只要你有超级用户的权限 , 就可以获取目标的任何共享资源 , Windows XP系统则不同了 , 因为默认设置是“仅来宾” , 所以 , 无论你用什么用户登录 , 即使你有超级用户的口令 , 但登录后得到的权限仅仅是Guest 。
- 数列的极限与数列收敛的关系
- Windows11未激活怎么换回原来的壁纸 win11系统未激活
- Windows11最低配置要求是什么 Windows11要求配置
- Windows11无法访问指定设备路径和文件怎么解决
- 2128我的心爱
- 红米3开启与关闭触屏震动的方法
- 数学中的截距
- 体验Windows Vista系统的程序兼容模式
- 10个最常用 Windows Vista运行命令
- 无键盘使用Windows Vista
