Mxcheck
mxcheck is an info and security scanner for e-mail servers.
Install / Use
/learn @steffenfritz/MxcheckREADME

mxcheck is an info scanner for e-mail servers.
It checks
- DNS records: A, MX, PTR, SPF, MTA-STS, DKIM, DMARC (fully parsed), TLSRPT, BIMI
- AS Number and AS Country
- the support of StartTLS and the certificate
- TLS certificate details on port 465: expiry date, Subject CN, Issuer CN, SANs
- open ports: 25, 465, 587
- if the service is listed by blacklists
- if it leaks information by server string and VRFY command
- if the e-mail server is vulnerable to SMTPSmuggling
- and if the server is an open relay
You can set mailFrom, mailTo, the DNS server, DKIM selector and output a report in tsv format.
-b, --blacklist Check if the service is on blacklists
-d, --dnsserver string The dns server to be requested (default "8.8.8.8")
-g, --smuggle Scan for SMTPSmuggling vulnerability
-p, --disable-port-scan Disable SMTP port scan
-f, --mailfrom string Set the mailFrom address (default "info@foo.wtf")
-t, --mailto string Set the mailTo address (default "info@baz.wtf")
-n, --no-prompt Answer yes to all questions
-s, --service string The service host to check (mandatory flag)
-S, --dkim-selector The DKIM selector. If set a dkim check is performed on the provided service domain
-v, --version Version and license
-u, --updatecheck Check if a new version of mxcheck is available
-w, --write-tsv Write tsv formated report to file
Version
v1.8.0
Installation
go install github.com/steffenfritz/mxcheck@v1.8.0
or
download a pre-compiled binary.
or
use Kali Linux repositories
Usage Example
./mxcheck -s 2600.com
./mxcheck -s 2600.com -v
./mxcheck -s 2600.com -d 8.8.8.8
./mxcheck -s 2600.com -n -f info@baz.com -t boss@foo.org -w -S default
./mxcheck -s 2600.com -n -f info@baz.com -t boss@foo.org -w -S default -b -g
Check for authentication
There is no check whether the server needs authentication. However, you can do two runs:
The first one uses a from and to address outside the mail server's scope, e.g.:
./mxcheck -s example.com -f info@baz.com -t boss@foo.org
The second one uses a from and a to address from the mail server's scope, e.g.:
./mxcheck -s example.com -f info@example.com -t boss@example.com
If the first one returns Server is not an open relay and the second one returns Server is probably an open relay the server is not an open relay, but you can send mails from local to local addresses without authentication.
Documentation and contact
mxcheck has a man page :)
Furthermore, you can find a documentation and contact information here: https://mxcheck.fritz.wtf
The logo was created by Alex/Lignum5. Thanks, mate :)
Related Skills
healthcheck
341.0kHost security hardening and risk-tolerance configuration for OpenClaw deployments
node-connect
341.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
prose
341.0kOpenProse VM skill pack. Activate on any `prose` command, .prose files, or OpenProse mentions; orchestrates multi-agent workflows.
frontend-design
84.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
