Compare commits
No commits in common. "36ca29853b4061a75745da914729c7aa4398bdc7" and "0d41b2b8131e91905c7f93b5051a1172fb099ab6" have entirely different histories.
36ca29853b
...
0d41b2b813
@ -1,5 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" ?>
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
|
||||||
<rect stroke="black" stroke-width="6" fill="#EEE" x="6" y="20" width="88" height="60" />
|
|
||||||
<polyline points="6,20 50,50 94,20" stroke-width="6" stroke="black" fill="none" />
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 290 B |
@ -17,20 +17,10 @@ export class DkimRecord extends TagListRecord {
|
|||||||
.required()
|
.required()
|
||||||
.pos(1),
|
.pos(1),
|
||||||
|
|
||||||
new EnumTag("k", ["rsa", "ed25519"])
|
|
||||||
.label("Key type")
|
|
||||||
.desc("")
|
|
||||||
.options(["RSA", "Ed25519"])
|
|
||||||
.default("rsa")
|
|
||||||
.pos(1),
|
|
||||||
|
|
||||||
new FlagsTag("t", ["y", "s"])
|
new FlagsTag("t", ["y", "s"])
|
||||||
.label("Flags")
|
.label("Flags")
|
||||||
.options(["Test mode", "Strict mode (Recommended)"])
|
.desc("Optional extra options that can be enabled")
|
||||||
.optionDesc([
|
.options(["Test mode", "Require identical domain in i= and d= tags of DKIM signature (Recommended)"])
|
||||||
"Indicates the server is currently testing DKIM support",
|
|
||||||
"Require identical domain in i= and d= tags of DKIM signature (Recommended unless using subdomains)",
|
|
||||||
])
|
|
||||||
.default("")
|
.default("")
|
||||||
.pos(1),
|
.pos(1),
|
||||||
|
|
||||||
@ -48,6 +38,11 @@ export class DkimRecord extends TagListRecord {
|
|||||||
.default("")
|
.default("")
|
||||||
.pos(1),
|
.pos(1),
|
||||||
|
|
||||||
|
new EnumTag("k", ["rsa"])
|
||||||
|
.disabled()
|
||||||
|
.default("rsa")
|
||||||
|
.pos(1),
|
||||||
|
|
||||||
new EnumTag("s", ["*", "email"])
|
new EnumTag("s", ["*", "email"])
|
||||||
.disabled()
|
.disabled()
|
||||||
.default("*")
|
.default("*")
|
||||||
|
|||||||
@ -50,7 +50,7 @@ export class SpfRecord {
|
|||||||
.label("Include")
|
.label("Include")
|
||||||
.desc("Check the SPF record of another domain. If it passes, return with the selected result")
|
.desc("Check the SPF record of another domain. If it passes, return with the selected result")
|
||||||
.multiple()
|
.multiple()
|
||||||
.pos(2),
|
.pos(1),
|
||||||
|
|
||||||
new DomainMechanism("exists")
|
new DomainMechanism("exists")
|
||||||
.label("Exists")
|
.label("Exists")
|
||||||
|
|||||||
@ -11,19 +11,11 @@ export class FlagsTag extends Tag {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
optionDesc(descriptions) {
|
|
||||||
this.flagDescriptions = descriptions;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
getInputHtml() {
|
getInputHtml() {
|
||||||
return `
|
return `
|
||||||
<div style="display: flex; flex-direction: column; gap: 0.5rem">` +
|
<div style="display: flex; flex-direction: column; gap: 0.5rem">` +
|
||||||
this.flags.map((flag, i) => `
|
this.flags.map((flag, i) => `
|
||||||
<label>
|
<label><input id="${this.id + "-" + flag}" type="checkbox"> ${this.flagLabels[i]}</label>
|
||||||
<input id="${this.id + "-" + flag}" type="checkbox"> ${this.flagLabels[i]}<br>
|
|
||||||
<span class="checkbox-desc">${this.flagDescriptions[i]}</span>
|
|
||||||
</label>
|
|
||||||
`).join("") +
|
`).join("") +
|
||||||
"</div>";
|
"</div>";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,12 +3,12 @@ import { DmarcRecord } from "../records/DmarcRecord.js";
|
|||||||
import { SpfRecord } from "../records/SpfRecord.js";
|
import { SpfRecord } from "../records/SpfRecord.js";
|
||||||
|
|
||||||
const records = {
|
const records = {
|
||||||
"dkim-creator": DkimRecord,
|
"/dkim-creator": DkimRecord,
|
||||||
"dmarc-creator": DmarcRecord,
|
"/dmarc-creator": DmarcRecord,
|
||||||
"spf-creator": SpfRecord,
|
"/spf-creator": SpfRecord,
|
||||||
};
|
};
|
||||||
|
|
||||||
const Record = records[location.pathname.split("/")[1]];
|
const Record = records[location.pathname];
|
||||||
|
|
||||||
const inputs = [];
|
const inputs = [];
|
||||||
|
|
||||||
|
|||||||
@ -2,11 +2,11 @@ import { DmarcRecord } from "../records/DmarcRecord.js";
|
|||||||
import { SpfRecord } from "../records/SpfRecord.js";
|
import { SpfRecord } from "../records/SpfRecord.js";
|
||||||
|
|
||||||
const records = {
|
const records = {
|
||||||
"dmarc-validator": DmarcRecord,
|
"/dmarc-validator": DmarcRecord,
|
||||||
"spf-validator": SpfRecord,
|
"/spf-validator": SpfRecord,
|
||||||
};
|
};
|
||||||
|
|
||||||
const Record = records[location.pathname.split("/")[1]];
|
const Record = records[location.pathname];
|
||||||
|
|
||||||
document.getElementById("record").oninput = event => validate(event.target.value);
|
document.getElementById("record").oninput = event => validate(event.target.value);
|
||||||
|
|
||||||
|
|||||||
@ -27,16 +27,6 @@ body {
|
|||||||
padding: 1rem;
|
padding: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
font-size: 0.8rem;
|
|
||||||
text-align: center;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
footer a {
|
|
||||||
color: black;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1, h2 {
|
h1, h2 {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
@ -77,7 +67,7 @@ main {
|
|||||||
background-color: white;
|
background-color: white;
|
||||||
border: 1px solid #BDBDBD;
|
border: 1px solid #BDBDBD;
|
||||||
padding: 1rem 2rem;
|
padding: 1rem 2rem;
|
||||||
margin: 1rem auto;
|
margin: 2rem auto;
|
||||||
color: #424242;
|
color: #424242;
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
}
|
}
|
||||||
@ -176,11 +166,6 @@ summary:hover {
|
|||||||
color: black;
|
color: black;
|
||||||
}
|
}
|
||||||
|
|
||||||
.checkbox-desc {
|
|
||||||
color: #9E9E9E;
|
|
||||||
margin-left: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.field-container {
|
.field-container {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@ -206,25 +191,3 @@ summary:hover {
|
|||||||
.text-button:hover {
|
.text-button:hover {
|
||||||
color: black;
|
color: black;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tool-button {
|
|
||||||
display: inline-block;
|
|
||||||
margin: 0.25rem 1rem 0.25rem 0;
|
|
||||||
background-color: #F9F9F9;
|
|
||||||
padding: 0.75rem 1.5rem;
|
|
||||||
border: 1px solid #BDBDBD;
|
|
||||||
color: black;
|
|
||||||
text-decoration: none;
|
|
||||||
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
|
|
||||||
font-weight: bold;
|
|
||||||
width: 170px;
|
|
||||||
text-align: center;
|
|
||||||
position: relative;
|
|
||||||
bottom: 0;
|
|
||||||
transition: box-shadow, bottom 200ms;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tool-button:hover {
|
|
||||||
bottom: 3px;
|
|
||||||
box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
|
|
||||||
}
|
|
||||||
|
|||||||
@ -4,7 +4,6 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>DKIM Record Creator - Generate DKIM DNS Records</title>
|
<title>DKIM Record Creator - Generate DKIM DNS Records</title>
|
||||||
<link rel="canonical" href="https://email-dns.tools/dkim-creator/">
|
|
||||||
<link rel="stylesheet" href="/assets/styles/main.css">
|
<link rel="stylesheet" href="/assets/styles/main.css">
|
||||||
<script type="module" src="/assets/scripts/ui/creator.js"></script>
|
<script type="module" src="/assets/scripts/ui/creator.js"></script>
|
||||||
</head>
|
</head>
|
||||||
@ -54,9 +53,5 @@
|
|||||||
<a href="/spf-creator">SPF Creator Tool</a>
|
<a href="/spf-creator">SPF Creator Tool</a>
|
||||||
</center>
|
</center>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer>
|
|
||||||
<a href="/">Home</a>
|
|
||||||
</footer>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@ -4,7 +4,6 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>DMARC Record Creator - Generate DMARC DNS Records</title>
|
<title>DMARC Record Creator - Generate DMARC DNS Records</title>
|
||||||
<link rel="canonical" href="https://email-dns.tools/dmarc-creator/">
|
|
||||||
<link rel="stylesheet" href="/assets/styles/main.css">
|
<link rel="stylesheet" href="/assets/styles/main.css">
|
||||||
<script type="module" src="/assets/scripts/ui/creator.js"></script>
|
<script type="module" src="/assets/scripts/ui/creator.js"></script>
|
||||||
</head>
|
</head>
|
||||||
@ -42,13 +41,9 @@
|
|||||||
<center>
|
<center>
|
||||||
<h3>More tools:</h3>
|
<h3>More tools:</h3>
|
||||||
<a href="/dmarc-validator">DMARC Validator Tool</a> •
|
<a href="/dmarc-validator">DMARC Validator Tool</a> •
|
||||||
<a href="/dkim-creator">DKIM Creator Tool</a> •
|
<a href="/DKIM-creator">DKIM Creator Tool</a> •
|
||||||
<a href="/spf-creator">SPF Creator Tool</a>
|
<a href="/spf-creator">SPF Creator Tool</a>
|
||||||
</center>
|
</center>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer>
|
|
||||||
<a href="/">Home</a>
|
|
||||||
</footer>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@ -4,7 +4,6 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>DMARC Record Validator - Validate DMARC DNS Records</title>
|
<title>DMARC Record Validator - Validate DMARC DNS Records</title>
|
||||||
<link rel="canonical" href="https://email-dns.tools/dmarc-validator/">
|
|
||||||
<link rel="stylesheet" href="/assets/styles/main.css">
|
<link rel="stylesheet" href="/assets/styles/main.css">
|
||||||
<script type="module" src="/assets/scripts/ui/validator.js"></script>
|
<script type="module" src="/assets/scripts/ui/validator.js"></script>
|
||||||
</head>
|
</head>
|
||||||
@ -79,9 +78,5 @@
|
|||||||
<a href="/spf-validator">SPF Validator Tool</a>
|
<a href="/spf-validator">SPF Validator Tool</a>
|
||||||
</center>
|
</center>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer>
|
|
||||||
<a href="/">Home</a>
|
|
||||||
</footer>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
BIN
favicon.ico
BIN
favicon.ico
Binary file not shown.
|
Before Width: | Height: | Size: 17 KiB |
47
index.html
47
index.html
@ -1,47 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>Email DNS Tools</title>
|
|
||||||
<link rel="canonical" href="https://email-dns.tools/">
|
|
||||||
<link rel="stylesheet" href="/assets/styles/main.css">
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h1>Email DNS Tools</h1>
|
|
||||||
|
|
||||||
<main>
|
|
||||||
<p>
|
|
||||||
This site provides various tools for managing email DNS records, such as for DKIM, DMARC and SPF.
|
|
||||||
If you have feedback, please send an email
|
|
||||||
<a href="mailto:?to=Reimar%20<%6D%61%69%6C%40%72%65%69%6D%2E%61%72>&subject=Email%20DNS%20Tools%20Feedback">here</a>.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h2>Tools</h2>
|
|
||||||
|
|
||||||
<h3>DKIM</h3>
|
|
||||||
|
|
||||||
<a class="tool-button" href="/dkim-creator">DKIM Record Creator</a>
|
|
||||||
|
|
||||||
<h3>DMARC</h3>
|
|
||||||
|
|
||||||
<a class="tool-button" href="/dmarc-creator">DKIM Record Creator</a>
|
|
||||||
|
|
||||||
<a class="tool-button" href="/dmarc-validator">DMARC Record Validator</a>
|
|
||||||
|
|
||||||
<h3>SPF</h3>
|
|
||||||
|
|
||||||
<a class="tool-button" href="/spf-creator">SPF Record Creator</a>
|
|
||||||
|
|
||||||
<a class="tool-button" href="/spf-validator">SPF Record Validator</a>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
<h3>Articles</h3>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><a href="/spf-macro-guide">SPF Macro Guide</a></li>
|
|
||||||
</ul>
|
|
||||||
</main>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
https://email-dns.tools/
|
|
||||||
https://email-dns.tools/dkim-creator/
|
|
||||||
https://email-dns.tools/dmarc-creator/
|
|
||||||
https://email-dns.tools/dmarc-validator/
|
|
||||||
https://email-dns.tools/spf-creator/
|
|
||||||
https://email-dns.tools/spf-macro-guide/
|
|
||||||
https://email-dns.tools/spf-validator/
|
|
||||||
|
|
||||||
@ -4,7 +4,6 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>SPF Record Creator - Generate SPF DNS Records</title>
|
<title>SPF Record Creator - Generate SPF DNS Records</title>
|
||||||
<link rel="canonical" href="https://email-dns.tools/spf-creator/">
|
|
||||||
<link rel="stylesheet" href="/assets/styles/main.css">
|
<link rel="stylesheet" href="/assets/styles/main.css">
|
||||||
<script type="module" src="/assets/scripts/ui/creator.js"></script>
|
<script type="module" src="/assets/scripts/ui/creator.js"></script>
|
||||||
</head>
|
</head>
|
||||||
@ -64,9 +63,5 @@
|
|||||||
<a href="/dmarc-creator">DMARC Creator Tool</a>
|
<a href="/dmarc-creator">DMARC Creator Tool</a>
|
||||||
</center>
|
</center>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer>
|
|
||||||
<a href="/">Home</a>
|
|
||||||
</footer>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@ -4,7 +4,6 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>SPF Macro Guide - Explanation of all SPF macros with examples</title>
|
<title>SPF Macro Guide - Explanation of all SPF macros with examples</title>
|
||||||
<link rel="canonical" href="https://email-dns.tools/spf-macro-guide/">
|
|
||||||
<link rel="stylesheet" href="/assets/styles/main.css">
|
<link rel="stylesheet" href="/assets/styles/main.css">
|
||||||
<script type="module" src="/assets/scripts/ui/validator.js"></script>
|
<script type="module" src="/assets/scripts/ui/validator.js"></script>
|
||||||
</head>
|
</head>
|
||||||
@ -150,9 +149,5 @@
|
|||||||
<a href="/spf-creator">SPF Creator Tool</a>
|
<a href="/spf-creator">SPF Creator Tool</a>
|
||||||
</center>
|
</center>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer>
|
|
||||||
<a href="/">Home</a>
|
|
||||||
</footer>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@ -4,7 +4,6 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>SPF Record Validator - Validate SPF DNS Records</title>
|
<title>SPF Record Validator - Validate SPF DNS Records</title>
|
||||||
<link rel="canonical" href="https://email-dns.tools/spf-validator/">
|
|
||||||
<link rel="stylesheet" href="/assets/styles/main.css">
|
<link rel="stylesheet" href="/assets/styles/main.css">
|
||||||
<script type="module" src="/assets/scripts/ui/validator.js"></script>
|
<script type="module" src="/assets/scripts/ui/validator.js"></script>
|
||||||
</head>
|
</head>
|
||||||
@ -70,9 +69,5 @@
|
|||||||
<a href="/dmarc-validator">DMARC Validator Tool</a>
|
<a href="/dmarc-validator">DMARC Validator Tool</a>
|
||||||
</center>
|
</center>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer>
|
|
||||||
<a href="/">Home</a>
|
|
||||||
</footer>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user