AsterionDocumentation v0.4.1

Checks

Every check a satellite runs: what it does, on which targets, and every parameter with its default.

CheckKeyCategoryTargetsPlanned byProduct
PingpingReachabilityipv4, ipv6, hostnamePolaris (automatic)Host monitoring
TraceroutetracerouteReachabilityipv4, ipv6, hostnamePolaris (automatic)Host monitoring
Port & service scannmapPorts & servicesipv4, ipv6, hostname, cidr, rangetest plansHost monitoring
HTTPhttpWeb & TLSipv4, ipv6, hostname, cidr, rangetest plansHost monitoring
HTTPShttpsWeb & TLSipv4, ipv6, hostname, cidr, rangetest plansHost monitoring
TLS certificatescertWeb & TLSipv4, ipv6, hostname, cidr, rangetest plansHost monitoring
SMTP serversmtpMail & file servicesipv4, ipv6, hostname, cidr, rangetest plansHost monitoring
FTP serverftpMail & file servicesipv4, ipv6, hostname, cidr, rangetest plansHost monitoring
Service detailsdetailsMail & file servicesipv4, ipv6, hostname, cidr, rangetest plansHost monitoring
SegmentationreachPorts & servicesipv4, ipv6, hostnamePolaris (automatic)Host monitoring
Domain DNSdnsDomainsdomaintest plansDNS monitoring
Domain mail serversmailDomainsdomaintest plansMail 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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Packets per runping_count41–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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Maximum hopsmax_hops301–64

Port & service scan (nmap)

Scans host by host and splits the work, reporting each part as soon as it is done:

  1. open ports: nmap -sS (SYN; -sT without raw sockets) on ports, or the top_ports most common ports,
  2. a fingerprint of every open port: -sV and the scripts ssh-hostkey, ssl-cert, http-title,
  3. OS detection (-O) on the open ports, if enabled,
  4. 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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Ports (nmap -p)portsemptyportspece.g. 1-65535 or 22,80,443. Empty = top ports.
Top portstop_ports10001–65535
Timingtiming42 T2 polite
3 T3 normal
4 T4 aggressive
5 T5 insane
Host timeout (minutes)host_timeout301–1440
Service / version detection (-sV)service_detectiononbool
Fingerprint scripts (ssh-hostkey, ssl-cert, http-title)scriptsonbool
OS detection (-O)os_detectionoffbool
Include UDP (top 50)udpoffbool
Slow run: spread over the intervalstretchoffboolHosts 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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Which portsport_sourcebothboth Discovered and manual ports
auto Only discovered ports
manual 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 portshttp_portsnoneports
Pathhttp_path/path
Timeout (seconds)http_timeout201–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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Which portsport_sourcebothboth Discovered and manual ports
auto Only discovered ports
manual 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 portshttps_portsnoneports
Pathhttp_path/path
Timeout (seconds)http_timeout201–120
Certificate warning (days)cert_warning_days211–365Warn 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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Which portsport_sourcebothboth Discovered and manual ports
auto Only discovered ports
manual 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 portshttps_portsnoneports
Certificate warning (days)cert_warning_days211–365Warn 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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Which portsport_sourcebothboth Discovered and manual ports
auto Only discovered ports
manual 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 portssmtp_portsnoneports
HELO / EHLO namesmtp_heloemptyhostDefault: the satellite's hostname.
Open-relay testsmtp_relay_testoffboolMAIL FROM / RCPT TO to a foreign domain followed by RSET — never sends a message.
Relay test recipientsmtp_relay_toemptyemailA 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_days211–365Warn when a certificate expires within this many days.

FTP server

Banner, AUTH TLS and the certificate, optionally an anonymous login test (off by default).

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Which portsport_sourcebothboth Discovered and manual ports
auto Only discovered ports
manual 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 portsftp_portsnoneports
Test anonymous loginftp_anonymousoffbool
Certificate warning (days)cert_warning_days211–365Warn 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.

ParameterKeyDefaultAllowedMeaning
Check every known address of a hostexpand_addressesonboolA host is checked on all its IPv4, IPv6 addresses and hostnames, not only the selected one.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.
Test access without a passworddetail_no_authoffboolRedis, 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.

ParameterKeyDefaultAllowedMeaning
DNS resolversdns_resolverssystemresolvers"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 logsct_lookuponbool
Store debug outputdebugoffboolEvery 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.

ParameterKeyDefaultAllowedMeaning
DNS resolversdns_resolverssystemresolvers"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 namesmtp_heloemptyhostDefault: the satellite's hostname.
Open-relay testsmtp_relay_testoffboolMAIL FROM / RCPT TO to a foreign domain followed by RSET — never sends a message.
Relay test recipientsmtp_relay_toemptyemailA 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_days211–365Warn when a certificate expires within this many days.
Store debug outputdebugoffboolEvery command the satellite runs is stored with the run, including its full output.