Commit Graph

8 Commits

Author SHA1 Message Date
cschantz 7be2f3bf93 Fix bounce detection to exclude successful deliveries
- Exclude lines with 'saved mail to' (successful deliveries)
- Exclude lines with '=>' (delivery confirmations)
- Only show actual bounce/failure messages
- Updated both counting and display sections

This fixes the bounce section showing 'saved mail to INBOX'
which are actually successful deliveries, not bounces.
2025-12-31 19:16:27 -05:00
cschantz 0d372eab79 Fix bounce and spam detection to exclude auth failures
Improved accuracy:
- Bounces now only count actual SMTP delivery failures (550-554 codes)
- Excludes SMTP/IMAP/FTP authentication failures from bounce count
- Spam rejected now only counts actually rejected emails
- Excludes emails delivered to spam folder (those are successful deliveries)
- Updated display sections to match new filtering logic

This fixes the misleading "334 bounced" count that was actually
showing authentication failures, not email delivery problems.
2025-12-31 19:13:01 -05:00
cschantz d2e5d3f940 Fix email diagnostics to search multiple log files for comprehensive results
The script now searches:
- /var/log/exim_mainlog (Exim delivery logs)
- /var/log/maillog (Dovecot auth + delivery)
- /var/log/messages (fallback)

This fixes the issue where only auth logs were found but actual
email deliveries were missed because they were in different log files.
Now properly separates delivery events from authentication events
across all log sources.
2025-12-31 19:09:10 -05:00
cschantz 1127888a66 Remove all emojis from email diagnostics for professional appearance 2025-12-31 19:04:44 -05:00
cschantz c780c8ab2e Improve email diagnostics output clarity and logic
Key improvements:
- Add Quick Summary section at top for instant status
- Always show main metrics (sent/received/delivered) even if 0
- Fix contradictory "account not found" when successful logins exist
- Better verdict logic for authentication-only scenarios
- Clearer section headers ("Mailbox Access Activity" vs delivery)
- Group problems together, only show if they exist
- Improve status messages with context

Output now shows:
1. Quick Summary - instant understanding of status
2. Email Delivery Activity - always show main counts
3. Problems section - only if issues detected
4. Mailbox Access Activity - clarify IMAP/POP3 vs email delivery
5. Account Status - use successful logins as proof account exists
6. Better verdicts for auth-only, no-activity scenarios
2025-12-31 18:55:59 -05:00
cschantz 05396b6984 Enhance email diagnostics with comprehensive tracking
Bug fixes:
- Fix integer expression errors by sanitizing grep output
- Separate IMAP/POP3 authentication from email delivery events
- Prevent login failures from being counted as email bounces

New tracking features:
- Spam rejections (SpamAssassin)
- Greylisting events
- Emails received count
- Authentication activity (successful/failed logins)
- Failed login IPs extraction
- Top 5 senders and recipients
- Email account existence check
- Mailbox size and message count
- Quota information
- Email forwarder detection

Enhanced recommendations:
- Spam rejection troubleshooting
- Greylisting explanation
- Account not found guidance
- Failed login attempt handling
2025-12-31 18:49:24 -05:00
cschantz f47a164124 Add Email Diagnostics tool - verify if email/domain is working
Features:
- Check specific email address or entire domain
- Shows if emails are working with PROOF
- Displays recent activity with timestamps highlighted
- Categorizes: delivered, bounced, rejected, deferred
- Shows last 5 examples of each type from selected time period
- Clear verdict: Working / Partially Working / Has Problems
- Extracts bounce reasons and recommendations
- Saves full report for customer evidence

Usage: Email menu → Option 1 (Email Diagnostics)
Perfect for: 'Customer says they're not receiving emails'

Example output:
 EMAIL IS WORKING PROPERLY
Evidence: 15 successful deliveries in last 24 hours
PROOF - Recent deliveries with timestamps shown below
2025-12-31 18:38:10 -05:00
cschantz 5b639a345f Add missing email modules - all 8 email menu options now functional
Created modules:
- blacklist-check.sh - Check IP blacklists (functional)
- mail-queue-inspector.sh - View mail queue (functional)
- deliverability-test.sh - Email delivery test (stub)
- smtp-connection-test.sh - SMTP connection test (stub)
- spf-dkim-dmarc-check.sh - Authentication check (stub)
- flush-mail-queue.sh - Clear mail queue (stub)
- clean-mailboxes.sh - Mailbox cleanup (stub)

Fixes: Email menu now shows all options instead of 'module not found' errors

Status: 3 functional, 4 stubs marked 'under development'
2025-12-31 18:20:28 -05:00