Checks
Every check a satellite runs: what it does, on which targets, and every parameter with its default.
| Check | Key | Category | Targets | Planned by | Product |
|---|---|---|---|---|---|
| Ping | ping | Reachability | ipv4, ipv6, hostname | Polaris (automatic) | Host monitoring |
| Traceroute | traceroute | Reachability | ipv4, ipv6, hostname | Polaris (automatic) | Host monitoring |
| Port & service scan | nmap | Ports & services | ipv4, ipv6, hostname, cidr, range | test plans | Host monitoring |
| HTTP | http | Web & TLS | ipv4, ipv6, hostname, cidr, range | test plans | Host monitoring |
| HTTPS | https | Web & TLS | ipv4, ipv6, hostname, cidr, range | test plans | Host monitoring |
| TLS certificates | cert | Web & TLS | ipv4, ipv6, hostname, cidr, range | test plans | Host monitoring |
| SMTP server | smtp | Mail & file services | ipv4, ipv6, hostname, cidr, range | test plans | Host monitoring |
| FTP server | ftp | Mail & file services | ipv4, ipv6, hostname, cidr, range | test plans | Host monitoring |
| Service details | details | Mail & file services | ipv4, ipv6, hostname, cidr, range | test plans | Host monitoring |
| Segmentation | reach | Ports & services | ipv4, ipv6, hostname | Polaris (automatic) | Host monitoring |
| Domain DNS | dns | Domains | domain | test plans | DNS monitoring |
| Domain mail servers | mail | Domains | domain | test plans | Mail monitoring |
Parameters below show the built-in defaults. A plan stores its own values; a value missing from a plan falls back to the default (order of values). Before anything reaches nmap, traceroute or ping, the satellite validates targets and options again (pulsar/validate.py), so no value can become a command-line option.
Every check of an address also gets a reverse DNS lookup with forward confirmation: the PTR name counts only if it resolves back to the address.
Ping
ICMP echo: reachability, round-trip times (min / avg / max / mdev) and packet loss. Planned automatically: hourly on every host from every satellite.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Packets per run | ping_count | 4 | 1–20 |
Traceroute
The path to the host, hop by hop with PTR names and round-trip times. Polaris stores a path when it changes and adds the origin AS of every public hop. Hops in Docker bridge pools (172.17–172.31.0.0/16), Kubernetes default networks (10.42/16, 10.43/16, 10.96/12, 10.244/16) and PULSAR_TRACE_HIDE are hidden on the satellite: address, name and time never leave it. Planned automatically: hourly.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Maximum hops | max_hops | 30 | 1–64 |
Port & service scan (nmap)
Scans host by host and splits the work, reporting each part as soon as it is done:
- open ports:
nmap -sS(SYN;-sTwithout raw sockets) onports, or thetop_portsmost common ports, - a fingerprint of every open port:
-sVand the scriptsssh-hostkey,ssl-cert,http-title, - OS detection (
-O) on the open ports, if enabled, - UDP top 50 (
-sU), if enabled.
Networks and ranges are expanded on the satellite; every host found becomes a host in Polaris. Single hosts are scanned with -Pn (no ping first), so firewalled hosts are scanned too; in networks nmap first looks for live hosts. SSH host keys found here merge hosts; TLS certificate fingerprints are stored but never merge.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Ports (nmap -p) | ports | empty | portspec | e.g. 1-65535 or 22,80,443. Empty = top ports. |
| Top ports | top_ports | 1000 | 1–65535 | |
| Timing | timing | 4 | 2 T2 polite3 T3 normal4 T4 aggressive5 T5 insane | |
| Host timeout (minutes) | host_timeout | 30 | 1–1440 | |
| Service / version detection (-sV) | service_detection | on | bool | |
| Fingerprint scripts (ssh-hostkey, ssl-cert, http-title) | scripts | on | bool | |
| OS detection (-O) | os_detection | off | bool | |
| Include UDP (top 50) | udp | off | bool | |
| Slow run: spread over the interval | stretch | off | bool | Hosts are scanned one after the other, evenly spaced over the time until the next run (or the end of the schedule's time window). Run now is not stretched. |
HTTP
Plain HTTP on the discovered and/or manual ports: status code, response time, redirects, Server header, page title. Redirects to HTTPS are reported but not followed.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Which ports | port_source | both | both Discovered and manual portsauto Only discovered portsmanual Only manual ports | Discovered ports come from the port scan of the same satellite. Manual ports always run; if one is closed, that is reported. |
| Manual ports | http_ports | none | ports | |
| Path | http_path | / | path | |
| Timeout (seconds) | http_timeout | 20 | 1–120 |
HTTPS
HTTPS endpoints including the TLS handshake and certificate validity. Every known hostname of the host is used as SNI; on a bare IP without a known name only the chain is checked, not the name.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Which ports | port_source | both | both Discovered and manual portsauto Only discovered portsmanual Only manual ports | Discovered ports come from the port scan of the same satellite. Manual ports always run; if one is closed, that is reported. |
| Manual ports | https_ports | none | ports | |
| Path | http_path | / | path | |
| Timeout (seconds) | http_timeout | 20 | 1–120 | |
| Certificate warning (days) | cert_warning_days | 21 | 1–365 | Warn when a certificate expires within this many days. |
TLS certificates
Certificates of every TLS service and STARTTLS service (SMTP, FTP, IMAP, POP3), once per known hostname (SNI) plus the default certificate of the bare IP. Validity, chain trust, hostname match, revocation (OCSP, then CRL), protocol, cipher, key and signature algorithm. SAN names are resolved and correlated with hosts and domains.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Which ports | port_source | both | both Discovered and manual portsauto Only discovered portsmanual Only manual ports | Discovered ports come from the port scan of the same satellite. Manual ports always run; if one is closed, that is reported. |
| Manual TLS ports | https_ports | none | ports | |
| Certificate warning (days) | cert_warning_days | 21 | 1–365 | Warn when a certificate expires within this many days. |
SMTP server
Banner, EHLO and its extensions, STARTTLS and its certificate, and whether PTR, banner, EHLO and certificate agree. Optional open-relay test: MAIL FROM / RCPT TO to a foreign domain followed by RSET — never DATA.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Which ports | port_source | both | both Discovered and manual portsauto Only discovered portsmanual Only manual ports | Discovered ports come from the port scan of the same satellite. Manual ports always run; if one is closed, that is reported. |
| Manual ports | smtp_ports | none | ports | |
| HELO / EHLO name | smtp_helo | empty | host | Default: the satellite's hostname. |
| Open-relay test | smtp_relay_test | off | bool | MAIL FROM / RCPT TO to a foreign domain followed by RSET — never sends a message. |
| Relay test recipient | smtp_relay_to | empty | A mailbox in a domain the tested server is not responsible for. The RFC 2606 default is refused early by strict servers (inconclusive). | |
| Certificate warning (days) | cert_warning_days | 21 | 1–365 | Warn when a certificate expires within this many days. |
FTP server
Banner, AUTH TLS and the certificate, optionally an anonymous login test (off by default).
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Which ports | port_source | both | both Discovered and manual portsauto Only discovered portsmanual Only manual ports | Discovered ports come from the port scan of the same satellite. Manual ports always run; if one is closed, that is reported. |
| Manual ports | ftp_ports | none | ports | |
| Test anonymous login | ftp_anonymous | off | bool | |
| Certificate warning (days) | cert_warning_days | 21 | 1–365 | Warn when a certificate expires within this many days. |
Service details
Looks at what discovery found and reads what the protocol reports, never logging in: SSH algorithms, SMB version and signing, database versions, TLS on PostgreSQL, open DNS recursion. Test access without a password (Redis, Memcached, Elasticsearch, SNMP community public) only runs on satellites in a zone, never from external — Polaris forces it off for external satellites.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| Check every known address of a host | expand_addresses | on | bool | A host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
| Test access without a password | detail_no_auth | off | bool | Redis, Memcached, Elasticsearch and the SNMP community public. Only runs on satellites inside a zone, never from external. |
Segmentation
TCP connection attempts from a zone to the hosts of another zone, built by Polaris from the segmentation matrix. Reports which of the tested ports opened.
No parameters: Polaris builds these plans itself.
Domain DNS
Records of the domain and its watched names through the satellite’s resolver (or public / own resolvers), compared with the authoritative name servers found via the parent’s delegation and asked directly over UDP and TCP. Reports differences as manipulation per resolver, name server serials and authority, DNSSEC, SPF, DMARC, DKIM (known selectors plus common ones), CAA, wildcards and subdomains. CT names come from Polaris; the satellite resolves them.
With PULSAR_DNS set, every query goes to that server: authoritative servers are not asked, so delegation, SOA serials and manipulation are not checked on that satellite.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| DNS resolvers | dns_resolvers | system | resolvers | "system" = the satellite host's local resolver (recommended: shows what systems there really get) · "public" = 1.1.1.1, 9.9.9.9, 8.8.8.8 · or up to 4 IPs. Every answer is compared with the authoritative name servers. |
| Find subdomains in Certificate Transparency logs | ct_lookup | on | bool | |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |
Domain mail servers
Every MX of the domain: addresses, PTR and forward confirmation, banner and EHLO, STARTTLS and certificate against the MX name, optional relay test, plus SPF, DMARC and DKIM as published.
| Parameter | Key | Default | Allowed | Meaning |
|---|---|---|---|---|
| DNS resolvers | dns_resolvers | system | resolvers | "system" = the satellite host's local resolver (recommended: shows what systems there really get) · "public" = 1.1.1.1, 9.9.9.9, 8.8.8.8 · or up to 4 IPs. Every answer is compared with the authoritative name servers. |
| HELO / EHLO name | smtp_helo | empty | host | Default: the satellite's hostname. |
| Open-relay test | smtp_relay_test | off | bool | MAIL FROM / RCPT TO to a foreign domain followed by RSET — never sends a message. |
| Relay test recipient | smtp_relay_to | empty | A mailbox in a domain the tested server is not responsible for. The RFC 2606 default is refused early by strict servers (inconclusive). | |
| Certificate warning (days) | cert_warning_days | 21 | 1–365 | Warn when a certificate expires within this many days. |
| Store debug output | debug | off | bool | Every command the satellite runs is stored with the run, including its full output. |