1

我一直在努力实现一个 RDP 探测,以使用 Prometheus Blackbox 检查 Windows 机器中的多个端口。

到目前为止,我设法检查了 DNS、ping、端口 80,8080,但我无法测试 3389!

根据经验,我希望能够 ping/探测在此主机上运行服务的任何端口

我的 blackbox.yml 是:

modules:
  http_2xx:
    prober: http
    http:
  http_get_2xx:
    prober: http
    http:
      method: GET
  http_post_2xx:
    prober: http
    timeout: 5s
    http:
      method: POST
      headers:
        Content-Type: application/json
      body: '{}'
  tcp_connect:
    prober: tcp
    pop3s_banner:
    prober: tcp
    tcp:
      query_response:
      - expect: "^+OK"
      tls: true
      tls_config:
        insecure_skip_verify: false
  ssh_banner:
    prober: tcp
    tcp:
      query_response:
      - expect: "^SSH-2.0-"
  irc_banner:
    prober: tcp
    tcp:
      query_response:
      - send: "NICK prober"
      - send: "USER prober prober prober :prober"
      - expect: "PING :([^ ]+)"
        send: "PONG ${1}"
      - expect: "^:[^ ]+ 001"
  icmp:
    prober: icmp
  dns_test:
    prober: dns
    timeout: 5s
    dns:
      query_name: google.com
      preferred_ip_protocol: ip4

而我的 prometheus.yml 3389 端口探测条目是:

  - job_name: "rdp-dev-status"
    metrics_path: /probe
    params:
      module: [dns_test]
    static_configs:
     - targets:
           - nostradata-dvmh-prodweb-01
   # file_sd_configs:
   #   - files:
   #     - /opt/prometheus/tools/targets/rdp-dev-targets.yml
    relabel_configs:
      # Ensure port is 22, pass as URL parameter
      - source_labels: [__address__]
        regex: (.*)(:.*)?
        replacement: ${1}:3389
        target_label: __param_target
      # Make instance label the target
      - source_labels: [__param_target]
        target_label: instance
      # Actually talk to the blackbox exporter though
      - target_label: __address__
        replacement: PROD-NIFI:9115
4

1 回答 1

1
  module: [dns_test]

使用 DNS 探测可能不适用于 RDP。试试这个tcp_connect模块。

于 2018-03-05T11:42:34.687 回答