Skip to content

Runbook: Mail Issues

Login Failures

# Verify account exists
curl -u admin:PASSWORD http://127.0.0.1:8080/api/principal/{email}

# Check roles — must have "user" role
# Fix:
curl -X PATCH -u admin:PASSWORD \
  -H "Content-Type: application/json" \
  -d '{"roles": ["user"]}' \
  http://127.0.0.1:8080/api/principal/{email}

Delivery Issues

# Check logs
journalctl -u stalwart-mail --since "1 hour ago"

# Check DNS records (MX, SPF, DKIM, DMARC)
dig MX kedevo.com
dig TXT kedevo.com

# Test SMTP
openssl s_client -connect post.kedevo.com:465

DKIM

Keys use format rsa-{domain} in Stalwart config.toml. Ensure DNS TXT record matches the public key.