核心提示:设置Proxy Server和SQL Server实现互联网上的数据库安全

这两天折腾Team Foundation
Server,中间遇到几个问题。具体的安装过程可以参考官方的安装手册,我采用的是单服务器-高级配置的方法安装的。

1.安装最新的服务包为了提高服务器安全性,最有效的一个方法就是升级到 SQL
Server 2000 Service Pack 3a (SP3a)。
另外,您还应该安装所有已发布的安全更新。2.使用 Microsoft
基线安全性分析器来评估服务器的安全性MBSA 是一个扫描多种 Microsoft
产品的不安全配置的工具,包括 SQL Server 和 Microsoft SQL Server 2000
Desktop Engine (MSDE
2000)。它可以在本地运行,也可以通过网络运行。该工具针对下面问题对 SQL
Server 安装进行检测:1) 过多的sysadmin固定服务器角色成员。 2)
授予sysadmin以外的其他角色创建 CmdExec 作业的权利。 3)
空的或简单的密码。 4) 脆弱的身份验证模式。 5) 授予管理员组过多的权利。
6) SQL Server数据目录中不正确的访问控制表(ACL)。 7)
安装文件中使用纯文本的sa密码。 8) 授予guest帐户过多的权利。 9)
在同时是域控制器的系统中运行SQL Server。 10)
所有人组的不正确配置,提供对特定注册表键的访问。 11) SQL Server
服务帐户的不正确配置。 12) 没有安装必要的服务包和安全更新。Microsoft
提供 MBSA
的免费下载。3.使用Windows身份验证模式在任何可能的时候,您都应该对指向SQL
Server的连接要求Windows身份验证模式。它通过限制对Microsoft
Windows用户和域用户帐户的连接,保护SQL
Server免受大部分Internet的工具的侵害,而且,您的服务器也将从Windows安全增强机制中获益,例如更强的身份验证协议以及强制的密码复杂性和过期时间。另外,凭证委派也只能在Windows身份验证模式中使用。在客户端,Windows身份验证模式不再需要存储密码。存储密码是使用标准SQL
Server登陆的应用程序的主要漏洞之一。要在SQL Server的Enterprise
Manager安装Windows身份验证模式,请按下列步骤操作:1)展开服务器组。2)右键点击服务器,然后点击属性。3)在安全性选项卡的身份验证中,点击仅限Windows。4.隔离您的服务器,并定期备份物理和逻辑上的隔离组成了SQL
Server安全性的基础。驻留数据库的机器应该处于一个从物理形式上受到保护的地方,最好是一个上锁的机房,配备有洪水检测以及火灾检测/消防系统。数据库应该安装在企业内部网的安全区域中,不要直接连接到Internet。定期备份所有数据,并将副本保存在安全的站点外地点。5.分配一个强健的sa密码sa帐户应该总拥有一个强健的密码,即使在配置为要求
Windows
身份验证的服务器上也该如此。这将保证在以后服务器被重新配置为混合模式身份验证时,不会出现空白或脆弱的sa。要分配sa密码,请按下列步骤操作:1)
展开服务器组,然后展开服务器。 2) 展开安全性,然后点击登录。 3)
在细节窗格中,右键点击SA,然后点击属性。 4) 在密码方框中,输入新的密码。
6.限制 SQL Server服务的权限SQL Server 2000 和 SQL Server Agent 是作为
Windows 服务运行的。每个服务必须与一个 Windows
帐户相关联,并从这个帐户中衍生出安全性上下文。SQL Server允许sa
登录的用户来访问操作系统特性。这些操作系统调用是由拥有服务器进程的帐户的安全性上下文来创建的。如果服务器被攻破了,那么这些操作系统调用可能被利用来向其他资源进行攻击,只要所拥有的过程可以对其进行访问。因此,为
SQL Server 服务仅授予必要的权限是十分重要的。我们推荐您采用下列设置:1)
SQL Server
Engine/MSSQLServer如果拥有指定实例,那么它们应该被命名为MSSQL$InstanceName。作为具有一般用户权限的Windows
域用户帐户运行。不要作为本地系统、本地管理员或域管理员帐户来运行。2) SQL
Server Agent Service/SQLServerAgent
如果您的环境中不需要,请禁用该服务;否则请作为具有一般用户权限的Windows域用户帐户运行。不要作为本地系统、本地管理员或域管理员帐户来运行。
重点: 如果下列条件之一成立,那么 SQL Server Agent 将需要本地
Windows管理员权限: SQL Server Agent 使用标准的 SQL Server
身份验证连接到SQL Server。 SQL Server Agent
使用多服务器管理主服务器帐户,而该帐户使用标准 SQL Server
身份验证进行连接。 SQL Server Agent
运行非sysadmin固定服务器角色成员所拥有的 Microsoft ActiveX?脚本或
CmdExec 作业。 如果您需要更改与 SQL Server服务相关联的帐户,请使用 SQL
Server Enterprise Manager。Enterprise Manager 将为 SQL Server
所使用的文件和注册表键设置合适的权限。不要使用 Microsoft
管理控制台的“服务”来更改这些帐户,因为这样需要手动地调制大量的注册表键和NTFS文件系统权限以及Micorsoft
Windows用户权限。帐户信息的更改将在下一次服务启动时生效。如果您需要更改与
SQL Server 以及 SQL Server Agent 相关联的帐户,那么您必须使用 Enterprise
Manager 分别对两个服务进行更改。7.在防火墙上禁用 SQL Server 端口SQL
Server 的默认安装将监视 TCP 端口 1433 以及UDP端口
1434。配置您的防火墙来过滤掉到达这些端口的数据包。而且,还应该在防火墙上阻止与指定实例相关联的其他端口。8.使用最安全的文件系统NTFS
是最适合安装 SQL Server 的文件系统。它比 FAT
文件系统更稳定且更容易恢复。而且它还包括一些安全选项,例如文件和目录 ACL
以及文件加密。在安装过程中,如果侦测到 NTFS,SQL Server
将在注册表键和文件上设置合适的 ACL。不应该去更改这些权限。 通过
EFS,数据库文件将在运行 SQL Server
的帐户身份下进行加密。只有这个帐户才能解密这些文件。如果您需要更改运行
SQL Server
的帐户,那么您必须首先在旧帐户下解密这些文件,然后在新帐户下重新进行加密。9.删除或保护旧的安装文件SQL
Server
安装文件可能包含由纯文本或简单加密的凭证和其他在安装过程中记录的敏感配置信息。这些日志文件的保存位置取决于所安装的SQL
Server版本。在 SQL Server 2000
中,下列文件可能受到影响:默认安装时:\Program Files\Microsoft SQL
Server\MSSQL\Install文件夹中,以及指定实例的:\Program
Files\Microsoft SQL Server\ MSSQL$\Install文件夹中的sqlstp.log,
sqlsp.log和setup.iss如果当前的系统是从 SQL Server 7.0
安装升级而来的,那么还应该检查下列文件:%Windir%
文件夹中的setup.iss以及Windows
Temp文件夹中的sqlsp.log。Microsoft发布了一个免费的实用工具
Killpwd,它将从您的系统中找到并删除这些密码。10.审核指向 SQL Server
的连接SQL Server
可以记录事件信息,用于系统管理员的审查。至少您应该记录失败的 SQL Server
连接尝试,并定期地查看这个日志。在可能的情况下,不要将这些日志和数据文件保存在同一个硬盘上。要在
SQL Server 的 Enterprise Manager 中审核失败连接,请按下列步骤操作:1)
展开服务器组。 2) 右键点击服务器,然后点击属性。 3)
在安全性选项卡的审核等级中,点击失败。 4)
要使这个设置生效,您必须停止并重新启动服务器。(end)

