本主题介绍如何为 Virtualize 服务器配置部署设置。有关为服务器配置单个虚拟资产部署设置的详细信息,请参阅配置部署到 Virtualize 服务器的虚拟资产。
章节目录:
您可以根据服务器设置中的说明从首选项面板配置其他设置(例如,启动、身份验证和 CTP 通知选项)。
应以安全的方式在可信网络中部署 Virtualize 服务器。Virtualize 服务器托管可用于管理虚拟资产的 web 服务,因此任何可以通过网络访问 Virtualize 服务器的主机都可以添加、修改或删除该 Virtualize 服务器托管的虚拟资产。 您可以在 Virtualize 服务器前使用代理服务器或网关,在 Virtualize 服务器提供的安全保护之外应用额外的安全保护。
发送登录凭据时,应使用 Virtualize 服务器的 HTTPS 端口(9443)。
在不受信任的网络(如互联网)中部署 Virtualize 服务器时需格外小心。我们建议您使用防火墙阻止未经授权的访问(如通过 IP 地址限制访问)。还可以在 Virtualize 服务器前使用代理服务器或网关,增加身份验证、过滤和日志记录功能。
如果 AUT 部署在使用 SSL 通信的环境中,则需要确保 Virtualize 服务器能够与 AUT 及其依赖项通信。有几种方案:
AUT 要接受证书/私人密钥对,一般至少需要自签名证书/私人密钥对,其通用名(CN)参数与服务器的完全限定名称相匹配。例如,如果 Virtualize 服务器 URL 为 http://myserver.mycompany.com
,CN 参数应为“myserver.mycompany.com”。
在任何情况下,Virtualize 都可以配置为通过端口 9443(默认 SSL 连接器)或其他端口接受传入的 HTTPS 连接。
SSL 详细信息可通过修改 server.xml 中的 SSL HTTP/1.1 Connector
项进行配置。
例如:
<Connector port="9443" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="C:/Path To Keystore/virtualize.pfx" keystorePass="security" keyAlias="virtualize" keystoreType="PKCS12" truststoreFile="../lib/cacerts" truststorePass="changeit" truststoreType="JKS" /> |
要访问 server.xml 文件,请启动 Virtualize 并确保至少已创建一个响应器。该文件位于 <
INSTALL-DIR>/plugins/com.parasoft.ptest.libs.web_<VERSION>/root/tomcat/conf
目录下。
keystoreFile
在 server.xml 中为 keystoreFile
属性设置的值取决于您的配置选项。
如果使用首选方案(方案 1)或方案 2,请使用生成的服务器密钥库的路径。虽然密钥库路径可以是 server.xml 文件位置的相对路径,但最好还是提供绝对路径,以确保配置正确。
如果使用方案 3,属性应指向与要模拟的实际 SSL 服务相同的密钥库文件。使用斜线(/)而不是反斜线(\)。例如 C:/Users/myUser/keystore.jks
。
选择方案 4 时,无需修改 keystoreFile
属性。
keystorePass
将 keystorePass
属性设置为密钥库的密码。
keyAlias
设置 keyAlias
属性,指向证书/私人密钥对的别名
keystoreType
将 keystoreType
设置为正在使用的密钥库类型,如 PKCS12、JKS、BKS、UBER 或 PEM。
clientAuth
对于双向 SSL(相互验证),clientAuth
属性必须设为 true
,并使用 truststoreFile
、truststorePass
和 truststoreType
属性指定用于验证客户端证书的信任库:
truststoreFile
,指向您的密钥库文件。使用斜线(/)而不是反斜线(\)。例如 C:/Users/myUser/keystore.jks
。truststorePass
修改为密钥库的密码truststoreType
修改为 PKCS12、JKS、BKS、UBER 或 PEM。有关如何启用和配置 SSL 连接器的详细信息,请参阅 Apache Tomcat 文档(https://tomcat.apache.org/tomcat-8.5-doc/ssl-howto.html)。
可以为 SSL 配置多个端口号。如果需要虚拟化不同的密钥库/证书配置,通常会出现这种情况。
默认 SSL 连接器(带 name="default" 属性)端口号应在 Virtualize 服务器首选项中更改(详情请参阅服务器设置)。当 Virtualize 启动时,首选项设置将优先于 server.xml 设置。
您可以根据需要在 server.xml 中添加其他 Connector 元素,并使用不同的名称和不同的 SSL/证书配置。虚拟资产和代理不能映射到特定的 Connector 端口。任何虚拟资产都可以根据虚拟资产路径、代理路径或响应器关联规则中的头部、URL 和消息内容关联标准来处理在特定连接器/端口上收到的消息,而不是根据端口。
Virtualize 服务器支持 Tomcat 的 relaxedPathChars
和 relaxedQueryChars
属性(请参阅 https://tomcat.apache.org/tomcat-8.5-doc/config/http.html)。这些属性使您能够指定在 URI 路径和 URI 查询字符串中应允许哪些未编码字符。可以指定以下字符:" < > [ \ ] ^ ` { | }
如果不指定允许的字符,Tomcat 服务器将拒绝 URI 路径和查询中包含一个或多个未编码字符的消息。
将 relaxedPathChars
和 relaxedQueryChars
属性添加到 server.xml 文件的 <Connector>
元素中,并指定要允许的字符。如果有多个 <Connector>
元素,请将属性添加值 protocol
设置为 HTTP
和 HTTPS
的元素中。该文件位于 <
INSTALL-DIR>/plugins/com.parasoft.ptest.libs.web_<VERSION>/root/tomcat/conf
目录下。
示例:
<Connector URIEncoding="UTF-8" allowTrace="true" connectionTimeout="20000" enableLookups="true" name="default" port="9080" protocol="HTTP/1.1" redirectPort="9443" server="Parasoft Server" relaxedPathChars="" < > [ \ ] ^ ` { | }" relaxedQueryChars="" < > [ \ ] ^ ` { | }" /> |
您也可以在 HTTP 监听器层级配置这些属性。请参阅HTTP 反向代理配置。
您可以在服务器配置面板中为 Virtualize 服务器配置各种首选项和设置。打开面板:
在此面板中查看和修改与监控、服务器统计数据、全局 JMS 和 MQ 连接以及用户身份验证(仅适用于远程服务器)相关的设置。
此选项卡显示 Virtualize 服务器统计数据概要。详情请参阅收集服务器统计数据。
点击服务器配置选项卡查看和配置事件监控和统计数据收集设置。有关该选项卡中设置的信息,请参阅以下章节:
如果被测应用程序通过 MQ 队列管理器 或 JMS 提供者发送和接收消息,请点击连接选项卡来定义连接设置。部署到 Virtualize 服务器的资产和代理可以配置为使用连接设置与被测应用程序通信。您可以配置以下操作:
点击 MQ 队列管理器部分的添加,并指定以下配置。配置完成后点击测试连接,验证服务器上的代理和虚拟资产能否与该队列管理器通信。在此界面中配置的设置同样也用于虚拟资产或代理配置面板。
从下拉菜单中选择以下模式之一:
指定 MQ 队列管理器主机。
指定 MQ 队列管理器端口。
指定 MQ 队列管理器通道。
指定客户端通道定义表格文件的位置,该表格提供了连接详情。
指定队列管理器的名称。
如果要求登录凭据,则在该字段中指定用户名。
如果要求登录凭据,则在该字段中指定密码。
如果 Virtualize 服务器上托管的虚拟资产和消息代理需要通过 SSL 与测试中的服务通信,请启用连接服务时使用 SSL 并配置 SSL 设置。
启用信任所有服务器证书,允许 Virtualize 服务器接受任何证书。当服务器上的虚拟资产或消息代理与服务建立连接时,该选项会禁用信任验证,并强制资产或代理使用存在的证书服务接受连接。一般来说,如果证书信任不是部署 Virtualize 环境的重点,则应启用此选项。
指定用于特定 MQ 通道上 SSL 连接的 CipherSuite。请参阅 IBM MQ 文档,以确定根据 CipherSpec 选择哪个 CipherSuite。
(可选)指定一个对等名称,以验证队列管理器提供的证书是否符合对等名称参数指定的标准。服务器验证将此参数与队列管理器提供的证书的 DN(可分辨名称)相匹配。
指定队列管理器用于通过 SSL 验证虚拟资产和消息代理的密钥库文件、密钥库密码和密钥库类型。如果 MQ 通道不要求 SSL,则不需要进行密钥库设置。配置密钥库设置后,点击验证以确认设置配置正确。
指定虚拟资产用于通过 SSL 验证队列管理器的文件、密码和库类型。配置信任库设置后,点击验证以确认设置配置正确。
启用信任所有服务器证书选项会禁用信任库配置设置。
如果使用密钥/信任库,则需要下载并安装 Unlimited Strength Java Cryptography Extension。详情请参阅 JCE 前提条件。
您可以在服务器之间复制现有的 MQ 管理器连接设置。可以从远程服务器或本地服务器中复制设置。
添加连接后,您就可以在添加和配置代理以及 Virtualize 服务器托管的虚拟资产时从配置面板中选择该连接。例如,下图显示了如何为使用 MQ 的代理选择全局连接:
点击 JMS 连接设置部分的添加,指定 JMS 配置。有关配置 JMS 连接设置的详细信息,请参阅 JMS 提供者配置。
配置完成后点击测试连接,验证服务器上的代理和虚拟资产能否与该 JMS 提供者通信。在此界面中配置的设置同样也用于虚拟资产或代理配置面板。
添加连接后,您就可以在添加和配置代理以及 Virtualize 服务器托管的虚拟资产时从配置面板中选择该连接。
例如,下图显示了如何为使用 JMS 的虚拟资产选择全局连接:
默认情况下,本地 Virtualize 服务器使用 9080 端口。更改端口操作: