如何禁止访问局域网,但SQL能访问? Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiDB/html/delphi_20061222112257168.html
同局域网内,如何禁止客户机访问局域网,但是自己写的程序能访问SQL?
另外,如果客户机的策略(gpedit.msc)中GUEST禁止以及用户中的GUEST关闭,在不打开情况如何才能访问SQL?
自己顶一下
策略中好像可以指定一些可以访问的命名管首,加入SQLServer管道名吧
端口直接过滤了
把两台机子设为不同的网段,可以限制一定形式的“访问”
我的意思是,在服务器上设置客户机不能访问任何局域网内的机器,但可以访问服务器的SQL数据库,这个怎么处理?需要做一个服务器的代理程序吗?
to lihuasoft(学习低调做人)
查了一些资料,设置成不同网段需要路由器,另外,不同网段间如果访问SQL数据库(即只访问SQL数据库)?
端口过滤!类似防火墙的原理
简单.两个方案:
1.假设你的服务器是域控服务器,那么任何机器都要登录你的服务器,你就在服务器上做个文件,该文件可以自动在客户机登录的同时加载到客户机中.使客户机全部统一按你的设置进行配置.你只需要在做该文件的时候将客户禁止他们修改你的网络设置,然后关闭所有端口,就留一个1433端口就行了.因为TCP/IP协议访问SQL只需要一个1433端口就可以了;
2.假设你嫌复杂,那么你可以将所有计算机的管理员权限给拿掉,然后将其它用户做成非管理,使得他们不能修改你的网络设置.然后自己手工到每台工作站上用管理员登陆.在网络连接属性中的本地连接中将所有协议删除,就留一个TCP/IP协议,然后在该协议的高级选项--选项页面中可以找到"TCP/IP筛选",点它,再点属性.勾上"起用TCP/IP筛选(所有适配齐)",然后选择TCP/IP端口"只允许"点添加,输入1433点确定.然后一路确定所有窗口.最后重新启动就成了.
但是先决条件是你的SQL必须是在装的时候就设好了,所有客户可以通过1433访问,而没有被修改过.
使用windows的安全机制,可以指定系统安全策略,开放mssql的端口
客户机关闭端口
TCP 139
TCP 445
UDP 137
UDP 138
与网卡绑定的服务中取消
Microsoft 网络客户端
Microsoft 网络的文件和打印机共享
只保留TCP/IP协议
只保留TCP/IP协议
只开1433/1434端口(貌似1434也可以关,不确认)
Don't expose your database server. expose your application server (web service) or your web server (web site)
学习了,cowboy_tt() 可以参考一下
用防火墙,只开放1433端口
楼上的方法好.
好解决么。装个防火墙,就开通1433端口好了。
方法是有的 GUSET可以开着
然后使用本地安全策略关闭TCP UDP 135、139
只开放1433端口 或自己设置的SQL端口!
设置好后 给没个客户端导入策略!即可
在程序里实现不非常不现实的,因为windows端口很多。你不可能都屏蔽了。还是用防火墙比较合适,但也不能完全做到你的想法。