欺骗Windows让不能上网的机器也不显示网卡黄叹号

作者:tKC 发布时间:June 24, 2016 分类:IT技术,微软 No Comments

由于公司绝大部分计算机都不能连接互联网,经常有员工会问说自己网络有问题,网卡显示黄叹号,而实际上只有局域网情况下,确实就是显示黄叹号。
这是由于微软的一个网络状态指示器在工作导致的,而工作的原理如下:
首先一个DNS请求,www.msftncsi.com,然后请求此主机的/ncsi.txt文件。
内容是“Microsoft NCSI”
然后还会请求到dns.msftncsi.com的DNS名称解析。
当然针对这两个域名对应的IP地址还会做一些检测工作(恕我懒得抓包分析,谢谢)
如果都操作成功,那么恭喜你,网卡图标就没有黄色小叹号了。

如果不想看到黄色叹号,有两个解决办法
1、组策略(如果有域环境就更好了,一劳永逸)
依次展开“计算机配置”、“管理模板”、“系统”和“Internet 通信管理”,然后单击“Internet 通信设置”。在详细信息窗格中,双击“关闭 Windows 网络连接状态指示器活动测试”,然后单击“已启用”。
2、仅允许网络状态指示器检测的两个域名的网络地址访问
如果你没有域环境,且不想一台一台的设置,那么到防火墙或者行为管理服务器上允许这两个域名指向的IP访问即可,当然由于www.msftncsi.com是个地址池,我挑了里面ping值最低的一个IP(173.222.148.11),再顺便DNS劫持了一下,让内网请求www.msftncsi.com和dns.msftncsi.com都指向173.222.148.11这个IP地址就可以了。

注:实在太懒了,如果谁有时间有精力可以研究一下www.msftncsi.com上提供的服务,然后在内网做一个和它一样的机器就完美了。

PHP下使用ldap域账户认证密码

作者:tKC 发布时间:March 14, 2016 分类:IT技术,应用开发 No Comments

以前用过一个模块来调用认证域帐号的,后来发现引用代码太多,因为只是为了做帐号密码认证,不做其他任何查询什么的,所以干脆拔代码自己精简下,下面的代码只是利用了输入正确的帐号密码创建ldap连接来判断密码是否正确。

<?php
    if (isset($_POST['UserName']))
        {
        $_SESSION['txtNo']=$_POST['UserName'] ;
        $ldapConnect=ldap_connect('192.168.1.200' , '389' );  
        //建立到ldap服务器的连接192.168.1.200是ldap服务器ip,389是ldap服务器端口(默认389)  
            $bind= @ldap_bind($ldapConnect , $_POST['UserName'] . '@yourname.local',$_POST['PassWord'] );  
         //验证帐号密码,ldap_bind第一个为绑定的连接,第二个为用户名(注意是否有后缀),第三个为密码。  
            if($bind )  
            {//验证成功,跳转到ok.php
                $_SESSION['login']="ok";
        echo '<meta http-equiv="refresh" content="0;url=ok.php">';
            }  
            else  
            {//验证失败,弹出提示,并跳转回login.php
                echo "<script>alert('用户名或密码错误')</script>";
                echo '<meta http-equiv="refresh" content="0;url=login.php">';
         }  
            ldap_close($ldapConnect);   
        //关闭ldap连接  
        }
    else {
        echo "<script>alert('用户名或密码错误')</script>";
        echo '<meta http-equiv="refresh" content="0;url=login.php">';
    }
?>

Windows上配置PHP的LDAP扩展

作者:tKC 发布时间:March 14, 2016 分类:IT技术,服务软件 No Comments

写个程序,需要用到ldap的功能,发现报错,虽然php.ini打开了ldap的模块,但phpinfo中没有发现ldap扩展
搜索一番,发现,win下面还需要apache强制加载两个依赖库libeay32.dll和ssleay32.dll,
修改apache的配置文件,强制加载着两个扩展:

LoadFile "C:/PHP/ext/ssleay32.dll"
LoadFile "C:/PHP/ext/libeay32.dll"

重启即可。

Solaris10上开启VNC服务

作者:tKC 发布时间:April 9, 2015 分类:服务软件 No Comments

默认情况下,Solaris10已经把VNC安装好了
只需要简单开启服务并配置就可以使用
检查VNC服务状态
root# svcs -a | grep -i vnc
online 18:02:34 svc:/application/x11/xvnc-inetd:default

现在我们要开启这个服务
root# svcadm enable svc:/application/x11/xvnc-inetd:default
接着配置服务选项
root# echo "vnc-server\t5900/tcp\t\t\t# Xvnc" >>/etc/services
接着编辑/etc/X11/gdm/custom.conf文件
root# vi /etc/X11/gdm/custom.conf
如果没有则会创建该空文件,添加以下内容
[xdmcp]
Enable=true
[security]
DisallowTCP=false
AllowRoot=true
AllowRemoteRoot=true

然后禁用启用服务,接着检查服务状态
root# svcadm disable svc:/application/x11/xvnc-inetd:default
root# svcadm enable svc:/application/x11/xvnc-inetd:default
root# svcs svc:/application/x11/xvnc-inetd:default
online 18:15:00 svc:/application/x11/xvnc-inetd:default

如果是online则说明配置正确,最后可以使用你习惯的vnc客户端直接连接这个Solaris服务器了

Windows2012R2存储池硬盘故障更换硬盘

作者:tKC 发布时间:December 25, 2014 分类:微软 2 Comments

自从了解到Windows2012支持块去重和存储池以后,文件共享服务器装2012R2成了首选
有台N36L跑Windows2012R2,3Tx4做的存储池,里面虚拟磁盘做的mirror方式,所以允许损坏单侧的一半硬盘
刚好发现在拷贝数据的时候忽然变慢,用HDTune查看了一下,发现有坏道,于是换了块硬盘
由于之前在虚拟机下测试过,也在Win8.1下实际应用过更换硬盘,所以就想当然的关机,换硬盘,开机
在进入系统之后,手工添加新增的硬盘到存储池后,发现并没有自动恢复存储池
于是乎搜索了一番(如果是Win8.1它在添加完磁盘后会自动开始重组的)
经过若干个小时的数据备份(因为怕误操作导致数据丢失)
以下就是命令行的恢复方法
输入如下命令列出所有物理磁盘
Get-PhysicalDisk |? { $_.ObjectId.Contains( $PhysicalDiskGUID ) }
FriendlyName CanPool OperationalStatus HealthStatus Usage
------------ ------- ----------------- ------------ -----
PhysicalDisk3 False OK Healthy Auto-Select
PhysicalDisk1 False OK Healthy Auto-Select
PhysicalDisk0 False OK Healthy Auto-Select
PhysicalDisk4 False OK Healthy Auto-Select
PhysicalDisk2 False OK Healthy Auto-Select
PhysicalDisk-1 False Lost Communication Warning Retired

PhysicalDisk-1就是系统记录的更换下去的旧硬盘,显示状态为Lost Communication,我们需要输入以下命令让它“退休”
Set-PhysicalDisk -FriendlyName "PhysicalDisk-1" -Usage Retired
接着输入命令重组和坏硬盘相关的虚拟磁盘,我的虚拟磁盘命为vd1,你需要替换为你自己的虚拟磁盘名
Repair-VirtualDisk -FriendlyName vd1

阅读剩余部分...