| 1. General Results, most used to calculate the result |
A | name "mail.projekt-hls.de" is subdomain, public suffix is ".de", top-level-domain is ".de", top-level-domain-type is "country-code", Country is Germany, tld-manager is "DENIC eG", num .de-domains preloaded: 10577 (complete: 263653)
|
A | Good: All ip addresses are public addresses
|
| Warning: Only one ip address found: mail.projekt-hls.de has only one ip address.
|
| Warning: No ipv6 address found. Ipv6 is the future with a lot of new features. So every domain name should have an ipv6 address. See https://en.wikipedia.org/wiki/IPv6: mail.projekt-hls.de has no ipv6 address.
|
A | Good: No asked Authoritative Name Server had a timeout
|
A | DNS: "Name Error" means: No www-dns-entry defined. This isn't a problem
|
A | Good: destination is https
|
A | Good - only one version with Http-Status 200
|
A | Good: one preferred version: non-www is preferred
|
A | Good: No cookie sent via http.
|
A | Good: every https has a Strict Transport Security Header
|
| HSTS-Preload-Status: unknown. Domain never included in the Preload-list. Check https://hstspreload.org/ to learn some basics about the Google-Preload-List.
|
A | Good: Some urls with http status 200/404 have a complete Content-Type header (MediaType / MediaSubType + correct charset):2 complete Content-Type - header (3 urls)
|
| https://mail.projekt-hls.de/.well-known/acme-challenge/check-your-website-dot-server-daten-dot-de
|
| Url with incomplete Content-Type - header - missing charset
|
A | http://mail.projekt-hls.de/ 31.16.95.197
| https://mail.projekt-hls.de/
| Correct redirect http - https with the same domain name
|
B | Warning: HSTS max-age is too short - minimum 31536000 = 365 days required, 2592000 seconds = 30 days found
|
I | https://mail.projekt-hls.de/ 31.16.95.197
|
| Content problems or problems with resources included - http links, files doesn't exist, different Content-Type definitions. Check the Html-Content - Part.
|
N | https://mail.projekt-hls.de/ 31.16.95.197
|
| Error - Certificate isn't trusted, RemoteCertificateChainErrors
|
N | https://mail.projekt-hls.de/.well-known/acme-challenge/check-your-website-dot-server-daten-dot-de
|
| Error - Certificate isn't trusted, RemoteCertificateChainErrors
|
N | https://31.16.95.197/ 31.16.95.197
|
| Error - Certificate isn't trusted, RemoteCertificateNameMismatch, RemoteCertificateChainErrors
|
O | mail.projekt-hls.de / 31.16.95.197 / 443
|
| Old connection: Cipher Suites without Forward Secrecy (FS) found. Remove all of these Cipher Suites, use only Cipher Suites with Forward Secrecy: Starting with ECDHE- or DHE - the last "E" says: "ephemeral". Or use Tls.1.3, then all Cipher Suites use FS. 7 Cipher Suites without Forward Secrecy found
|
X | Fatal error: Nameserver doesn't support TCP connection: f.nic.de: Fatal error (-14). Details: Unable to read data from the transport connection: Eine vorhandene Verbindung wurde vom Remotehost geschlossen.. - Eine vorhandene Verbindung wurde vom Remotehost geschlossen.
|
X | Fatal error: Nameserver doesn't support TCP connection: l.de.net: Fatal error (-14). Details: Unable to read data from the transport connection: Eine vorhandene Verbindung wurde vom Remotehost geschlossen.. - Eine vorhandene Verbindung wurde vom Remotehost geschlossen.
|
| Info: Checking all ip addresses of that domain without sending the hostname only one certificate found. Checking all ip addresses and sending the hostname only one certificate found. Both certificates are the same. So that domain doesn't require Server Name Indication (SNI), it's the primary certificate of that set of ip addresses.: Domain mail.projekt-hls.de, 1 ip addresses, 1 different http results.
|
B | No _mta-sts TXT record found (mta-sts: Mail Transfer Agent Strict Transport Security - see RFC 8461). Read the result of server-daten.de (Url-Checks, Comments, Connections and DomainServiceRecords) to see a complete definition. Domainname: _mta-sts.mail.projekt-hls.de
|
| 2. Header-Checks |
A | mail.projekt-hls.de 31.16.95.197
| Content-Security-Policy
| Ok: Header without syntax errors found: img-src * data: blob:;base-uri 'self';worker-src 'self' blob:;manifest-src 'self';frame-src 'self' data:
|
F |
|
| Bad: Missing default-src directive. A default-src directive is used if one of the specialized fetch directives (child-src, connect-src, font-src, frame-src, img-src, manifest-src, media-src, object-src, prefetch-src, script-src, style-src, worker-src) isn't defined. Missing default-src, all sources are allowed, that's bad. A default-src with 'none' or 'self' blocks that.
|
E |
|
| Bad: No form-action directive found. Use one to limit the form - action - destinations. form-action is a navigation-directive, so default-src isn't used.
|
E |
|
| Bad: No frame-ancestors directive found. Use one to limit the pages allowed to use this page in frame / iframe / object / embed / applet. frame-ancestors is a navigation-directive, so default-src isn't used.
|
A |
|
| Good: base-uri directive found. That limits the URLs which can be used in a document's <base> element. Because it's a document directive, default-src isn't used, so an own directive is required.
|
F |
|
| Critical: No object-src and no default-src as fallback defined. So object / embed / applet can load every resource. That's fatal.
|
F |
|
| Critical: No script-src and no default-src as fallback defined. So scripts are unlimited. That's fatal.
|
F |
|
| Dangerous: frame-src is defined and allows the data: schema. That allows hidden code injection. Insert <iframe src="data:text/html;charset=utf-8;base64,PCFET0NUWVBFIGh0bWw+PGh0bWw+PGJvZHk+PHA+YmVmb3JlPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmFsZXJ0KCdYU1MnKTwvc2NyaXB0PjxwPmFmdGVyPC9ib2R5PjwvaHRtbD4="></iframe> in your page and see what happens.
|
A |
| Referrer-Policy
| Ok: Header without syntax errors found: same-origin
|
A |
| X-Frame-Options
| Ok: Header without syntax errors found: sameorigin
|
B |
|
| Info: Header is deprecated. May not longer work in modern browsers. sameorigin. Better solution: Use a Content-Security-Policy Header with a frame-ancestors directive. DENY - use 'none', SAMEORIGIN - use 'self'. If you want to allow some domains to frame your page, add these urls.
|
A |
| X-Xss-Protection
| Ok: Header without syntax errors found: 1
|
B |
|
| Info: Header is deprecated. May not longer work in modern browsers. 1
|
F | mail.projekt-hls.de 31.16.95.197
| X-Content-Type-Options
| Critical: Missing Header:
|
F | mail.projekt-hls.de 31.16.95.197
| Permissions-Policy
| Critical: Missing Header:
|
B | mail.projekt-hls.de 31.16.95.197
| Cross-Origin-Embedder-Policy
| Info: Missing Header
|
B | mail.projekt-hls.de 31.16.95.197
| Cross-Origin-Opener-Policy
| Info: Missing Header
|
B | mail.projekt-hls.de 31.16.95.197
| Cross-Origin-Resource-Policy
| Info: Missing Header
|
| 3. DNS- and NameServer - Checks |
A | Info:: 2 Root-climbing DNS Queries required to find all IPv4- and IPv6-Addresses of 2 Name Servers.
|
A | Info:: 2 Queries complete, 2 with IPv6, 0 with IPv4.
|
A | Good: All DNS Queries done via IPv6.
|
A | Good: Some ip addresses of name servers found with the minimum of two DNS Queries. One to find the TLD-Zone, one to ask the TLD-Zone.ns3.ip-projects.de (2001:4178:3:a357:62:116:159:4, 62.116.159.4), ns4.ip-projects.de (2001:8d8:580:401:217:160:113:37, 217.160.113.37)
|
A | Good (1 - 3.0):: An average of 1.0 queries per domain name server required to find all ip addresses of all name servers.
|
A | Info:: 2 different Name Servers found: ns3.ip-projects.de, ns4.ip-projects.de, 2 Name Servers included in Delegation: ns3.ip-projects.de, ns4.ip-projects.de, 2 Name Servers included in 1 Zone definitions: ns3.ip-projects.de, ns4.ip-projects.de, 1 Name Servers listed in SOA.Primary: ns3.ip-projects.de.
|
A | Good: Only one SOA.Primary Name Server found.: ns3.ip-projects.de.
|
A | Good: SOA.Primary Name Server included in the delegation set.: ns3.ip-projects.de.
|
A | Good: All Name Server Domain Names have a Public Suffix.
|
A | Good: All Name Server Domain Names ending with a Public Suffix have minimal one IPv4- or IPv6 address.
|
A | Good: All Name Server ip addresses are public.
|
A | Info: Ipv4-Subnet-list: 2 Name Servers, 2 different subnets (first Byte): 217., 62., 2 different subnets (first two Bytes): 217.160., 62.116., 2 different subnets (first three Bytes): 217.160.113., 62.116.159.
|
A | Excellent: Every Name Server IPv4-address starts with an unique Byte.
|
A | Info: IPv6-Subnet-list: 2 Name Servers with IPv6, 1 different subnets (first block): 2001:, 2 different subnets (first two blocks): 2001:08d8:, 2001:4178:, 2 different subnets (first three blocks): 2001:08d8:0580:, 2001:4178:0003:, 2 different subnets (first four blocks): 2001:08d8:0580:0401:, 2001:4178:0003:a357:
|
A | Good: Name Server IPv6 addresses from different subnets found.
|
A | Good: Nameserver supports TCP connections: 4 good Nameserver
|
A | Good: Nameserver supports Echo Capitalization: 4 good Nameserver
|
X | Fatal error: Nameserver doesn't support EDNS with max. 512 Byte Udp payload or sends more then 512 Bytes: ns3.ip-projects.de
|
X | Fatal error: Nameserver doesn't support EDNS with max. 512 Byte Udp payload or sends more then 512 Bytes: ns4.ip-projects.de
|
A | Good: Nameserver has passed 10 EDNS-Checks (OP100, FLAGS, V1, V1OP100, V1FLAGS, DNSSEC, V1DNSSEC, NSID, COOKIE, CLIENTSUBNET): 4 good Nameserver
|
| Nameserver doesn't pass all EDNS-Checks: ns3.ip-projects.de: OP100: no result. FLAGS: no result. V1: no result. V1OP100: no result. V1FLAGS: no result. DNSSEC: no result. V1DNSSEC: no result. NSID: no result. COOKIE: no result. CLIENTSUBNET: no result.
|
A | Good: All SOA have the same Serial Number
|
| Warning: No CAA entry with issue/issuewild found, every CAA can create a certificate. Read https://en.wikipedia.org/wiki/DNS_Certification_Authority_Authorization to learn some basics about the idea of CAA. Your name server must support such an entry. Not all dns providers support CAA entries.
|
| 4. Content- and Performance-critical Checks |
A | Good: All checks /.well-known/acme-challenge/random-filename without redirects answer with the expected http status 404 - Not Found. Creating a Letsencrypt certificate via http-01 challenge should work. If it doesn't work: Check your vHost configuration (apachectl -S, httpd -S, nginx -T). Every combination of port and ServerName / ServerAlias (Apache) or Server (Nginx) must be unique. Merge duplicated entries in one vHost. If you use an IIS, extensionless files must be allowed in the /.well-known/acme-challenge subdirectory. Create a web.config in that directory. Content: <configuration><system.webServer><staticContent><mimeMap fileExtension="." mimeType="text/plain" /></staticContent></system.webServer></configuration>. If you have a redirect http ⇒ https, that's ok, Letsencrypt follows such redirects to port 80 / 443 (same or other server). There must be a certificate. But the certificate may be expired, self signed or with a not matching domain name. Checking the validation file Letsencrypt ignores such certificate errors. Trouble creating a certificate? Use https://community.letsencrypt.org/ to ask.
|
A | Good: Every https result with status 200 and greater 1024 Bytes is compressed (gzip, deflate, br checked).
|
| https://mail.projekt-hls.de/ 31.16.95.197
|
| Warning: Https + http status 200 + Inline CSS / JavaScript found. Don't use inline CSS / JavaScript. These are compiled and re-used ressources, save these with a long Cache-Control max-age - header.
|
| https://31.16.95.197/ 31.16.95.197
|
| Warning: Https + http status 200 + Inline CSS / JavaScript found. Don't use inline CSS / JavaScript. These are compiled and re-used ressources, save these with a long Cache-Control max-age - header.
|
| https://mail.projekt-hls.de/ 31.16.95.197
|
| Warning: Https result with status 200 found, Html-Content is too big. Should be max. 110 %. May contain inline CSS / JavaScript, too much comments or white space. Re-used ressources - create files with a long Cache-Control max-age header. Remove comments and white space.
|
| https://31.16.95.197/ 31.16.95.197
|
| Warning: Https result with status 200 found, Html-Content is too big. Should be max. 110 %. May contain inline CSS / JavaScript, too much comments or white space. Re-used ressources - create files with a long Cache-Control max-age header. Remove comments and white space.
|
| https://mail.projekt-hls.de/ 31.16.95.197
|
| Warning: Https connections (Standard Port 443) found without support of the http/2 protocol via ALPN. Http/2 is the new Http-Version (old: http 1.1) with some important new features. Update your server software so http/2 is available. Only one TCP-connection per Server (that's a performance boost), Header-Compression and Server Pushs are available. Domain Sharding and Inline-CSS/Javascript shouldn't used with http/2.
|
| https://31.16.95.197/ 31.16.95.197
|
| Warning: Https connections (Standard Port 443) found without support of the http/2 protocol via ALPN. Http/2 is the new Http-Version (old: http 1.1) with some important new features. Update your server software so http/2 is available. Only one TCP-connection per Server (that's a performance boost), Header-Compression and Server Pushs are available. Domain Sharding and Inline-CSS/Javascript shouldn't used with http/2.
|
| https://mail.projekt-hls.de/ 31.16.95.197
|
| Critical: Some script Elements (type text/javascript) with a src-Attribute don't have a defer / async - Attribute. Loading and executing these JavaScripts blocks parsing and rendering the Html-Output. That's bad if your site is large or the connection is slow / mobile usage. Use "async" if the js file has only functions (so nothing is executed after parsing the file) or is independend. Use "defer" if the order of the scripts is important. All "defer" scripts are executed before the DOMContentLoaded event is fired. Check https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script to see some details.: 6 script elements without defer/async.
|
| https://31.16.95.197/ 31.16.95.197
|
| Critical: Some script Elements (type text/javascript) with a src-Attribute don't have a defer / async - Attribute. Loading and executing these JavaScripts blocks parsing and rendering the Html-Output. That's bad if your site is large or the connection is slow / mobile usage. Use "async" if the js file has only functions (so nothing is executed after parsing the file) or is independend. Use "defer" if the order of the scripts is important. All "defer" scripts are executed before the DOMContentLoaded event is fired. Check https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script to see some details.: 6 script elements without defer/async.
|
A | Good: All CSS / JavaScript files are sent compressed (gzip, deflate, br checked). That reduces the content of the files. 2 external CSS / JavaScript files found
|
A | Good: All images with internal compression not compressed. Some Images (.png, .jpg, .jpeg, .webp, .gif) are already compressed, so an additional compression isn't helpful. 1 images (type image/png, image/jpg, image/jpeg, image/webp, image/gif) found without additional Compression. Not required because these images are already compressed
|
| Warning: CSS / JavaScript files with a missing or too short Cache-Control header found. Browsers should cache and re-use these files. 8 external CSS / JavaScript files without Cache-Control-Header, 0 with Cache-Control, but no max-age, 0 with Cache-Control max-age too short (minimum 7 days), 0 with Cache-Control long enough, 8 complete.
|
| Warning: Images with a missing or too short Cache-Control header found. Browsers should cache and re-use these files. 1 image files without Cache-Control-Header, 0 with Cache-Control, but no max-age, 0 with Cache-Control max-age too short (minimum 7 days), 0 with Cache-Control long enough, 1 complete.
|
A | Good: All checked attribute values are enclosed in quotation marks (" or ').
|
A | Good: All img-elements have a valid alt-attribute.: 2 img-elements found.
|
A | Good: Domainname is not on the "Specially Designated Nationals And Blocked Persons List" (SDN). That's an US-list of individuals and companies owned or controlled by, or acting for or on behalf of, targeted countries. It also lists individuals, groups, and entities, such as terrorists and narcotics traffickers designated under programs that are not country-specific. Collectively, such individuals and companies are called "Specially Designated Nationals" or "SDNs." Their assets are blocked and U.S. persons are generally prohibited from dealing with them. So if a domain name is on that list, it's impossible to create a Letsencrypt certificate with that domain name. Check the list manual - https://www.treasury.gov/resource-center/sanctions/sdn-list/pages/default.aspx
|
| http://mail.projekt-hls.de/ 31.16.95.197
|
| Warning: HSTS header sent via http has no effect
|
| https://mail.projekt-hls.de/.well-known/acme-challenge/check-your-website-dot-server-daten-dot-de
| 2.374 seconds
| Warning: 404 needs more then one second
|
A | Duration: 191353 milliseconds, 191.353 seconds
|