# nullhex-instructions-4.md -rw-r--r-- 2.6 KiB View raw

#How to use nullhex

#Get a DNS record

we do not support anything besides custom domains, because we want our users to have authority over their email routing, and because custom domains are cool af.

I recommend using njal.la for domain purchasing. But use whatever you like!

for the sake of example, lets pretend we have purchased "garbage.gov"

#Set up all of them pesky records

Here's the BIND representation of what you need to do. The exact steps will differ between DNS providers.

 garbage.gov. 3000 IN MX 10 smtp-in-1.nullhex.com.
 garbage.gov. 3000 IN MX 20 smtp-in-2.nullhex.com.
 garbage.gov. 3000 IN TXT "v=spf1 a mx ~all"
 key1._domainkey.garbage.gov. 3000 IN CNAME key1.nullhex.com.
 _dmarc.garbage.gov. 3000 IN TXT "v=DMARC1; p=quarantine;"
 autoconfig.garbage.gov. 3000 IN CNAME autoconfig.nullhex.com.
 _autodiscover._tcp.garbage.gov. 3000 IN SRV 0 1 443 autodiscover.nullhex.com.
 _submissions._tcp.garbage.gov. 3000 IN SRV 0 1 465 smtp.nullhex.com.
 _imaps._tcp.garbage.gov. 3000 IN SRV 0 1 993 imap.nullhex.com.

#Test your records

use our testing script to check whether things are kosher:

#!/bin/sh

if [ -z "$1" ]; then
  echo "error: domain missing (nullhex.com)"
  exit 1
fi

domain="$1"
errors=""

dig +short MX "$domain" | grep -q 'smtp-in-1.nullhex.com' || errors="smtp-in-1.nullhex.com record not found" 
dig +short MX "$domain" | grep -q 'smtp-in-2.nullhex.com' || errors="$errors\nsmtp-in-2.nullhex.com record not found"
dig +short TXT "$domain" | grep -q '^"v=spf1 a mx ~all"$' || errors="$errors\nspf record not found"
dig +short CNAME "key1._domainkey.$domain" | grep -q 'key1.nullhex.com' || errors="$errors\nkey1._domainkey.$domain record not found"
dig +short TXT "_dmarc.$domain" | grep -q '^"v=DMARC1; p=quarantine;"$' || errors="$errors\ndmarc TXT record is missing"
dig +short SRV "_autodiscover._tcp.$domain" | grep -q '443 autodiscover.nullhex.com.' || errors="$errors\nautodiscover SRV record is missing"
dig +short SRV "_imaps._tcp.$domain" | grep -q '993 imap.nullhex.com.' || errors="$errors\nimap SRV record is missing"
dig +short SRV "_submissions._tcp.$domain" | grep -q '465 smtp.nullhex.com.' || errors="$errors\nsmtp SRV record is missing"
dig +short CNAME "autoconfig.$domain" | grep -q 'autoconfig.nullhex.com.' || errors="$errors\nautoconfig CNAME record is missing"

if [ ! -z "$errors" ]; then
 echo "$errors"
 exit 1
else
 echo "success! u are redy"
fi 

#Set up an account

Email ops@cyberia.club and tell us:

#Login

Login at https://mail.nullhex.com!