使用NSM时,我一直在处理Juniper SRX IDP错误很多次。这些错误通常是由于签名数据库损坏或SRX本身的存储空间不足而引起的。这是我遇到的最新消息。
病征
从太空,如果我对防火墙策略进行了新的更改并将其推送到网关,则会收到以下错误。
它说“没有为活动策略配置规则库”,这是您第一次看到此消息时的误导。 IDP政策通常在这里很好。
[Error] Configuration update failed. Severity : error At : [edit security idp] Message : 没有为活动策略配置规则库 Details :idp-policy Space-IPS-Policy Severity : error Message : configuration check-out failed
To view the full error message,Click here<commit-results>
<rpc-error>
<error-type>protocol</error-type>
<error-tag>operation-failed</error-tag>
<error-severity>error</error-severity>
<source-daemon> idpd </source-daemon>
<error-path> [edit security idp] </error-path> <error-info>
<bad-element> idp-policy Space-IPS-Policy </bad-element> </error-info>
<error-message> 没有为活动策略配置规则库 </error-message> </rpc-error>
<rpc-error>
<error-type>protocol</error-type> <error-tag>operation-failed</error-tag> <error-severity>error</error-severity>
<error-message> configuration check-out failed </error-message>
</rpc-error>
</commit-results>
从命令行:
{primary:node1}[edit] [email protected]# {primary:node1}[edit] [email protected]# commit [edit security idp] 'idp-policy Space-IPS-Policy' 没有为活动策略配置规则库 error: configuration check-out failed {primary:node1}[edit] [email protected]#
基于kb26964,它是IDP错误消息,与IDP签名数据库有关。
在这种情况下,由于某种原因,两个节点都没有相同的攻击数据库版本。
[email protected]> show security idp security-package-version node0: -------------------------------------------------------------------------- Attack database version:3005(Tue Nov 14 12:07:35 2017 UTC) Detector version :12.6.160170603 Policy template version :N/A node1: -------------------------------------------------------------------------- Attack database version:3004(Thu Nov 9 12:12:06 2017 UTC) Detector version :12.6.160170603 Policy template version :N/A {secondary:node0}
解决方案
1.禁用IDP并安装策略。
它可以从命令行运行,但不是我们想要的理想解决方案。如果您有有限的时间来实施更改,则将有所帮助。
[email protected]# deactivate security idp {primary:node1}[edit] [email protected]# commit check node1: configuration check succeeds node0: configuration check succeeds
2.重新安装攻击数据库
2.1从Internet直接安装
如果您的设备可以访问互联网,则只需从SRX删除攻击数据库并重新安装即可。
[edit] root# run start shell user root ##Type the root password and delele the files:
root% rm -rf /var/db/idpd/sec-download/*
##Install either a previous version of the attack DB or the latest version:
root> request security idp security-package download version 2232 full-update root> request security idp security-package install
##Set the active policy as Recommended and then commit the configuration; it should be successful this time.
root# set security idp active-policy Recommended root# commit
##Check the policy commit status: root # run show security idp policy-commit-status
2.2从JunOS Space安装
删除所有数据库文件,然后再次从Space推送最新的Attack DB。
2.3从另一个节点复制
在我的情况下,由于节点0具有最新的IDP攻击数据库,只需将其从节点0复制到节点1,以确保它们都具有相同版本的攻击数据库,就可以解决此问题。
[email protected]> show security idp security-package-version
node0:
--------------------------------------------------------------------------
Attack database version:3005(Tue Nov 14 12:07:35 2017 UTC)
Detector version :12.6.160170603
Policy template version :N/A
node1:
--------------------------------------------------------------------------
Attack database version:3004(Thu Nov 9 12:12:06 2017 UTC)
Detector version :12.6.160170603
Policy template version :N/A
[email protected]% rcp -r -T /var/db/idpd/* node1:/var/db/idpd/ [email protected]% [email protected]% [email protected]% cli {secondary:node0} [email protected]> show security idp security-package-version node0: -------------------------------------------------------------------------- Attack database version:3005(Tue Nov 14 12:07:35 2017 UTC) Detector version :12.6.160170603 Policy template version :N/A node1: -------------------------------------------------------------------------- Attack database version:3005(Tue Nov 14 12:07:35 2017 UTC) Detector version :12.6.160170603 Policy template version :N/A
如果您的一个集群成员具有正确的版本,则此方法可以解决大多数IDP攻击数据库问题。