签名自动更新
Web应用防火墙中的签名自动更新功能允许用户获得最新的签名,以保护Web应用程序免受新漏洞的侵害。自动更新功能提供了更好的保护,而不需要持续的手动干预来获得最新的更新。
签名每小时自动更新一次,不需要定期检查最新更新的可用性。启用签名自动更新后,Citrix ADC设备将连接到托管签名的服务器,以检查是否有更新版本可用。
可定制的位置
最新的应用程序防火墙签名托管在Amazon上,它被配置为默认的签名URL,以检查最新的更新。
但是,用户可以选择将这些签名映射文件下载到其内部服务器。用户可以配置不同的“签名URL”路径,从本地服务器下载签名映射文件。要使自动更新功能工作,您可能需要配置DNS服务器以访问外部站点。
更新签名
所有使用appfw缺省签名对象创建的自定义签名对象的版本号都大于0。启用“签名自动更新”后,所有签名将自动更新。
如果用户导入了Cenzic或Qualys等外部格式的签名,则导入的签名版本为0。类似地,如果用户使用空白模板创建了签名对象,则将其创建为零版本签名。这些签名不会自动更新,因为用户可能对管理未使用的默认签名的开销不感兴趣。
但是,Web应用程序防火墙还允许用户灵活地手动选择这些签名并对其进行更新,以将默认签名规则添加到现有规则中。手动更新签名后,版本会发生变化,然后签名也会与其他签名一起自动更新。
配置签名自动升级
使用实例通过CLI配置签名自动升级特性。
在命令提示符下,输入:
set appfw settings签名url https://s3.amazonaws.com/NSAppFwSignatures/SignaturesMapping.xml
使用实例以图形方式配置签名自动更新。
- 展开“Security”节点。
- 展开应用程序防火墙节点。
- 选择签名节点。
- 选择自动更新设置从行动.
- 启用签名自动更新选择。
- 如果需要,可以自定义签名升级URL路径。点击重置重置为默认值
s3.amazonaws.com服务器
. - 点击好吧.
手动更新签名
如果要手动更新零版本签名或其他自定义签名,必须先获取默认签名的最新更新,然后再使用最新更新更新目标自定义签名。
在CLI下执行如下命令更新签名文件:
更新appfw的签名cenzic -mergedefault
注意:
默认的签名
区分大小写。其中“Cenzic”为更新签名文件的名称。
在没有internet访问权限的情况下导入缺省签名
建议配置代理服务器指向Amazon (AWS)服务器,以获取最新的更新。但是,如果NetScaler设备没有到外部站点的internet连接,则用户可以将更新后的签名文件存储在本地服务器上。然后,设备可以从本地服务器下载签名。在这种情况下,用户必须经常检查亚马逊网站以获得最新的更新。方法创建的相应sha1文件,您可以下载并验证签名文件Citrix公共防止被篡改的钥匙。
将签名文件拷贝到本地服务器,操作步骤如下:
- 创建本地目录,如
< MySignatures >
在本地服务器上。 - 打开AWS站点。
- 复制
SignaturesMapping.xml
文件到< MySignatures >
文件夹中。
如果你打开SignaturesMapping.xml
文件,您可以看到用于签名的所有XML文件以及不同支持版本的对应sha1文件。下面的截图突出显示了这样一对:
- 创建子目录
<团体>
在< MySignatures >
文件夹中。 - 复制所有的
*.xml文件列在
标签和.xml文件中 * .xml.sha1
在相应的文件中列出< sha1 >
标签SignaturesMapping.xml
文件到<团体>
文件夹中。下面是复制到<团体>
文件夹:
https://s3.amazonaws.com/NSAppFwSignatures/sigs/sig-r10.1b86v3s3.xml
https://s3.amazonaws.com/NSAppFwSignatures/sigs/sig-r10.1b86v3s3.xml.sha1
https://s3.amazonaws.com/NSAppFwSignatures/sigs/sig-r10.1b0v3s2.xml
https://s3.amazonaws.com/NSAppFwSignatures/sigs/sig-r10.1b0v3s2.xml.sha1
注意:
的任何名称都可以
< MySignatures >
文件夹,它可以在任何位置,但子目录<团体>
的子目录< MySignatures >
复制映射文件的文件夹。此外,确保如signaturemapping .xml所示,子目录名<团体>
必须有准确的名称,区分大小写。所有签名文件及其对应的sha1文件都应该复制在这个目录下<团体>
目录中。
将内容从托管的Amazon web服务器镜像到本地服务器后,更改到新的本地web服务器的路径,将其设置为用于自动更新的SignatureUrl。例如,从设备的命令行接口运行以下命令:
设置appfw settings签名url https://myserver.example.net/MySignatures/SignaturesMapping.xml
更新操作可能需要几分钟,具体时间取决于要更新的签名数量。为更新操作的完成留出足够的时间。
如果您遇到“访问URL时出错!”,请按照以下步骤解决该问题。
- 添加url
https://myserver.example.net
来netscaler / ns_gui / admin_ui / php /应用程序/控制器/共同/ utils.php
这样内容安全策略(CSP)安全就不会阻止url访问。请注意,这些设置不会持续升级。用户升级后需要重新添加。
$configuration_view_connect_src = "connect-src 'self' https://app.pendo.io https://s3.amazonaws.comhttps://myserver.example.net;";<!——NeedCopy >
- 用户必须配置web服务器
https://myserver.example.net
以便它响应以下CORS报头https://myserver.example.net/MySignatures/SignaturesMapping.xml
Access-Control-Allow-Methods: GET Access-Control-Allow-Origin: * Access-Control-Max-Age: 3000
更新签名指南
更新签名时遵循以下原则:
- 当“签名更新URL”中存在与该URL相同或更新版本的签名对象时,签名将被更新。
- 每个签名规则与一个规则ID和版本号相关联。例如:
- 如果传入的签名文件的ID和版本号与已有的签名文件相同,即使它具有不同的模式或日志字符串,也会被忽略。
添加新ID的签名规则。所有的操作和启用标志都从新文件中使用。
注意:
您可能仍然必须定期检查更新的签名,以启用这些新添加的规则,并根据应用程序的需求更改其他操作设置。
- ID相同但版本号更新的规则将替换现有的规则。保留现有规则中的所有操作和启用标志。
提示:
从命令行更新签名时,必须先更新默认签名。然后必须添加更新命令来更新基于默认签名的每个自定义签名文件。如果不先更新默认签名,则版本不匹配错误将阻止自定义签名文件的更新。