21
templates/404.html
Normal file
@@ -0,0 +1,21 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>HNSDoH Status</title>
|
||||
<link rel="icon" href="/favicon.png" type="image/png">
|
||||
<link rel="stylesheet" href="/assets/css/404.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="spacer"></div>
|
||||
<div class="centre">
|
||||
<h1>404 | Page not found</h1>
|
||||
<p>Sorry, the page you are looking for does not exist.</p>
|
||||
<p><a href="/">Go back to the homepage</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
5
templates/assets/bootstrap/css/bootstrap.min.css
vendored
Normal file
6
templates/assets/bootstrap/js/bootstrap.min.js
vendored
Normal file
19
templates/assets/css/404.css
Normal file
@@ -0,0 +1,19 @@
|
||||
body {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
.centre {
|
||||
text-align: center;
|
||||
margin-top: 20%;
|
||||
}
|
||||
a {
|
||||
color: #ffffff;
|
||||
}
|
||||
a:hover {
|
||||
color: #ff0000;
|
||||
}
|
||||
h1 {
|
||||
font-size: 100px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
57
templates/assets/css/Navbar-Right-Links-Dark-icons.css
Normal file
@@ -0,0 +1,57 @@
|
||||
.bs-icon {
|
||||
--bs-icon-size: .75rem;
|
||||
display: flex;
|
||||
flex-shrink: 0;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-size: var(--bs-icon-size);
|
||||
width: calc(var(--bs-icon-size) * 2);
|
||||
height: calc(var(--bs-icon-size) * 2);
|
||||
color: var(--bs-primary);
|
||||
}
|
||||
|
||||
.bs-icon-xs {
|
||||
--bs-icon-size: 1rem;
|
||||
width: calc(var(--bs-icon-size) * 1.5);
|
||||
height: calc(var(--bs-icon-size) * 1.5);
|
||||
}
|
||||
|
||||
.bs-icon-sm {
|
||||
--bs-icon-size: 1rem;
|
||||
}
|
||||
|
||||
.bs-icon-md {
|
||||
--bs-icon-size: 1.5rem;
|
||||
}
|
||||
|
||||
.bs-icon-lg {
|
||||
--bs-icon-size: 2rem;
|
||||
}
|
||||
|
||||
.bs-icon-xl {
|
||||
--bs-icon-size: 2.5rem;
|
||||
}
|
||||
|
||||
.bs-icon.bs-icon-primary {
|
||||
color: var(--bs-white);
|
||||
background: var(--bs-primary);
|
||||
}
|
||||
|
||||
.bs-icon.bs-icon-primary-light {
|
||||
color: var(--bs-primary);
|
||||
background: rgba(var(--bs-primary-rgb), .2);
|
||||
}
|
||||
|
||||
.bs-icon.bs-icon-semi-white {
|
||||
color: var(--bs-primary);
|
||||
background: rgba(255, 255, 255, .5);
|
||||
}
|
||||
|
||||
.bs-icon.bs-icon-rounded {
|
||||
border-radius: .5rem;
|
||||
}
|
||||
|
||||
.bs-icon.bs-icon-circle {
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
4
templates/assets/css/Team-images.css
Normal file
@@ -0,0 +1,4 @@
|
||||
.fit-cover {
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
39
templates/assets/css/bs-theme-overrides.css
Normal file
@@ -0,0 +1,39 @@
|
||||
[data-bs-theme=dark] {
|
||||
--bs-primary: #002459;
|
||||
--bs-primary-rgb: 0,36,89;
|
||||
--bs-primary-text-emphasis: #667C9B;
|
||||
--bs-primary-bg-subtle: #000712;
|
||||
--bs-primary-border-subtle: #001635;
|
||||
}
|
||||
|
||||
[data-bs-theme=dark] .btn-primary, .btn-primary[data-bs-theme=dark] {
|
||||
--bs-btn-color: #fff;
|
||||
--bs-btn-bg: #002459;
|
||||
--bs-btn-border-color: #002459;
|
||||
--bs-btn-hover-color: #fff;
|
||||
--bs-btn-hover-bg: #001F4C;
|
||||
--bs-btn-hover-border-color: #001D47;
|
||||
--bs-btn-focus-shadow-rgb: 217,222,230;
|
||||
--bs-btn-active-color: #fff;
|
||||
--bs-btn-active-bg: #001D47;
|
||||
--bs-btn-active-border-color: #001B43;
|
||||
--bs-btn-disabled-color: #fff;
|
||||
--bs-btn-disabled-bg: #002459;
|
||||
--bs-btn-disabled-border-color: #002459;
|
||||
}
|
||||
|
||||
[data-bs-theme=dark] .btn-outline-primary, .btn-outline-primary[data-bs-theme=dark] {
|
||||
--bs-btn-color: #002459;
|
||||
--bs-btn-border-color: #002459;
|
||||
--bs-btn-focus-shadow-rgb: 0,36,89;
|
||||
--bs-btn-hover-color: #fff;
|
||||
--bs-btn-hover-bg: #002459;
|
||||
--bs-btn-hover-border-color: #002459;
|
||||
--bs-btn-active-color: #fff;
|
||||
--bs-btn-active-bg: #002459;
|
||||
--bs-btn-active-border-color: #002459;
|
||||
--bs-btn-disabled-color: #002459;
|
||||
--bs-btn-disabled-bg: transparent;
|
||||
--bs-btn-disabled-border-color: #002459;
|
||||
}
|
||||
|
||||
BIN
templates/assets/img/HNS.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
templates/assets/img/HNSW.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
templates/assets/img/favicon.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
templates/assets/img/overview.webp
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
templates/assets/img/people/HNSCA.webp
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
templates/assets/img/people/easy-hns.jpg
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
templates/assets/img/people/ezdomains.jpg
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
templates/assets/img/people/ezdomains.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
templates/assets/img/people/nathanwoodburn.webp
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
templates/assets/img/people/profile - small.webp
Normal file
|
After Width: | Height: | Size: 12 KiB |
7
templates/assets/js/bs-init.js
Normal file
@@ -0,0 +1,7 @@
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
|
||||
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bss-tooltip]'));
|
||||
var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
|
||||
return new bootstrap.Tooltip(tooltipTriggerEl);
|
||||
})
|
||||
}, false);
|
||||
132
templates/index.html
Normal file
@@ -0,0 +1,132 @@
|
||||
<!DOCTYPE html>
|
||||
<html data-bs-theme="dark" lang="en-au">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
|
||||
<title>HNS DoH Status</title>
|
||||
<meta name="twitter:image" content="https://hnsdoh.c.woodburn.au/assets/img/HNS.png">
|
||||
<meta name="twitter:card" content="summary">
|
||||
<meta name="twitter:description" content="Access Handshake Domains with DNS over HTTPS">
|
||||
<meta property="og:title" content="HNS DoH Status">
|
||||
<meta name="description" content="Access Handshake Domains with DNS over HTTPS">
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:description" content="Access Handshake Domains with DNS over HTTPS">
|
||||
<meta name="twitter:title" content="HNS DoH Status">
|
||||
<meta property="og:image" content="https://hnsdoh.c.woodburn.au/assets/img/HNS.png">
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "http://schema.org",
|
||||
"@type": "WebSite",
|
||||
"name": "HNS DoH Status",
|
||||
"url": "https://hnsdoh.c.woodburn.au"
|
||||
}
|
||||
</script>
|
||||
<link rel="icon" type="image/png" sizes="670x700" href="assets/img/HNS.png">
|
||||
<link rel="icon" type="image/png" sizes="670x700" href="assets/img/HNSW.png" media="(prefers-color-scheme: dark)">
|
||||
<link rel="icon" type="image/png" sizes="670x700" href="assets/img/HNS.png">
|
||||
<link rel="icon" type="image/png" sizes="670x700" href="assets/img/HNSW.png" media="(prefers-color-scheme: dark)">
|
||||
<link rel="icon" type="image/png" sizes="670x700" href="assets/img/HNS.png">
|
||||
<link rel="icon" type="image/png" sizes="670x700" href="assets/img/HNS.png">
|
||||
<link rel="icon" type="image/png" sizes="670x700" href="assets/img/HNS.png">
|
||||
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="assets/css/bs-theme-overrides.css">
|
||||
<link rel="stylesheet" href="assets/css/Navbar-Right-Links-Dark-icons.css">
|
||||
<link rel="stylesheet" href="assets/css/Team-images.css">
|
||||
|
||||
<script async src="https://umami.woodburn.au/script.js"
|
||||
data-website-id="7e0ed7e4-3858-4124-a574-b57ac05aaad1"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<header>
|
||||
<nav class="navbar navbar-expand-md fixed-top bg-dark py-3" data-bs-theme="dark">
|
||||
<div class="container-fluid"><a class="navbar-brand d-flex align-items-center" href="/#"><span
|
||||
class="bs-icon-sm bs-icon-rounded bs-icon-primary d-flex justify-content-center align-items-center me-2 bs-icon"><img
|
||||
src="assets/img/HNSW.png" width="20px"></span><span>HNS DoH</span></a></div>
|
||||
</nav>
|
||||
</header>
|
||||
<section id="intro">
|
||||
<div class="text-center">
|
||||
<h1 class="text-center" style="font-size: 60px;">HNS DoH</h1>
|
||||
<div id="warnings" style="margin-top: 20px;">
|
||||
<!-- Check if warnings is empty -->
|
||||
{% if warnings %}
|
||||
<div class="alert alert-danger" role="alert">
|
||||
<h4 class="alert-heading">Warnings</h4>
|
||||
{% for warning in warnings %}
|
||||
<p>{{ warning }}</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section id="status"></section>
|
||||
<div class="text-center">
|
||||
<h1 class="text-center" style="font-size: 60px;">Nodes</h1>
|
||||
{% for node in nodes %}
|
||||
<div>
|
||||
<div>
|
||||
<h2 style="display: inline;">{{node.location}}</h2>
|
||||
<h4 style="display: inline;">({{ node.name }})</h4>
|
||||
</div>
|
||||
<div>
|
||||
<h5>Current Status</h5>
|
||||
<p>Plain DNS: {{node.plain_dns}}</p>
|
||||
<p>DNS over HTTPS: {{node.doh}}</p>
|
||||
<p>DNS over TLS: {{node.dot}}</p>
|
||||
<p>Certificate: {{node.cert.valid}} (expires {{node.cert.expires}})</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section id="setup"
|
||||
style="min-height: 400px;padding-top: 10vh;text-align: center;margin-right: 10%;margin-left: 10%;"
|
||||
data-bs-target="#navcol-5" data-bs-smooth-scroll="true">
|
||||
<h3 class="display-1">Setup</h3>
|
||||
<ul class="list-group">
|
||||
<li class="list-group-item">
|
||||
<div>
|
||||
<h5 class="display-5">DNS over HTTPS</h5>
|
||||
<p>DNS over HTTPS is supported by most browsers. To add HNSDoH to your revolvers add this URL to
|
||||
your Secure DNS setting<br><code>https://hnsdoh.com/dns-query</code></p>
|
||||
</div>
|
||||
</li>
|
||||
<li class="list-group-item">
|
||||
<div>
|
||||
<h5 class="display-5">DNS over TLS</h5>
|
||||
<p>DNS over TLS is the best option for mobile phones. Simply set Private DNS to the
|
||||
hostname <br><code>hnsdoh.com</code></p>
|
||||
</div>
|
||||
</li>
|
||||
<li class="list-group-item">
|
||||
<div>
|
||||
<h5 class="display-5">Plain DNS</h5>
|
||||
<p>As a last resort you can use any of plain DNS below (best to chose 2 IPs from different
|
||||
people)<br><br>- 194.50.5.27 (powered by Nathan.Woodburn/)<br>- 139.177.195.185 (powered by
|
||||
HNS Canada)<br>- 172.233.46.92 (powered by EZ Domains)<br>- 172.105.120.203 (powered
|
||||
by EZ Domains)<br>- 18.169.98.42 (powered by Easy HNS)<br><br>Alternative Providers (Not
|
||||
running the HNSDoH software configuration)<br><br>- 194.50.5.26 (powered by
|
||||
Nathan.Woodburn/)<br>- 194.50.5.28 (powered by Nathan.Woodburn/)<br>- 139.144.68.241
|
||||
(powered by HNS DNS)<br>- 139.144.68.242 (powered by HNS DNS)<br>- 2a01:7e01:e002:c300::
|
||||
(powered by HNS DNS)<br>- 2a01:7e01:e002:c500:: (powered by HNS DNS)</p>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<footer class="text-center bg-dark">
|
||||
<div class="container text-white py-4 py-lg-5">
|
||||
<p class="text-muted mb-0">Copyright © 2024 HNSDoH</p>
|
||||
</div>
|
||||
</footer>
|
||||
<script src="assets/bootstrap/js/bootstrap.min.js"></script>
|
||||
<script src="assets/js/bs-init.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||