提高SqlServer数据库的安全性,禁用掉sa账户

  • Post author:
  • Post category:其他


Sqlsever 数据库有两种登陆身份验证模式,一种是windows身份验证;一种是sqlserver 账户验证模式,在sqlserver 账户验证模式中,sa账户是大家所熟知的,并且sa也是内置的默认管理员账户,拥有最高的操作权限;前面提到,sa账户是大家所熟知的,那么,一些别有用心的人也知道sa账户,这就为我们的数据安全留下了隐患;



黑客会通过扫描程序在互联网上大量扫描,会发现那些开着远程访问,并且使用sa账户的数据库服务器,然后用穷举法不断尝试密码,即使是你的密码在怎么复杂,也扛不住它24小时不间断的扫描。

如果你的数据库还在使用sa账户登录,并且还设置了远程登录(内网除外,这里说的是外网登录),那么你现在就可以去查看下你是不是已经被成功锁定了,打开【管理】-【Sql Server日志】如下图:


可以看到,当前我的这台服务器已经有大量的IP在扫描尝试sa账户登录了,1秒钟可以多达几次,并且不止一个IP在扫描;

然后,将扫描的IP提取出来,查看IP所在地



【27.8.47.222来自重庆市重庆市】 联通【122.163.123.129来自印度】



可见作恶这种事情,是多么国际化,一个IP来自重庆,一个IP来自印度,这些恶意IP大量扫描,不仅会给我们的安全带来极大的危险,而且还会占用我们的服务器带宽,并且每一次扫描都会被sqlserver日志所记录,也会使我们的数据库日志文件增大,占用服务器空间;



所以,为了安全起见,我们可以从以下几个方面提高我们的安全级别:




1:禁用sa账户;



2:修改sqlserver 服务器默认端口1433;



3:限制sqlserver 登陆IP;



4:关闭数据库外网访问;(如果有网站需要使用数据库服务,则在内网使用web 服务访问数据库服务就可以了,开放Web服务的外网访问,关闭掉数据库的外网访问)



禁用 sa 账户


1、打开SQL连接工具(SQL Server Management Studio),并使用windows验证登录。


2、连接到数据库后,找到安全性 — 登录名 — 找到sa账户;在sa账户中,右键选择属性选项。


3、找到状态选项,可以看到右边有:是否允许连接到数据库引擎 和 登录两项。并进行设置,然后保存。


设置后进行保存,将是否允许连接到数据库引擎 和 登录状态分别设置为 拒绝  和 禁用。



可以看到sa账户出现小箭头表示状态。


4、测试sa账号能否正常登录。


打开SQL连接工具(SQL Server Management Studio)连接数据:


这里用另一个数据库客户端(Navicat 工具)测试:


部分内容参考这篇文章:


https://www.cnblogs.com/Rawls/p/9950839.html



版权声明:本文为zgphacker2010原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。