设置Proxy Server和SQL Server实现互联网上的数据库安全:
◆首先,我们需要了解一下SQL Server在WinSock上定义协议的步骤:

遇到几个问题:首先安装IIS的时候,注意不能安装FrontPage 2002 Server
Extensions,否则配置时出错:会提示,安装了FrontPage 2002 Server
Extensions,就不能安装Team Foundation Server。

  1. 在”启动”菜单上,指向”程序/Microsoft Proxy Server”,然后点击”Microsoft
    Management Console”。

  2. 展开”Internet Information Service”,再展开运行Proxy Server的服务器。

  3. 右击WinSock Proxy service, 再点击属性。

  4. 在WinSock Proxy Service Properties For computername 对话框内,
    点击Protocols, 再点击Add。

  5. 在Protocol name 文本框内, 输入复制分发服务器所在的计算机名称。

  6. 在 Port文本框内, 输入1433 。

  7. 在Type下面, 选择TCP, 在Direction下面, 选择Inbound.

 

然后设置出版服务器/分发服务器和Proxy
Server一起工作,在代理服务器上安装了Proxy
Server以后,我们必须把出版服务器/分发服务器设置成Proxy
Server客户。这就要求将SQL Server绑定到WinSock端口以便与Internet通讯。

第二个问题是验证时始终报告ReportServer配置为需要安全连接…..(错误信息记不太清楚了,:)),解决办法:

