排除一个插件

如果您遇到插件问题,请按照下面的步骤有效地诊断和排除问题。

表的内容

使用这些快速链接来获得你需要的帮助。

找到插件信息

插件信息可以在InsightConnect和供应商自己的文档中找到。每个插件都有一个“插件详细信息”面板,其中包含插件版本号、触发器和操作列表、帮助文档以及技术规范。

可以在以下地点找到这些信息:

  • 步骤创建过程中的插件选择面板
  • “设置”下的“插件”页面

插件的“帮助”部分通常会包含到供应商API文档的链接。阅读供应商的文档可以帮助您排除InsightConnect之外的插件问题。

一般故障排除

首先尝试以下步骤来识别和解决问题。准备好错误消息的副本。

更新插件

确保插件是最新的。自动更新通知出现在“插件”页面的“设置”下。要更新所有插件,请单击通知中的链接。

检查连接

如果插件版本是最新的,测试任何连接确保这些在InsightConnect中被正确配置,并且您使用的凭证或参数在各自的插件中是当前的。当您更新或更改集成的密钥或密码时,也要记住更新连接的密钥或密码。

检查触发器

要了解触发器是否导致错误,请访问“设置”下的“触发器”页面。检查任何带有橙色“Error”状态的触发器,然后单击视图在该触发器的三个点选项菜单下查看日志。

从UI中定位错误

当作业失败时,您可以检查输出日志或任何工件是否有错误。在失败作业的“All Output”选项卡上,可以查看每个步骤的Input、Output、日志和发生的任何错误。

遵循以下步骤,找出导致工作失败的原因:

  1. 在“工件”选项卡上,寻找任何特定于错误的工件。这些通常提供解决问题的后续步骤。
  2. 在作业的“全部输出”页面,查看出错的步骤。这些步骤将有一个“Error”选项卡而不是“Output”。
  3. 点击输入选项卡显示任何有错误的步骤。检查作业的输入值是否正确,或者至少是预期的。
  4. 点击日志选项卡查看错误消息。

许多错误消息将有错误代码或提供额外的上下文。在网上、文档中或何时搜索帮助时使用此信息联系Rapid7支持。

搜索供应商的文档

查看插件的API文档并搜索错误消息。插件供应商经常提供故障排除信息。

在InsightConnect中查找供应商信息:

  1. 导航到插件的详细信息页面。您可以在工作流构建器中找到这一点,当选择插件步骤时,单击插件上的向下箭头按钮,然后单击插件文档按钮。或者,你可以从“设置”下的“插件”页面查看所有已安装插件的详细信息。
  2. 点击帮助选项卡在插件详细信息面板中。
  3. 检查“关于”和“连接”部分是否有到供应商文档的链接。或者,你可以用这个字符串运行一个网页搜索插件的名字API文档.这种搜索通常会产生各种资源来帮助您排除您的需求,但是最好先查看供应商自己的文档。

常见问题

插件操作无法连接外部资源

如果你在InsightConnect操作中遇到以下问题,这意味着插件无法连接外部资源:

  • 在插件连接中定义的主机的DNS解析失败
  • 在更新连接以排除DNS后继续连接超时

通过命令行排除主机网络和插件Docker容器之间的连接问题:

  1. 从本地计算机SSH到协调器虚拟机。
  2. 通过运行测试到外部主机的连通性curl https://www.rapid7.com
  3. 通过运行,生成当前在协调器上运行的所有容器的列表sudo码头工人ps
  4. 通过运行连接到当前遇到连接问题的容器中的bash shellSudo docker exec -i -t <容器名> /bin/bash.取代<容器名称>变量,其名称为步骤3中生成的列表中的一个容器的名称。
  5. 进入容器后,运行与步骤2相同的curl命令:curl https://www.rapid7.com
  6. 如果这个命令返回“curl: (7) Failed to connect to .www.rapid7.comport 443: Operation timed out ",使用IP地址测试curl命令。要获取要测试的IP地址,请退出容器并运行网路资讯查询www.rapid7.com在协调器虚拟机中。使用相同的容器名运行第4步中的docker命令,然后使用刚刚获得的IP地址运行curl命令。命令应该如下所示curl - k https://192.168.1.1:1234,将IP地址的数值替换为您从网路资讯查询命令。
  7. 如果curl命令使用IP address方法成功,则导航到容器的DNS设置。这些被储存在/etc/resolv.conf文件。
  8. 退出容器。
  9. 运行Sudo sysctl -a | grep forward.在回显信息中,确认以下字段均为1.正确设置的值应该如下所示:
         
1
net.ipv4.conf.all。转发= 1
2
net.ipv4.conf.default.forwarding = 1
3.
net.ipv4.conf.docker0。转发= 1
4
net.ipv4.conf.ens32。转发= 1
5
net.ipv4.conf.lo。转发= 1
6
net.ipv4。ip_forward = 1

注意接口编号ens32在您的主机上可能不同。10.如果上面的任何字段具有不同的值(0而不是1),则运行以下命令为您的协调器配置IPv4转发。

          
配置IPv4转发
1
#获取主机的主接口名称,并使用它来正确配置转发
2
export ORCH_PRIMARY_INTERFACE=$(ip link | awk -F": " '$0 !~ "lo|vir|docker|veth|wl|^[^0-9]"{print $2;getline}')
3.
4
#在运行时应用
5
Sudo sh -c 'sysctl -w net.ipv4.conf.$1。转发= 1”——“ORCH_PRIMARY_INTERFACE美元”
6
Sudo sysctl - wnet .ipv4.conf.all.forwarding=1
7
Sudo sysctl - wnet .ipv4.conf.default.forwarding=1
8
Sudo sysctl - wnet .ipv4.conf.docker0.forwarding=1
9
Sudo sysctl - wnet .ipv4.conf.lo.forwarding=1
10
Sudo sysctl -w net.ipv4.ip_forward=1
11
12
#继续配置
13
Sudo sh -c 'echo "net.ipv4.conf.$1。转发= 1" >> /etc/sysctl.d/99-sysctl.conf' -- "$ORCH_PRIMARY_INTERFACE"
14
Sudo sh -c 'echo "net.ipv4.conf.all。转发= 1" >> /etc/sysctl.d/99-sysctl.conf'
15
Sudo sh -c 'echo "net.ipv4.conf.default.forwarding = 1" >> /etc/sysctl.d/99-sysctl.conf "
16
Sudo sh -c 'echo "net.ipv4.conf.docker0。转发= 1" >> /etc/sysctl.d/99-sysctl.conf'
17
Sudo sh -c 'echo "net.ipv4.conf.lo。转发= 1" >> /etc/sysctl.d/99-sysctl.conf'
18
Sudo sh -c 'echo "net.ipv4。ip_forward = 1" >> /etc/sysctl.d/99-sysctl.conf'
  1. 使用该命令重新启动协调器systemctl重启rapid7-orchestrator(或命令快捷方式,orch-restart)以保存并应用新配置。
  2. 退出协调器虚拟机并登录InsightConnect帐户。
  3. 重新运行先前显示问题的工作流。连接外部资源失败的操作现在应该可以正常工作了。

联络支持

如果在尝试了前面的建议后问题仍然存在,请准备以下细节并提交我们的支持团队

提供尽可能多的以下细节:

  • 错误消息,从UI复制粘贴
  • 错误的屏幕截图
  • 插件版本号
  • 步骤输入/输出,只有非敏感信息
  • 协调器信息