• 售前

  • 售后

热门帖子
入门百科

SQL Server 2000的安全设置

[复制链接]
DJ牧南 显示全部楼层 发表于 2021-10-25 20:33:35 |阅读模式 打印 上一主题 下一主题
SQL Server 2000的安全设置在举行SQL Server 2000数据库的安全设置之前,首先你必须对操作系统举行安全设置,包管你的操作系统处于安全状态。然后对你要使用的操作数据库软件(步调)举行须要的安全考核,好比对ASP、PHP等脚本,这是很多基于数据库的WEB应用常出现的安全隐患,对于脚本重要是一个过滤标题,必要过滤一些类似 , ‘ ; @ / 等字符,防止破坏者构造恶意的SQL语句。接着,安装SQL Server2000后请打上补丁sp1以及最新的sp2。

  下载地址是:http://www.microsoft.com/sql/downloads/2000/sp1.asp 
和 http://www.microsoft.com/sql/downloads/2000/sp2.asp
在做完上面三步根本之后,我们再来讨论SQL Server的安全设置。

  1、使用安全的暗码策略

  我们把暗码策略摆在全部安全设置的第一步,请注意,很多数据库帐号的暗码过于简朴,这跟系统暗码过于简朴是一个原理。对于sa更应该注意,同时不要让sa帐号的暗码写于应用步调大概脚本中。健壮的暗码是安全的第一步!SQL Server2000安装的时间,假如是使用肴杂模式,那么就必要输入sa的暗码,除非你确认必须使用空暗码。这比以前的版本有所改进。同时养成定期修改暗码的好习惯。数据库管理员应该定期查看是否有不符合暗码要求的帐号。

  好比使用下面的SQL语句:
  Use master
  Select name,Password from syslogins where password is null

  2、使用安全的帐号策略

  由于SQL Server不能更改sa用户名称,也不能删除这个超等用户,以是,我们必须对这个帐号举行最强的掩护,当然,包括使用一个非常强健的暗码,最好不要在数据库应用中使用sa帐号,只有当没有其它方法登录到 SQL Server 实例(例如,当其它系统管理员不可用或忘记了暗码)时才使用 sa。建议数据库管理员新创建个拥有与sa一样权限的超等用户来管理数据库。安全的帐号策略还包括不要让管理员权限的帐号泛滥。

  SQL Server的认证模式有Windows身份认证和肴杂身份认证两种。假如数据库管理员不盼望操作系统管理员来通过操作系统登岸来打仗数据库的话,可以在帐号管理中把系统帐号“BUILTIN\Administrators”删除。不外如许做的结果是一旦sa帐号忘记暗码的话,就没有办法来规复了。很多主机使用数据库应用只是用来做查询、修改等简朴功能的,请根据现实必要分配帐号,并赋予仅仅能够满意应用要求和必要的权限。好比,只要查询功能的,那么就使用一个简朴的public帐号能够select就可以了。

  3、增强数据库日志的记载

  考核数据库登录变乱的“失败和乐成”,在实例属性中选择“安全性”,将其中的考核级别选定为全部,如许在数据库系统和操作系统日志里面,就详细记载了全部帐号的登录变乱。请定期查看SQL Server日志查抄是否有可疑的登录变乱发生,大概使用DOS命令。findstr /C:"登录" d:\Microsoft SQL Server\MSSQL\LOG\*.*

  4、管理扩展存储过程

  对存储过程举行大手术,而且对帐号调用扩展存储过程的权限要慎重。实在在多数应用中根本用不到多少系统的存储过程,而SQL Server的这么多系统存储过程只是用来顺应广大用户需求的,以是请删除不须要的存储过程,由于有些系统的存储过程能很轻易地被人使用起来提拔权限或举行破坏。假如你不必要扩展存储过程xp_cmdshell请把它去掉。使用这个SQL语句:
use master
sp_dropextendedproc 'xp_cmdshell'
xp_cmdshell是进入操作系统的最佳捷径,是数据库留给操作系统的一个大后门。假如你必要这个存储过程,请用这个语句也可以规复过来。
sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'
假如你不必要请扬弃OLE主动存储过程(会造成管理器中的某些特征不能使用),
这些过程包括如下:
Sp_OACreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProperty
Sp_OAMethod Sp_OASetProperty Sp_OAStop
去掉不必要的注册表访问的存储过程,注册表存储过程甚至能够读出操作系统管理员的暗码来,如下:
Xp_regaddmultistring Xp_regdeletekey Xp_regdeletevalue
Xp_regenumvalues Xp_regread Xp_regremovemultistring
Xp_regwrite
尚有一些其他的扩展存储过程,你也最好查抄查抄。在处置惩罚存储过程的时间,请确认一下,制止造成对数据库或应用步调的伤害。

  5、使用协议加密

  SQL Server 2000使用的Tabular Data Stream协议来举行网络数据互换,假如不加密的话,全部的网络传输都是明文的,包括暗码、数据库内容等等,这是一个很大的安全威胁。能被人在网络中截获到他们必要的东西,包括数据库帐号和暗码。以是,在条件容许情况下,最好使用SSL来加密协议,当然,你必要一个证书来支持。

  6、不要让人随便探测到你的TCP/IP端口

  默认情况下,SQL Server使用1433端口监听,很多人都说SQL Server设置的时间要把这个端口改变,如许别人就不能很轻易地知道使用的什么端口了。痛惜,通过微软未公开的1434端口的UDP探测可以很轻易知道SQL Server使用的什么TCP/IP端口了。不外微软还是思量到了这个标题,毕竟公开而且开放的端口会引起不须要的贫苦。在实例属性中选择TCP/IP协议的属性。选择隐蔽 SQL Server 实例。假如隐蔽了 SQL Server 实例,则将禁止对试图罗列网络上现有的 SQL Server 实例的客户端所发出的广播作出相应。如许,别人就不能用1434来探测你的TCP/IP端口了(除非用Port Scan)。

  7、修改TCP/IP使用的端口

  请在上一步设置的根本上,更改原默认的1433端口。在实例属性中选择网络设置中的TCP/IP协议的属性,将TCP/IP使用的默认端口变为其他端口.

  9、拒绝来自1434端口的探测

  由于1434端口探测没有限制,能够被别人探测到一些数据库信息,而且还大概遭到DOS攻击让数据库服务器的CPU负荷增大,以是对Windows 2000操作系统来说,在IPSec过滤拒绝掉1434端口的UDP通讯,可以尽大概地隐蔽你的SQL Server。

  10、对网络毗连举行IP限制

  SQL Server 2000数据库系统本身没有提供网络毗连的安全办理办法,但是Windows 2000提供了如许的安全机制。使用操作系统自己的IPSec可以实现IP数据包的安全性。请对IP毗连举行限制,只包管自己的IP能够访问,也拒绝其他IP举行的端口毗连,把来自网络上的安全威胁举行有效的控制。关于IPSec的使用请参看:http://www.microsoft.com/china/technet/security/ipsecloc.asp

  上面重要介绍的一些SQL Server的安全设置,经过以上的设置,可以让SQL Server本身具备充足的安全防范本领。当然,更重要的还是要增强内部的安全控制和管理员的安全培训,而且安全性标题是一个长期的办理过程,还必要以后举行更多的安全维护。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作