绑定到WinSock端口以便与Internet通讯,要设置出版服务器/分发服务器和Proxy
Server一起工作,必须在运行SQL
Server的服务器上存在文件Mssql7BinnWspcfg.ini。假如这个文件并不存在,我们就必须用Notepad来创建一个。这个文件应当包括下面的内容:

对于单台服务器,打 开%ProgramFiles%/Microsoft SQL
Server/MSSQL.3/Reporting
Services/ReportServer/RsReportServer.config。将“SecureConnectionLevel”的值由
“2”修改为“0”。在Team Foundation Server
安装错误对话框中,单击重试,或者重新安装。

[sqlservr] ServerBindTcpPorts=1433 Persistent=1 KillOldSession=1

对于双服务器,单击 取消。打开 IIS
管理器并将默认站点配置成为不需要安全通道连接(SSL)即可,然后重新安装应用程序层。

SQL Server侦听Proxy Server服务端口1433上的连接请求。当授予SQL
Server账号无限制访问权限时,任何用户、服务或匿名订阅者都能够请求SQL
Server验证。可以在Proxy
Server上设置端口1433的协议,只允许指定的IP地址建立连接。

 

◆将SQL Server设置成Proxy客户

下面这个帖子对我帮助很大:

在我们安装了Proxy
Server后,就已经为文件夹C:MspClients创建了共享名mspclnt。运行这个文件夹中的Proxy
客户端设置程序,将SQL Server设置成Proxy客户。在安装完成后,SQL
Server就是Proxy Server的内部客户了。

 

◆运行Proxy 客户端设置程序的具体步骤:

以下是这个帖子的内容,目前我没有遇到这么多问题,记录在此,方便以后使用,再次感觉此帖作者:

  1. 在运行SQL Server的服务器上,点击开始,然后点击运行。

  2. 在打开下面,输入/servernamemspclnt,然后运行Proxy
    Server客户端设置程序。

  3. 安装结束后重启动计算机使设置生效。

 

 Team Foundation
Server的部署模式分为两种,一是单服务器部署,一是双服务器部署,本文主要就单服务器模式的安装进行说明而不涉及双服务器部署的细节和其他领域。

(一)安装前的准备 1)
硬件要求:服务器的内存最好是在1GB或者以上(手册要求的最低)。

2) 操作系统要求:必须是Windows Server 2003 SP1 Enterprise
Edition或者Windows Server 2003 SP1 Standard
Edition,这是没有任何商量的余地的。

3)
为安装VSTF创建其必须的用户。这些用户分别为安装用户,服务用户和报表用户,您可以使用微软推荐的名称,如
TFSSetup,TFSService,TFSReports,TFSPROXY。一般而言TFSSetup必须添加到Administrators组
中,至于TFSService,TFSReports不应添加到Administrators组,TFSPROXY必须是远程计算机上
的"Administrators组"。

4) 必须安装.Net Framework 2.0。

5) 必须安装IIS 6.0。

6) 必须安装SQL SERVER 2005及SQL SERVER
2005的SP1修补程序,值得注意的是VSTF不支持在SQL SERVER 2005 Express
Edition。VSTF要求安装Reporting Service,Analysis
Service,至于Integration Service,则不是必须的。在安装前注意将SQL Server
2005相关的服务设置为自动启动,而且都必须是在已启动状态,否则会导致后续的安装失败,让您不得不又从头再来。

7) 总结一下安装顺序,而且必须遵照的顺序是:windows2003 ->
windows2003sp1 -> IIS6.0 -> .Net   2.0框架   ->SQL Server 2005
-> SQL SERVER 2005 SP1->Windows SharePoint Services。

(二)安装过程

         一  IIS6.0安装

      在windows组件中添加Internet信息服务(iis),选择"应用程序服务器(IIS,ASP.NET)",进行安装.注意:不要选择"FrontPage服务器扩展",此服务器与Windows SharePoint
Services不兼容.

  二 .Net   2.0框架安装

  三 SQL Server 2005 安装    

 

    注意: 

     在安装 Microsoft SQL Server 2005 之前必须安装 Internet
信息服务 (IIS) 6.0。

   以交互方式安装 Microsoft SQL Server 2005

   (1)使用 Team Foundation Server 安装帐户(例如
Domain/TFSSETUP)登录到 Windows。

   (2)插入 Microsoft SQL Server 2005 的 CD。在“SQL Server 2005
