1. General Results, most used to calculate the result A name "dddp.gov.gh" is domain, public suffix is ".gov.gh", top-level-domain is ".gh", top-level-domain-type is "country-code", Country is Ghana, tld-manager is "Network Computer Systems Limited", num .gh-domains preloaded: 13 (complete: 231048) A Good: All ip addresses are public addresses Warning: Only one ip address found: dddp.gov.gh has only one ip address. Warning: Only one ip address found: www.dddp.gov.gh 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: dddp.gov.gh has no ipv6 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: www.dddp.gov.gh has no ipv6 address. A Good: No asked Authoritative Name Server had a timeout A Good: every https has a Strict Transport Security Header A Good: HSTS max-age is long enough, 63072000 seconds = 730 days A Good: HSTS has includeSubdomains - directive 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: All urls with http status 200/404 have a complete Content-Type header (MediaType / MediaSubType + correct charset) B https://dddp.gov.gh/ 197.253.67.113 max-age=63072000; includeSubDomains; Critical: HSTS-Header has Parse-Errors. Empty entry, remove the semicolon at the end., Unknown directive found. Only max-age (with value), includeSubdomains or preload allowed. B https://www.dddp.gov.gh/ 197.253.67.113 max-age=63072000; includeSubDomains; Critical: HSTS-Header has Parse-Errors. Empty entry, remove the semicolon at the end., Unknown directive found. Only max-age (with value), includeSubdomains or preload allowed. B https://197.253.67.113/ 197.253.67.113 max-age=63072000; includeSubDomains; Critical: HSTS-Header has Parse-Errors. Empty entry, remove the semicolon at the end., Unknown directive found. Only max-age (with value), includeSubdomains or preload allowed. http://dddp.gov.gh/dhis-web-commons/security/login.action JSESSIONID=1E26485D50488A7C62315428BEB01240; Path=/; Secure; HttpOnly Fatal: Cookie sent via http. Never send Cookies / Session-Cookies via http. If a user uses an insecure WLan and if the same cookie is used to managed the authenticated session, it's possible to hack that user. Same with HttpOnly - without https that's only decorative. http://www.dddp.gov.gh/dhis-web-commons/security/login.action JSESSIONID=1E261E648246FC1F171E3C7025DF472F; Path=/; Secure; HttpOnly Fatal: Cookie sent via http. Never send Cookies / Session-Cookies via http. If a user uses an insecure WLan and if the same cookie is used to managed the authenticated session, it's possible to hack that user. Same with HttpOnly - without https that's only decorative. http://197.253.67.113/dhis-web-commons/security/login.action JSESSIONID=ADC69DFF18D3A217BEFA6E1FE2EA0241; Path=/; Secure; HttpOnly Fatal: Cookie sent via http. Never send Cookies / Session-Cookies via http. If a user uses an insecure WLan and if the same cookie is used to managed the authenticated session, it's possible to hack that user. Same with HttpOnly - without https that's only decorative. B http://dddp.gov.gh/dhis-web-commons/security/login.action JSESSIONID=1E26485D50488A7C62315428BEB01240; Path=/; Secure; HttpOnly Cookie without a SameSite-Attribute. Possible values are: Strict/Lax/None. Cookie may not work as expected, if "None" is wanted, but browsers use "Lax" as default value. B http://www.dddp.gov.gh/dhis-web-commons/security/login.action JSESSIONID=1E261E648246FC1F171E3C7025DF472F; Path=/; Secure; HttpOnly Cookie without a SameSite-Attribute. Possible values are: Strict/Lax/None. Cookie may not work as expected, if "None" is wanted, but browsers use "Lax" as default value. B http://197.253.67.113/dhis-web-commons/security/login.action JSESSIONID=ADC69DFF18D3A217BEFA6E1FE2EA0241; Path=/; Secure; HttpOnly Cookie without a SameSite-Attribute. Possible values are: Strict/Lax/None. Cookie may not work as expected, if "None" is wanted, but browsers use "Lax" as default value. D http://dddp.gov.gh/ 197.253.67.113 http://dddp.gov.gh/dhis-web-commons/security/login.action Wrong redirect one domain http to other domain http. First redirect to https without changing the domain, so no new dns query is required. So the server can send the HSTS header. That's fundamental using HSTS (Http Strict Transport Security). First step: Add correct redirects http ⇒ https. Perhaps in your port 80 vHost something like "RewriteEngine on" + "RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]" (two rows, without the "). Don't add this in your port 443 vHost, that would create a loop. Then recheck your domain, should be Grade C. There is the rule to select one https version as preferred version. D http://www.dddp.gov.gh/ 197.253.67.113 http://www.dddp.gov.gh/dhis-web-commons/security/login.action Wrong redirect one domain http to other domain http. First redirect to https without changing the domain, so no new dns query is required. So the server can send the HSTS header. That's fundamental using HSTS (Http Strict Transport Security). First step: Add correct redirects http ⇒ https. Perhaps in your port 80 vHost something like "RewriteEngine on" + "RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]" (two rows, without the "). Don't add this in your port 443 vHost, that would create a loop. Then recheck your domain, should be Grade C. There is the rule to select one https version as preferred version. D http://dddp.gov.gh/.well-known/acme-challenge/check-your-website-dot-server-daten-dot-de 197.253.67.113 http://dddp.gov.gh/dhis-web-commons/security/login.action Wrong redirect one domain http to other domain http. First redirect to https without changing the domain, so no new dns query is required. So the server can send the HSTS header. That's fundamental using HSTS (Http Strict Transport Security). First step: Add correct redirects http ⇒ https. Perhaps in your port 80 vHost something like "RewriteEngine on" + "RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]" (two rows, without the "). Don't add this in your port 443 vHost, that would create a loop. Then recheck your domain, should be Grade C. There is the rule to select one https version as preferred version. D http://www.dddp.gov.gh/.well-known/acme-challenge/check-your-website-dot-server-daten-dot-de 197.253.67.113 http://www.dddp.gov.gh/dhis-web-commons/security/login.action Wrong redirect one domain http to other domain http. First redirect to https without changing the domain, so no new dns query is required. So the server can send the HSTS header. That's fundamental using HSTS (Http Strict Transport Security). First step: Add correct redirects http ⇒ https. Perhaps in your port 80 vHost something like "RewriteEngine on" + "RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]" (two rows, without the "). Don't add this in your port 443 vHost, that would create a loop. Then recheck your domain, should be Grade C. There is the rule to select one https version as preferred version. F https://dddp.gov.gh/ 197.253.67.113 http://dddp.gov.gh/dhis-web-commons/security/login.action Wrong redirect https - http - never redirect https to http F https://www.dddp.gov.gh/ 197.253.67.113 http://www.dddp.gov.gh/dhis-web-commons/security/login.action Wrong redirect https - http - never redirect https to http F https://197.253.67.113/ 197.253.67.113 http://197.253.67.113/dhis-web-commons/security/login.action Wrong redirect https - http - never redirect https to http H Fatal error: No https - result with http-status 200, no encryption H Fatal error: http result with http-status 200, no encryption. Add a redirect http ⇒ https, so every connection is secure. Perhaps in your port 80 vHost something like "RewriteEngine on" + "RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]" (two rows, without the "). Don't add this in your port 443 vHost, that would create a loop. N https://197.253.67.113/ 197.253.67.113 http://197.253.67.113/dhis-web-commons/security/login.action Error - Certificate isn't trusted, RemoteCertificateNameMismatch X Fatal error: Nameserver doesn't support TCP connection: ns2.nic.gh: Timeout X Fatal error: Nameserver doesn't support TCP connection: ns2.nic.gh / 197.253.127.251: Timeout X Fatal error: Nameserver doesn't support TCP connection: ns4.nita.gov.gh: Timeout X Fatal error: Nameserver doesn't support TCP connection: ns4.nita.gov.gh / 197.253.124.251: Timeout 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 dddp.gov.gh, 1 ip addresses, 1 different http results. 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 www.dddp.gov.gh, 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.dddp.gov.gh 2. Header-Checks U No https result with http status 2** or 4** (standard-check) found, no header checked. 3. DNS- and NameServer - Checks A Info:: 2 Root-climbing DNS Queries required to find all IPv4- and IPv6-Addresses of 5 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.ns1.nita.gov.gh (197.253.124.232), ns2.nita.gov.gh (197.253.124.231), ns3.nita.gov.gh (197.253.124.230), ns4.nita.gov.gh (197.253.124.251), ns5.nita.gov.gh (69.49.234.26) A Good (1 - 3.0):: An average of 0.4 queries per domain name server required to find all ip addresses of all name servers. A Info:: 5 different Name Servers found: ns1.nita.gov.gh, ns2.nita.gov.gh, ns3.nita.gov.gh, ns4.nita.gov.gh, ns5.nita.gov.gh, 5 Name Servers included in Delegation: ns1.nita.gov.gh, ns2.nita.gov.gh, ns3.nita.gov.gh, ns4.nita.gov.gh, ns5.nita.gov.gh, 5 Name Servers included in 2 Zone definitions: ns1.nita.gov.gh, ns2.nita.gov.gh, ns3.nita.gov.gh, ns4.nita.gov.gh, ns5.nita.gov.gh, 1 Name Servers listed in SOA.Primary: ns4.nita.gov.gh. A Good: Only one SOA.Primary Name Server found.: ns4.nita.gov.gh. A Good: SOA.Primary Name Server included in the delegation set.: ns4.nita.gov.gh. 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 Good: Minimal 2 different name servers (public suffix and public ip address) found: 5 different Name Servers found Warning: No Name Server IPv6 address found. IPv6 is the future, so your name servers should be visible via IPv6.: 5 different Name Servers found Warning: All Name Servers have the same Top Level Domain / Public Suffix. If there is a problem with that Top Level Domain, your domain may be affected. Better: Use Name Servers with different top level domains.: 5 Name Servers, 1 Top Level Domain: gov.gh Warning: All Name Servers have the same domain name. If there is a problem with that domain name (or with the name servers of that domain name), your domain may be affected. Better: Use Name Servers with different domain names / different top level domains.: Only one domain name used: nita.gov.gh A Good: Name servers with different Country locations found: 5 Name Servers, 2 Countries: GH, US A Info: Ipv4-Subnet-list: 5 Name Servers, 2 different subnets (first Byte): 197., 69., 2 different subnets (first two Bytes): 197.253., 69.49., 2 different subnets (first three Bytes): 197.253.124., 69.49.234. A Good: Name Server IPv4-addresses from different subnet found: X Nameserver Timeout checking Echo Capitalization: ns2.nic.gh X Nameserver Timeout checking Echo Capitalization: ns2.nic.gh / 197.253.127.251 X Nameserver Timeout checking Echo Capitalization: ns4.nita.gov.gh X Nameserver Timeout checking Echo Capitalization: ns4.nita.gov.gh / 197.253.124.251 X Nameserver Timeout checking EDNS512: ns2.nic.gh X Nameserver Timeout checking EDNS512: ns2.nic.gh / 197.253.127.251 X Nameserver Timeout checking EDNS512: ns4.nita.gov.gh X Nameserver Timeout checking EDNS512: ns4.nita.gov.gh / 197.253.124.251 Nameserver doesn't pass all EDNS-Checks: ns2.nic.gh: OP100: fatal timeout. FLAGS: fatal timeout. V1: fatal timeout. V1OP100: fatal timeout. V1FLAGS: fatal timeout. DNSSEC: fatal timeout. V1DNSSEC: fatal timeout. NSID: fatal timeout. COOKIE: fatal timeout. CLIENTSUBNET: fatal timeout. Nameserver doesn't pass all EDNS-Checks: ns2.nic.gh / 197.253.127.251: OP100: fatal timeout. FLAGS: fatal timeout. V1: fatal timeout. V1OP100: fatal timeout. V1FLAGS: fatal timeout. DNSSEC: fatal timeout. V1DNSSEC: fatal timeout. NSID: fatal timeout. COOKIE: fatal timeout. CLIENTSUBNET: fatal timeout. Nameserver doesn't pass all EDNS-Checks: ns4.nita.gov.gh: OP100: fatal timeout. FLAGS: fatal timeout. V1: fatal timeout. V1OP100: fatal timeout. V1FLAGS: fatal timeout. DNSSEC: fatal timeout. V1DNSSEC: fatal timeout. NSID: fatal timeout. COOKIE: fatal timeout. CLIENTSUBNET: fatal timeout. Nameserver doesn't pass all EDNS-Checks: ns4.nita.gov.gh / 197.253.124.251: OP100: fatal timeout. FLAGS: fatal timeout. V1: fatal timeout. V1OP100: fatal timeout. V1FLAGS: fatal timeout. DNSSEC: fatal timeout. V1DNSSEC: fatal timeout. NSID: fatal timeout. COOKIE: fatal timeout. CLIENTSUBNET: fatal timeout. 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 Fatal: All checks of /.well-known/acme-challenge/random-filename have a redirect, destination doesn't have the random filename. Creating a Letsencrypt certificate via http-01 challenge may not work. Trouble creating a certificate? Use https://community.letsencrypt.org/ to ask. A Info: No img element found, no alt attribute checked 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 https://dddp.gov.gh/ 197.253.67.113 Strict-Transport-Security: max-age=63072000; includeSubDomains; Parse Error - Header can't be parsed https://www.dddp.gov.gh/ 197.253.67.113 Strict-Transport-Security: max-age=63072000; includeSubDomains; Parse Error - Header can't be parsed https://197.253.67.113/ 197.253.67.113 Strict-Transport-Security: max-age=63072000; includeSubDomains; Parse Error - Header can't be parsed A Duration: 525420 milliseconds, 525.420 seconds