连接拒绝尝试访问 BigIP 上的 REST 端点

Connection refused trying to access REST endpoint on BigIP

正在尝试连接到我的 BigIP 的 REST 端点:

curl https://10.1.0.69/mgmt/shared/appsvcs/info
curl: (7) Failed to connect to 10.1.0.69 port 443: Connection refused 

我在网上看到一些帖子说这可能是由于 icrd 没有启用,所以检查状态:

admin@(ip-10-1-0-69)(cfg-sync Standalone)(Active)(/Common)(tmos)# show sys service icrd
Couldn't find service: icrd

接下来,我尝试启用:

admin@(ip-10-1-0-69)(cfg-sync Standalone)(Active)(/Common)(tmos)# modify sys service icrd add
Couldn't find service: icrd

我的版本信息:

admin@(ip-10-1-0-69)(cfg-sync Standalone)(Active)(/Common)(tmos)# show /sys version

Sys::Version
Main Package
  Product     BIG-IP
  Version     15.1.0.2
  Build       0.0.9
  Edition     Point Release 2
  Date        Fri Mar 20 21:06:24 PDT 2020

我也看到一些帖子说我可以做到以下几点:

touch /etc/bigstart/scripts/scim
bigstart add --default icrd
bigstart enable icrd
bigstart start icrd

然而,

admin@(ip-10-1-0-69)(cfg-sync Standalone)(Active)(/Common)(tmos)# run /util bash
[admin@ip-10-1-0-69:Active:Standalone] ~ # touch /etc/bigstart/scripts/scim
[admin@ip-10-1-0-69:Active:Standalone] ~ # bigstart add --default icrd
Couldn't find service: icrd

还有:

[admin@ip-10-1-0-69:Active:Standalone] ~ # bigstart status restjavad restnoded
restjavad    run (pid 6549) 49 minutes
restnoded    run (pid 5650) 49 minutes

此外,其余的 api 似乎是 运行 但在端口 8100 上:

[admin@ip-10-1-0-69:Active:Standalone] curl http://localhost:8100/mgmt/shared/appsvcs/info
{"code":401,"message":"Authorization failed: no user authentication header or token detected. Uri:http://localhost:8100/mgmt/shared/appsvcs/info Referrer:Unknown Sender:Unknown","referer":"Unknown","restOperationId":6611305,"kind":":resterrorresponse"}

没有端口绑定到 443:

[admin@ip-10-1-0-69:Active:Standalone] ~ # netstat -nalt | grep 443
tcp        0      0 127.0.0.1:44352         127.0.0.1:6666          ESTABLISHED
tcp        0      0 127.0.0.1:6666          127.0.0.1:44352         ESTABLISHED
tcp6       0      0 :::8443                 :::*                    LISTEN

有什么想法吗?

您不再需要手动启动 REST 界面 (icrd),这是 11.x 之前版本的产物。

单个 NIC 安装将管理端口移动到 8443,以保持 443 可用于 public 在虚拟 IP 上使用。防火墙 ACL 然后将 8443 保留到管理网络。这随着多网卡部署而改变。

根据您的需要,您可以通过以下方式获取用于 API 的令牌:

{
"username": "remote_auth_user",
"password": "remote_auth_password",
"loginProviderName": "tmos"
}
  • at URL: https://:8100/shared/authn/login(对于隐藏 mgmt 的远程 API 调用)
  • 或URL:https://:8443/shared/authn/login

(为了我的理智,我会重新验证这一点)

获得令牌后,将其存储起来,您就可以参加该赛段的比赛了。

对于第一个 URL 您试图访问 .../shared/appsvcs/.... 您是否在 BIG-IP 上安装了 AS3?如果未安装,则 URL 不可用。

以下是 AS3 概述和安装说明,以防万一:F5 Application Services Extension 3 Documentation

它不同于基于标准模块的iControlREST for BIG-IP

如果您仍有问题,请告诉我,我会更新此答案。