我正在使用 MS-SQL Server 2008 实例作为项目的后端数据库服务器。我在托管我的项目和 SQL Server 的机器上进行了一些安全测试,并在 SQL Server 上获得了以下报告:
端口上有1853/TCP
一个数据库服务器正在运行(特别是 MSSQL 和版本号),并且响应在登录前响应中可用。
我怎样才能将这些信息和 SQL Server 一起隐藏?
我找不到创建触发器并允许访问特定 IP 的方法,但我不确定这是否能正确解决我的问题。
答案1
如果攻击者可以访问 TCP 端口,他们就可以找到此信息。您需要使用某种防火墙来阻止无权访问 SQL Server 的人访问它。
将 SQL Server 放在非标准端口上并不是防止人们试图侵入您的 SQL Server 的好方法。
答案2
为什么是 1853 端口?SQL Server 的标准端口是 1433,您自定义了它吗?否则,这意味着该端口属于计算机上正在运行的其他程序。
无论如何,防火墙(即使是 Windows 内置的防火墙)都是最好的解决方案。如果机器位于公共 IP 地址上,你应该真的无论 SQL Server 如何,都要有一个。