Skip to content
https://www.asten.nl

Infrastructure

· 17 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.
SCORE
92
GRADE
A
FIX
0
REVIEW
7
PASS
10
INFO
0
Probed from Madrid, Spain
200 OK
Checks
17
10 PASS 7 REVIEW
B
CAA Records
No CAA records (any CA may issue certificates)
REVIEW
No CAA records (any CA may issue certificates)
Info::
No CAA records published
Without CAA records, any publicly-trusted CA can issue certificates for this domain. Adding a CAA record (`yourdomain. IN CAA 0 issue "letsencrypt.org"`) restricts issuance to CAs you authorize. Required by CAB Forum baseline since 2017; the default of 'any CA' is widely supported but is the broader attack surface for issuance fraud.
B
Reverse DNS
0/2 IPs match cert SAN
REVIEW
0/2 IPs match cert SAN
Info::
PTR for 90.145.213.25 does not match any cert SAN: 90-145-213-25.bbserv.nl
Common when behind a CDN or shared hosting (PTR points at the provider's hostname). Mismatch can also affect mail deliverability if this IP sends email -- many MTAs reject mail when forward+reverse DNS disagree.
Info::
PTR lookup failed for 2a02:120:380:1::1:124: lookup 2a02:120:380:1::1:124: no such host
No reverse DNS record set for this IP. Common on bare cloud-VM IPs without provider-side PTR; not a security issue.
B
TLS Certificate Expiry & Recommendations
52 days until leaf cert expires — 3 issues to address
REVIEW

Certificate validity

52
days left
0d 30d 60d 90d+

Recommended actions

  • Add includeSubDomains to the HSTS directive
  • Add the preload directive and submit to hstspreload.org once max-age + includeSubDomains are in place
  • Enable OCSP stapling on your TLS server to remove a CA roundtrip and protect user privacy
C
CDN & Delivery
Action
Assets on AWS CloudFront (host app.tolkie.nl, 3 assets); document served directly from origin
REVIEW
Assets on AWS CloudFront (host app.tolkie.nl, 3 assets); document served directly from origin
Warning::
Document not behind existing CDN (AWS CloudFront serves the assets)
The page's subresources are delivered by AWS CloudFront (app.tolkie.nl, 3 assets), but the HTML document itself comes straight from the origin. Routing the document through the CDN already in use is the cheapest latency win available here -- the provider relationship, the certificate and the config already exist. A short edge TTL with stale-while-revalidate suits HTML that changes often; if the response is genuinely per-user, edge TLS termination alone still removes a full round trip from every visitor's first byte.
Got: x-amz-cf-id: J6Y_3YpvMyIvbmJcPE5ZvMzdsLhJidEh8CqvsaHEymOYO7tgumG4rg==
Info::
Assets on AWS CloudFront: app.tolkie.nl (assets: 3), cache Hit from cloudfront
Got: x-amz-cf-id: J6Y_3YpvMyIvbmJcPE5ZvMzdsLhJidEh8CqvsaHEymOYO7tgumG4rg==
Warning: Assets on a CDN, document is not: AWS CloudFront
Document origin not attributed

Asset hosts on a CDN

  • app.tolkie.nl — AWS CloudFront · assets: 3 · Cache Status: Hit from cloudfront

Other asset hosts

  • analytics.silktide.com — assets: 1 · below probe threshold
  • app-script.monsido.com — assets: 1 · below probe threshold
  • heatmaps.monsido.com — assets: 1 · below probe threshold
  • meldingen.brabantalert.nl — assets: 1 · below probe threshold
  • pagecorrect.monsido.com — assets: 1 · below probe threshold

The heavy static files already ride an edge network, but every visitor still waits on the origin for the HTML itself. Routing the document through the same CDN is usually a config change rather than a migration: a short edge TTL with stale-while-revalidate for cacheable HTML, or edge TLS termination alone when the response is per-user.

B
CDN Cache Observability
No CDN cache-status headers in the response
REVIEW
No CDN cache-status headers in the response
Info::
No CDN cache-status headers in the response
Without an X-Cache / CF-Cache-Status / X-Vercel-Cache / Age header, you can't tell from outside whether a request hit the cache or went to origin. Operationally important: enables debugging stale-content reports and verifying cache rules. Most managed CDN platforms emit at least one of these by default; absence often means the platform's diagnostic headers are stripped at an upstream proxy.
B
Operational Status Page
No status page link detected
REVIEW
No status page link detected
Info::
No operational status page link detected
Status pages communicate planned maintenance and incidents to users -- a hallmark of operationally-mature services. Most SaaS teams publish one via Atlassian Statuspage, Instatus, BetterUptime, or a self-hosted Cachet. Smaller sites legitimately don't need one; flagged as Info, not a failure.
B
Health Check Endpoint
No conventional health endpoint found
REVIEW
No conventional health endpoint found
Info::
No conventional health endpoint found
Health endpoints (/health, /healthz, /status, /ping, /api/health) let uptime monitors, load balancers, and orchestration systems (Kubernetes, ECS, Fly.io) verify the service is alive. Marketing sites and small services often skip them legitimately; flagged as Info, not a failure. Probe results: /api/health: 404, /health: 404, /healthz: 404, /ping: 404, /status: 404.
A
DNS Records
1 A records, 92 ms lookup
PASS
1 A records, 92 ms lookup
Info::
Resolves to 1 IPv4 address(es)
Got: 90.145.213.25
Info::
Single A record — no DNS redundancy
Multiple A records provide failover if one server goes down.
Info::
Has 1 IPv6 (AAAA) record(s)
Got: 2a02:120:380:1::1:124
Warning::
CNAME record at zone apex
A CNAME at the zone apex can break MX and NS records. Use ALIAS/ANAME or A records instead.
Got: asten.nl
Info::
4 nameserver(s) configured
Got: ns4.systemec.nl, ns2.systemec.nl, ns.systemec.nl, ns3.systemec.nl
Info::
1 mail exchanger(s) configured
Info::
SPF record present in TXT
Info::
DNS resolution time: 92 ms
Got: 92 ms
A90.145.213.25
AAAA2a02:120:380:1::1:124
CNAMEasten.nl
NSns4.systemec.nl, ns2.systemec.nl, ns.systemec.nl, ns3.systemec.nl
MX
0 asten-nl.mail.protection.outlook.com
TXT
eRYBN7S83x7mSs2dVCx4ziEanDXssYTj6QuxnArBjFwStsGPEb1homIBwW6g6Mp8
SPF v=spf1 mx ip4:213.206.224.210 ip4:193.163.108.129 ip4:212.178.155.130 ip6:2001:4...
bastion365-domain-validation=285c76c121f1f
v=NTA7516-1;startdate=2019-06;enddate=2029-09;provider=bastionic;ntamx=10 mx.bas...
LUtv9VKFOzQqYeMJDELT/zFeoFthid9lJgsv1ExDyn7C11rUT5kLv9Wc+uA5kE0UW0+Yw7c9AfFKlX7Z...
fK1tEHlkPA9zv3xMd2zRLbfTpwe85S3HxGEnYWIJb5Ru0zOVy0A70inFhfAIBn3n
MS=ms17314447
kyVbB3UBAKmyn5Dgg8fZgV2hVsn8UqQbcXXB4r+RzWH5j76RtCoYw2uJ6HZui3RzWRIa/rIAKyqZ9pm2...
9591375d94f0b292f17a31f06968c4cfe3d5e3f0840ff3858f2746c6d44f3a34
CAALookup not available with standard resolver
Resolved in 92 ms

Multiple A records provide failover if one server goes down.

Why this matters

Single A record means a single point of failure — if that IP goes down, your site is unreachable until DNS TTL expires.

Learn more ▾

Add multiple A records for round-robin failover, or use a managed DNS provider with health-checked failover (Route 53, Cloudflare, NS1). Short TTL (60-300s) lets clients recover faster on outages.

Source: SRE practice / DNS architecture

A CNAME at the zone apex can break MX and NS records. Use ALIAS/ANAME or A records instead.

Why this matters

CNAME at the apex (example.com) breaks every other apex record (MX, TXT, NS) — DNS-protocol violation per RFC 1034.

Learn more ▾

RFC 1034 forbids CNAME alongside other records at the same name. Some DNS providers offer ALIAS / ANAME / flattened-CNAME records that work around this — use those instead. Otherwise apex-level CNAME breaks email (no MX), domain ownership verification (no TXT), and more.

Source: RFC 1034

A+
Subdomain Takeover
No subdomain takeover risk detected
PASS
No subdomain takeover risk detected
Info::
CNAME does not point at a known takeover-able service
A+
DNSSEC
Signed and validating
PASS
Signed and validating
Info::
DNSSEC fully signed and chain validates (ECDSAP256SHA256)
A
Multi-Resolver DNS Speed
Mean 54ms across 3 resolvers (spread 66ms)
PASS
Mean 54ms across 3 resolvers (spread 66ms)
Info::
Google: 20ms
Got: 20ms via 8.8.8.8:53
Info::
Cloudflare: 58ms
Got: 58ms via 1.1.1.1:53
Info::
Quad9: 86ms
Got: 86ms via 9.9.9.9:53
A+
Redirect Chain
No redirects — direct access
PASS
No redirects — direct access
Info::
No redirects — direct access
Got: https://www.asten.nl

https://www.asten.nl

155 ms · HTTP/1.1 FINAL

#URLStatusTimeProtocolServer
1https://www.asten.nl200155 msHTTP/1.1Apache
A+
IPv6 Readiness
IPv6 reachable (34 ms)
PASS
IPv6 reachable (34 ms)
Info::
IPv6 is configured and reachable at 2a02:120:380:1::1:124
Got: 34 ms connect
IPv6 Ready
AAAA Records 2a02:120:380:1::1:124 Connection Reachable (34 ms)
A+
Crawlability
robots.txt present, sitemap with 1 URLs
PASS
robots.txt present, sitemap with 1 URLs
Info::
robots.txt is present
Got: 195 bytes
Info::
sitemap.xml is present
Info::
sitemap.xml is valid XML
Info::
sitemap.xml contains 1 entries
Info::
Sitemap index with 1 child sitemaps
Info::
robots.txt does not reference a sitemap
Add a 'Sitemap:' directive to robots.txt so search engines can discover your sitemap.

Add a 'Sitemap:' directive to robots.txt so search engines can discover your sitemap.

Why this matters

robots.txt omits Sitemap: directive — crawlers must fetch /sitemap.xml by convention; reliable but missing the explicit hint.

Source: sitemaps.org

robots.txt 200 OK
Size 195 B Sitemaps referenced 0 User-agents * Blocking No — crawling allowed
User-Agent: *
Allow: /
Disallow: /fileadmin/
Disallow: /typo3/
Disallow: /typo3conf/
Disallow: /typo3temp/
Disallow: /zoeken
Disallow: /zoekpagina
Disallow: /zoekresultaten
Disallow: /zoekfunctie
sitemap.xml 200 OK
Type Sitemap Index URLs 1 entries Valid XML Yes
A
URL Variants
www/non-www, trailing slash, HTTP→HTTPS
PASS
www/non-www, trailing slash, HTTP→HTTPS
Info::
www/non-www redirect configured correctly (preferred: www)
Warning::
HTTP→HTTPS redirect is not permanent
Got: HTTP 302 Expected: 301 or 308 permanent redirect

www / non-www

200https://www.asten.nl/
302https://asten.nl/

Preferred variant: www

HTTP → HTTPS

302http://www.asten.nl/ → https://www.asten.nl/

Use a permanent redirect (301 or 308) instead of a temporary one

A+
Domain Intelligence
asten.nl — via Systemec B.V., 29 years old
PASS
asten.nl — via Systemec B.V., 29 years old
Info::
DNSSEC is enabled
Info::
Registrar: Systemec B.V.
Warning::
Registrar lock is NOT enabled
The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.
Domain expiry

Unknown

SSL certificate

52 days

Issued by Sectigo Limited

Domain age

29 years

Registered March 25, 1998

DNSSEC

Enabled

Protects against DNS spoofing

Hosting

Unknown

2a02:120:380:1::1:124

Registrar

Systemec B.V.

Unlocked 4 NS records
Expiry timeline
Today
+1 year
SSL expiry Danger zone (≤30 days)
Recommended actions
  • Enable registrar lock (clientTransferProhibited) to block unauthorized domain transfers
Registrar Systemec B.V.
Created March 25, 1998 (29 years ago)
Last Updated August 13, 2026
Name Servers ns3.systemec.nl, ns4.systemec.nl, ns.systemec.nl, ns2.systemec.nl
DNSSEC Enabled
Registrant REDACTED FOR PRIVACY
Hosting
IP Address 2a02:120:380:1::1:124
Data source: rdap (0.2s)

The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.

Why this matters

Without registrar lock, an attacker who phishes your registrar credentials can transfer the domain in minutes — total brand hijack.

Learn more ▾

Registrar lock (clientTransferProhibited, clientUpdateProhibited, clientDeleteProhibited) requires extra verification before any transfer/update/delete. Every major registrar offers it free. Combined with 2FA on your registrar account, it's the strongest defense against domain hijacking.

Source: ICANN / domain-security best practice

A+
HTTP Probe Timing
Total 213 ms — DNS, TCP, TLS, TTFB, content transfer breakdown
PASS
DNS Lookup DNS Lookup — time to resolve the domain name to an IP address.
62 ms
TCP Connect TCP Connect — time to establish a TCP connection to the server.
30 ms
TLS Handshake TLS Handshake — time to complete the HTTPS encryption handshake.
36 ms
Time to First Byte Time to First Byte — how long the server takes to respond with the first byte of data.
213 ms
Total Time Total request time from DNS lookup through full response.
214 ms

Connection waterfall

DNS Lookup 62 ms TCP Connect 30 ms TLS Handshake 36 ms Server Processing 87 ms Content Transfer 0 ms
All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback