• 2 Posts
  • 28 Comments
Joined 11 months ago
cake
Cake day: December 17th, 2023

help-circle














  • Some surface-level info while I’m waiting for my kids to finish the evening ritual: No need for an extra IP or VPS. You can host them all on the same IP and machine, provided there aren’t any conflicting port assignments.

    In the DNS server, you can enter the various subdomains as CNAME pointing to the A record. The server-software is configured with which hostname it should operate as (For example, HTTP/1.1 has a Host-specification in the initial request, so that one server can host multiple domains on the same IP)

    It should be noted that mail servers are indicated by an MX-record. And mailservers should also have a TXT record (SPF record) as part of spam prevention - some SMTP servers query this to ensure that your e-mail actually comes from you and not from someone spoofing the domain.

    I used to have a zone file that did roughly what you’re trying to do, bit sadly I don’t have it anymore. But as you have DNS up and running, I’m sure you’ll be able to figure out the rest through checking some examples.

    I half-baked an example zone file for you. I haven’t tested it, though. It assumes the domain of blargh.com being hosted from an IP of 123.123.123.123:

    $TTL 86400
    @    IN    SOA   ns1.blargh.com. admin.blargh.com. (
                    2024102102 ; Serial (incremented)
                    3600       ; Refresh
                    1800       ; Retry
                    1209600    ; Expire
                    86400      ; Minimum TTL
    )
    
    ; Name servers
    @    IN    NS    ns1.blargh.com.
    @    IN    NS    ns2.blargh.com.
    
    ; A Records
    @            IN    A      123.123.123.123
    ns1          IN    A      123.123.123.123
    ns2          IN    A      123.123.123.123
    
    ; CNAME Records
    mail         IN    CNAME  blargh.com.
    mastodon     IN    CNAME  blargh.com.
    matrix       IN    CNAME  blargh.com.
    
    ; MX Records
    @            IN    MX     10 mail.blargh.com.
    
    ; TXT/SPF Record
    @            IN    TXT    "v=spf1 mx ~all"
    

    Oh, and some tips:

    • Do not enable SMTP-relay on your SMTP server. This opens you up to abuse, and you (probably) don’t need it.
    • Your DNS server should only talk to strangers about queries about your domain. Otherwise you might be part of a DNS amplification attack.
    • I have a personal preference for imap.blargh.com or pop3.blargh.com, combined with smtp.blargh.com, as it makes it easier to deduct the protocol, if you’re not supporting imap and pop3. I don’t think anyone else but me care, though.