Your NS records are wrong. And, also you’ll need to make glue records at your registrar to point to the right name servers, if you want to host your own DNS. But, really, if you’d spend a couple of hours learning the basics of DNS all of this would stop being a problem. You only need a handful of records, but you keep leaving some out or setting them up wrong. Either letting Virtualmin manage them, or just getting them right in the Digital Ocean name servers would solve your problems…but, either one requires a little understanding on your part.
Your current glue records:
$ whois automoneymakingbot.com |grep 'Name Server'
Name Server: ns1.digitalocean.com
Name Server: ns2.digitalocean.com
Name Server: ns3.digitalocean.com
And, the NS records you’ve created conflict with those glue records, which could, theoretically delegate (but that’d lead to an extra step on every lookup, making your services slower by a tiny amount) to your Virtualmin server. But, it’s only theoretical because right now you’re not delegating, you just have bogus records that can’t work.
NS records are like MX or CNAME records. They should point to a name, not an IP.
An NS record looks like this:
virtualmin.com. 38400 IN NS ns1.virtualmin.com.
I don’t know for sure how that’d map to that UI you’re working with, but I would guess “Hostname” field should have your domain name (not the name server name!), and the “Value” should be the name server name (not an IP). But, right now, it can’t possibly be right, even if I’m misinterpreting the meaning of the UI.
I recommend you just get your records right at Digital Ocean. Running your own DNS servers might be a bit challenging for you at this point (though if you have a lot of domains, learning enough to manage your own DNS servers could save you some time, since setting up a bunch of records manually can be very tedious and error prone).
I was checking his server earlier and a few of the main problems I found was the FQDN (just a domain without any hostname), the postfix configuration (sasl wasn’t configured correctly) and the nameservers as @Joe mentioned.
Managed to somehow make the SMTP work but without any proper encryption (tls/starttls) though. I’m not completely sure about this but I have a feeling the encryption issue is mainly because of the FQDN and the nameservers setup.
All of my domains’ DNS are handled by Cloudflare. Can be a pain when I have to edit dns records in multiple domains during server migrations and such but I personally prefer that over hosting my own dns server(s) anyday *shrugs*