启动”页的“安装”下,单击        “服务器组件、工具、联机丛书和示例”。
此时将启动 Microsoft SQL Server 2005 安装向导。

   (3)在“最终用户许可协议”页上查看许可协议。如果您接受其中的条款和条件,请选择“我接受许        可条款和条件”,然后单击“下一步”。

   (4)在“安装必备组件”页上单击“安装”。在成功安装了所需的组件后,单击“下一步”。

   (5)此时将启动“Microsoft SQL Server 安装向导”。

   (6)单击“下一步”以启动“系统配置检查”。

   (7)在“系统配置检查”页上,检查所有要求操作(例如要求的系统重新启动)的状态,并遵循本页        上的指导进行操作,直到所有操作都获得“成功”状态为止。在所有操作都获得“成功”状态         后,单击“下一步”开始安装。

   (8)在“注册信息”页上填写完注册信息,然后单击“下一步”。

   (9)在“要安装的组件”页上,选择下面的组件,然后单击“高级”。

        1)SQL Server Database Services

        2)Analysis Services

        3)Reporting Services

        4)Integration Services

        5)工作站组件、联机丛书和开发工具

        注意:Team Foundation Server 不需要 Notification
Services。

        在“功能选择”页上,展开下面的节点并指定以下选项。

        除以下所述情形外,不应更改任何其他功能区中的默认选择。

       (1)在“Database
Services”之下单击“复制”的图标,并选择“整个功能将不可用”。

       (2)在“客户端组件”下,唯一需要安装的功能是“管理工具”。对于“客户端组件”下的所有          其他项,可以选择单击图标并选择“整个功能将不可用”。

       (3)在“文档、示例和示例数据库”下,可以选择单击“联机丛书”的图标并选择“整个功能将          不可用”。单击“下一步”。

    (10) 在“实例名”页上,选择“默认实例”,然后单击“下一步”。注意:如果指定已命名的实         例,Team
Foundation Server 安装将失败。

    (11)在“服务帐户”页上,选择“使用内置系统帐户”并从列表中选择“本地系统”。
在“安装结束        时启动服务”中,选择所有服务:“SQL
Server”、“SQL Server Agent”、“Analysis Services”、“Reporting
Services”和“SQL Browser”,然后单击“下一步”。

    (12)在“身份验证模式”页上,选择“Windows
身份验证模式”,然后单击“下一步”。

    (13)在“排序规则设置”页上,选择适合您的语言的排序规则,然后单击“下一步”。

        注意:如果更改了“排序规则指示符和排序顺序”,则必须选择“区分重音”。
   

        默认选择基于 Windows Server 2003 中的非 Unicode
语言的设置。对于多数语言,默认选择都        是 Windows
排序规则,但对于美国英语,SQL Server 2005 安装时使用 SQL Server
排序规则       以向后兼容。如果要更改默认的排序规则以支持其他美国英语字符,请考虑“Latin1_General”。

     对于其他语言,请考虑“_90”Windows
排序规则(当可用时),否则使用其他 Windows 排序规则。

例如,对于日语部署,如果按下面的方式使用 Unicode CJK Extension A 字符或
Unicode 代理项,请使用“Japanese_90”排序规则,而不是默认排序规则。 •
Team Foundation Server 对象名,如“查询”或“项目”。

• 签入到版本控制系统中的文件或路径。

• 用于搜索的任何工作项字段。

为了避免由全角字符或平假名/片假名等效字符带来的问题,请在安装过程中选中启用区分假名和全角字符的复选框。

Team Foundation Server 不支持如下排序规则: • 不区分重音

• 二元

• Binary2

• 区分大小写

(14)在“报表服务器安装选项”页上,选择“安装默认配置”,然后单击“下一步”。

(15)在“错误和使用情况报告设置”页上,可以选择“自动将 SQL Server 2005
的错误报告发送到 Microsoft 或您公司的错误报告服务器”和“自动将 SQL Server
2005 的功能使用情况数据发送到 Microsoft”,然后单击“下一步”。

(16)在“准备安装”页上,可以查看要安装的组件的列表,然后单击“安装”。

(17)在“安装进度”页上,可以监视每个组件的安装状态。安装完成后,单击“下一步”。

(18)单击“完成”退出向导。

四 安装 Microsoft SQL Server 2005 修补程序

   安装 Microsoft SQL Server 2005 后,必须安装修补程序来更新 SQL
Server Analysis Services 以便更有效地支持报告。

安装 Microsoft SQL Server 2005 修补程序

  1.  

在数据层计算机上,打开“SQL Server 配置管理器”,右击“SQL Server
浏览器服务”,然后单击“停止”。

  1.  

在 Team Foundation Server 安装媒体上,找到 SQLServerKB 文件夹。

  1.  

找到与您的操作系统和语言对应的可执行文件 (.exe),如
AS2005-KBnnnnnn-x86-ENU.exe,然后双击该文件以启动 Hotfix
Installer(修补程序安装程序)。

Author

发表评论

电子邮件地址不会被公开。 必填项已用*标注