Skip to content

feat(smtp): add SMTP health check monitor#250

Open
czimnick wants to merge 2 commits into0xfurai:mainfrom
czimnick:feature/smtp-healthcheck
Open

feat(smtp): add SMTP health check monitor#250
czimnick wants to merge 2 commits into0xfurai:mainfrom
czimnick:feature/smtp-healthcheck

Conversation

@czimnick
Copy link

@czimnick czimnick commented Jan 7, 2026

  • Add SMTP executor with support for:

    • Plain SMTP connections (port 25)
    • STARTTLS encryption (port 587)
    • Direct TLS/SMTPS encryption (port 465)
    • PLAIN authentication
    • MAIL FROM validation
    • Open relay detection
    • TLS certificate expiry monitoring
  • Add React frontend component for SMTP monitor configuration

    • Port presets for common SMTP configurations
    • TLS mode selection (None, STARTTLS, Direct TLS)
    • Authentication fields with show/hide password
    • Open relay testing options
    • Certificate expiry monitoring toggle
  • Add Postfix-based test infrastructure:

    • Docker container with SMTP, STARTTLS, and SMTPS ports
    • SASL authentication support (testuser/testpass)
    • Self-signed certificates for TLS testing
    • Open relay protection for security testing
  • Add comprehensive test suite:

    • Unit tests with mock SMTP servers
    • Integration tests against Postfix container
    • Error case coverage (auth failure, TLS failure, etc.)
    • Conditional integration tests via POSTFIX_TESTS=1
  • Add documentation:

    • README.md with usage examples
    • QUICKSTART.md for rapid setup
    • test-smtp.sh utility script
  • Add i18n translations for all supported languages

- Add SMTP executor with support for:
  - Plain SMTP connections (port 25)
  - STARTTLS encryption (port 587)
  - Direct TLS/SMTPS encryption (port 465)
  - PLAIN authentication
  - MAIL FROM validation
  - Open relay detection
  - TLS certificate expiry monitoring

- Add React frontend component for SMTP monitor configuration
  - Port presets for common SMTP configurations
  - TLS mode selection (None, STARTTLS, Direct TLS)
  - Authentication fields with show/hide password
  - Open relay testing options
  - Certificate expiry monitoring toggle

- Add Postfix-based test infrastructure:
  - Docker container with SMTP, STARTTLS, and SMTPS ports
  - SASL authentication support (testuser/testpass)
  - Self-signed certificates for TLS testing
  - Open relay protection for security testing

- Add comprehensive test suite:
  - Unit tests with mock SMTP servers
  - Integration tests against Postfix container
  - Error case coverage (auth failure, TLS failure, etc.)
  - Conditional integration tests via POSTFIX_TESTS=1

- Add documentation:
  - README.md with usage examples
  - QUICKSTART.md for rapid setup
  - test-smtp.sh utility script

- Add i18n translations for all supported languages
@netlify
Copy link

netlify bot commented Jan 7, 2026

Deploy Preview for peekaping ready!

Name Link
🔨 Latest commit b7274f0
🔍 Latest deploy log https://app.netlify.com/projects/peekaping/deploys/695e3a598edf7300083399a6
😎 Deploy Preview https://deploy-preview-250--peekaping.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link

netlify bot commented Jan 7, 2026

Deploy Preview for docspeekaping ready!

Name Link
🔨 Latest commit b7274f0
🔍 Latest deploy log https://app.netlify.com/projects/docspeekaping/deploys/695e3a59ca57e50008deb394
😎 Deploy Preview https://deploy-preview-250--docspeekaping.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@czimnick czimnick marked this pull request as ready for review January 10, 2026 23:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments