# 使用MS SQL集群作为后台数据库 ## 概览 Password Manager Pro可以使用MS SQL集群作为后台数据库。为了提供高级别的安全，PMP只能使用SSL连接到MS SQL集群，所以配置MS SQL集群作为后台数据库的步骤也和使用MS SQL不一样。 使用独立的MS SQL Server的时候，生成SQL server全称域名的SSL证书，然后导入到本地个人计算机证书存储库中。在SQL server配置管理器中，列出匹配SQL server名称的证书。但是，MS SQL集群的配置是不一样的。 在In the case of SQL server集群中，你要生成集群实例全称域名的SSL证书，然后将证书安装到所有集群的节点中。例如：集群中2个节点名称为test1.yourcompany.com和test2.yourcompany.com，集群的名称为pmpcluster。这样的话，你要获取pmpcluster.yourcompany.com的证书，并安装到2个节点中。 重要提示：建议你先在测试环境中验证以下步骤。PMP下载地址。 ### 配置MS SQL集群后台数据库步骤汇总 在SQL Server中启用SSL加密：创建SSL证书并安装到Windows证书库中。 创建证书并由第三方机构（CA）签名 或使用自签名证书 在所有SQL Server节点主机上安装证书。 在PMP中安装CA根证书/服务器证书。 在所有节点上启用SSL加密。 执行ChangeDB.bat批处理。 ### 在SQL Server上启用SSL加密 #### 创建证书并安装到Windows证书库（在运行SQL server的服务器上) 在PMP连接SQL Server之前，要在SQL Server上启用SSL加密。你可以生成证书由CA签名或自签名。 #### 选项1：生成证书由CA签名 使用openssl生成证书需要2步： 生成私钥 生成证书 各步命令如下： 生成私钥 openssl genrsa -des3 -out server.key 2048 生成证书请求 使用服务器私钥创建证书请求。按提示输入密钥密码，常用名称，主机名或IP地址： openssl req -new -key server.key -out server.csr 在常用名称中，要使用SQL Server集群实例的全称域名。 为生成的证书签名，你要提交给第三方CA机构，主要的CA有Verisign (http://verisign.com)、 Thawte (http://www.thawte.com)、RapidSSL (http://www.rapidssl.com)。选择一个CA进入其网站，提交csr。CA或许收取签名费。 一般要等几天，CA会给你签名的SSL证书和根证书.cer文件。 服务器证书要安装到所有运行SQL Server的节点。CA根证书要安装到PMP服务器。 ### 使用MMC在所有运行SQL Server的节点上安装证书 在运行SQL Server的服务器上打开开始菜单 >>> 运行，输入MMC打开MMC控制台。 在控制台菜单，点击文件，选择添加/删除管理单元。在可用的管理单元中选中找到证书。点击添加按钮。在弹出的窗口中选择计算机帐户。 在下一步窗口中选择本地计算机(运行次控制台的计算机)，最后确定。 在MMC控制台窗口中，右击证书 >> 个人，点击所有任务 >> 导入 浏览到证书文件并导入。 ### 在PMP服务器安装CA根证书 复制CA根证书文件到<PMP安装目录>/bin文件夹中。 在<PMP安装目录>/bin目录执行以下命令： importCert.bat <CA根证书文件名> 这样就把根证书安装到PMP证书库中了。 #### 选项2：创建自签名证书 要使用自签名证书，执行以下步骤：在一个运行SQL Server的节点上 使用工具makecert.exe创建证书，并安装到节点。 在该节点执行以下命令： makecert.exe -r -pe -n "CN=pmpcluster.yourcompany.com" -b 01/01/2011 -e 01/01/2036 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localMachine -sky exchange pmpcluster.yourcompany.com.cer 在这个命令中，CN处输入SQL Server集群实例的全称域名。例如该例子中的pmpcluster.yourcompany.com 这个命令将在你本地存储中安装自签名证书。文件名称为pmpcluster.yourcompany.com.cer 导出自签名的.pfx文件 在运行SQL Server的服务器上打开开始菜单 >>> 运行，输入MMC打开MMC控制台。 在控制台菜单，点击文件，选择添加/删除管理单元。在可用的管理单元中选中找到证书。点击添加按钮。在弹出的窗口中选择计算机帐户。 在MMC控制台窗口中，选择证书 >> 个人 >> 证书 找到上面创建的自签名证书，右键导出为.pfx文件。 在所有节点上导入自签名.pfx文件 在运行SQL Server的服务器上打开开始菜单 >>> 运行，输入MMC打开MMC控制台。 在控制台菜单，点击文件，选择添加/删除管理单元。在可用的管理单元中选中找到证书。点击添加按钮。在弹出的窗口中选择计算机帐户。 在MMC控制台窗口中，选择证书 >> 个人 >> 证书 右击，点击所有任务 >> 导入 浏览找到.pfx文件并安装 在PMP中安装服务器证书 复制服务器证书(.cer)到<PMP安装目录>/bin。 在<PMP安装目录&/bin执行命令： importCert.bat <服务器证书名称> 这样就把根证书安装到PMP证书库中了。 ### 在所有节点上启用SSL加密 以下注册表项指定了SQL Server加密连接使用的证书： HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.x\MSSQLServer\SuperSocketNetLib\Certificate 该项通过“指纹”识别每一个服务器证书。 上面创建证书的指纹值要复制到该注册表项中。 重要说明：下面是如何正确复制证书指纹值的方法： 要删除指纹值中的Unicode字符。首先把复制的指纹复制到记事本中。 选择另存为一个文件，编码选择ANSI，会出现下面的提示，点击确定。 然后重新打开刚刚保存的文件，删除其中的“?”号。 删除字符间的所有空格。 然后把处理好的值设置到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.x\MSSQLServer\Certificate属性。 ### 执行ChangeDB.bat 完成以上步骤后，执行PMP的ChangeDB.bat，参考使用MS SQL Server作为后台数据库的说明，配置SQL Server集群的信息。
版权所有 ©2016, 卓豪（北京）技术有限公司，保留一切权利。

顶部