同局域网内,如何禁止客户机访问局域网,但是自己写的程序能访问SQL?
另外,如果客户机的策略(gpedit.msc)中GUEST禁止以及用户中的GUEST关闭,在不打开情况如何才能访问SQL?

解决方案 »

  1.   

    策略中好像可以指定一些可以访问的命名管首,加入SQLServer管道名吧
      

  2.   

    我的意思是,在服务器上设置客户机不能访问任何局域网内的机器,但可以访问服务器的SQL数据库,这个怎么处理?需要做一个服务器的代理程序吗?
      

  3.   

    to lihuasoft(学习低调做人)
    查了一些资料,设置成不同网段需要路由器,另外,不同网段间如果访问SQL数据库(即只访问SQL数据库)?
      

  4.   

    简单.两个方案:
    1.假设你的服务器是域控服务器,那么任何机器都要登录你的服务器,你就在服务器上做个文件,该文件可以自动在客户机登录的同时加载到客户机中.使客户机全部统一按你的设置进行配置.你只需要在做该文件的时候将客户禁止他们修改你的网络设置,然后关闭所有端口,就留一个1433端口就行了.因为TCP/IP协议访问SQL只需要一个1433端口就可以了;
    2.假设你嫌复杂,那么你可以将所有计算机的管理员权限给拿掉,然后将其它用户做成非管理,使得他们不能修改你的网络设置.然后自己手工到每台工作站上用管理员登陆.在网络连接属性中的本地连接中将所有协议删除,就留一个TCP/IP协议,然后在该协议的高级选项--选项页面中可以找到"TCP/IP筛选",点它,再点属性.勾上"起用TCP/IP筛选(所有适配齐)",然后选择TCP/IP端口"只允许"点添加,输入1433点确定.然后一路确定所有窗口.最后重新启动就成了.
    但是先决条件是你的SQL必须是在装的时候就设好了,所有客户可以通过1433访问,而没有被修改过.
      

  5.   

    使用windows的安全机制,可以指定系统安全策略,开放mssql的端口
      

  6.   

    客户机关闭端口
    TCP 139
    TCP 445
    UDP 137
    UDP 138
    与网卡绑定的服务中取消
    Microsoft 网络客户端
    Microsoft 网络的文件和打印机共享
    只保留TCP/IP协议
      

  7.   

    只保留TCP/IP协议
    只开1433/1434端口(貌似1434也可以关,不确认)
      

  8.   

    Don't expose your database server. expose your application server (web service) or your web server (web site)
      

  9.   

    方法是有的 GUSET可以开着 
    然后使用本地安全策略关闭TCP UDP 135、139
    只开放1433端口 或自己设置的SQL端口!
    设置好后 给没个客户端导入策略!即可
      

  10.   

    在程序里实现不非常不现实的,因为windows端口很多。你不可能都屏蔽了。还是用防火墙比较合适,但也不能完全做到你的想法。