diff options
| author | Bobby <[email protected]> | 2026-03-08 23:38:54 +0530 |
|---|---|---|
| committer | Bobby <[email protected]> | 2026-03-08 23:38:54 +0530 |
| commit | 94d5561e7cc39eb2909bdc36d4ef4972cd21e56d (patch) | |
| tree | 98d9792dda80f76f185ab2eb37c1de005be9ea0f /example.config.toml | |
| parent | 1136af49815be77a0aca151f3b8ec7348bf4b4c8 (diff) | |
| download | dove-94d5561e7cc39eb2909bdc36d4ef4972cd21e56d.tar.xz dove-94d5561e7cc39eb2909bdc36d4ef4972cd21e56d.zip | |
Refactor DNS and SMTP configurations; add system DNS management
- Updated DNS server address configuration to use BindAddress and DnsPort.
- Enhanced email submission to utilize BindAddress for SMTP server address.
- Improved error messages for unknown recipient domains.
- Introduced a new OrderedMap structure for route management.
- Added system DNS management functions for Linux, Darwin, and Windows platforms.
- Created new dashboard services for DNS configuration and overview.
- Updated UI to include Proxy Rules section and improved descriptions.
- Added new utility functions for handling DNS configurations.
Diffstat (limited to 'example.config.toml')
| -rw-r--r-- | example.config.toml | 94 |
1 files changed, 13 insertions, 81 deletions
diff --git a/example.config.toml b/example.config.toml index 9ee3b6b..38b0b2a 100644 --- a/example.config.toml +++ b/example.config.toml @@ -2,30 +2,25 @@ # Dove — Local Infrastructure Service for Peaceful Development Experience # ============================================================================= # -# This is the default configuration file for Dove. It controls how each -# service binds to the network and behaves at startup. Settings that can be -# managed at runtime (queue policies, health check intervals, cron schedules, -# KV limits, etc.) are configured through the dashboard and stored in the -# database — they do not appear here. +# This is the default configuration file for Dove. It controls operational +# settings for each service. All services bind to 127.0.0.1 on standard +# ports (HTTP 80, DNS 53, SMTP 25/465/587, IMAP 143/993, POP3 110/995) +# and Dove must run as root to bind to these privileged ports. +# +# Settings that can be managed at runtime (queue policies, health check +# intervals, cron schedules, KV limits, etc.) are configured through the +# dashboard and stored in the database — they do not appear here. # # Copy this file to config.toml and adjust values as needed. # All values shown below are defaults and can be omitted if unchanged. # Commented-out values are optional and disabled by default. # ============================================================================= -# HTTP Server +# HTTP Dashboard # ============================================================================= # The web dashboard and REST API for managing your local infrastructure. -# This is the primary interface for interacting with Dove. [http] -# Network interface to bind the HTTP server to. -# Use "0.0.0.0" to listen on all interfaces, or "127.0.0.1" for local only. -host = "0.0.0.0" - -# Port for the web dashboard and API. -port = 8080 - # Enable verbose debug logging for HTTP requests and responses. debug = false @@ -36,49 +31,13 @@ debug = false # password = "" # ============================================================================= -# DNS Server -# ============================================================================= -# Resolves custom TLDs (.dove, .local, .test, .nest) and all registered -# domains. A records with port mappings act as a built-in reverse proxy, -# routing domain requests to local services automatically. - -[dns] -# Network interface to bind the DNS server to. -# Typically bound to localhost since it serves local resolution only. -host = "127.0.0.1" - -# Port for DNS queries over UDP. -# The standard DNS port is 53, but a non-privileged port is used by default -# to avoid requiring root permissions. -port = 5053 - -# Default time-to-live in seconds for DNS records when not explicitly set. -default_ttl = 300 - -# ============================================================================= # SMTP Server # ============================================================================= # Receives incoming emails for mailboxes registered under your domains. -# Emails sent to non-existent mailboxes on existing domains will bounce. -# Emails sent to non-existent domains are silently dropped. +# Listens on port 25 (plain), 465 (implicit TLS), and 587 (submission). [smtp] -# Network interface to bind the SMTP server to. -host = "0.0.0.0" - -# Port for plain SMTP connections. -port = 5025 - -# Port for implicit TLS (SMTPS) connections. -# Accepts encrypted connections when TLS is enabled, plain connections otherwise. -smtps_port = 5465 - -# Port for STARTTLS upgrade connections. -# Offers STARTTLS upgrade when TLS is enabled, accepts plain connections otherwise. -starttls_port = 5587 - # The domain name announced in SMTP EHLO/HELO greetings. -# This identifies the mail server to connecting clients. domain = "localhost" # Maximum allowed email size in bytes. Default is 25 MB. @@ -91,7 +50,6 @@ read_timeout = 30 write_timeout = 30 # Require SMTP authentication before accepting messages. -# When enabled, clients must authenticate with the credentials below. auth_required = false # Credentials for SMTP authentication. @@ -113,18 +71,9 @@ tls_enabled = false # ============================================================================= # Provides IMAP access for external mail clients (Thunderbird, Apple Mail, # etc.) to retrieve emails stored in Dove mailboxes. +# Listens on port 143 (plain) and 993 (implicit TLS). [imap] -# Network interface to bind the IMAP server to. -host = "0.0.0.0" - -# Port for plain IMAP connections. -port = 5143 - -# Port for implicit TLS (IMAPS) connections. -# Only active when tls_enabled is set to true. -imaps_port = 5993 - # Require IMAP authentication before granting mailbox access. auth_required = false @@ -134,7 +83,6 @@ auth_required = false # password = "" # Enable TLS support for encrypted IMAPS connections. -# Requires valid certificate and key paths below. tls_enabled = false # Paths to the TLS certificate and private key files. @@ -147,18 +95,9 @@ tls_enabled = false # ============================================================================= # Provides POP3 access for external mail clients to download and remove # emails from Dove mailboxes. +# Listens on port 110 (plain) and 995 (implicit TLS). [pop3] -# Network interface to bind the POP3 server to. -host = "0.0.0.0" - -# Port for plain POP3 connections. -port = 5110 - -# Port for implicit TLS (POP3S) connections. -# Only active when tls_enabled is set to true. -pop3s_port = 5995 - # Require POP3 authentication before granting mailbox access. auth_required = false @@ -168,7 +107,6 @@ auth_required = false # password = "" # Enable TLS support for encrypted POP3S connections. -# Requires valid certificate and key paths below. tls_enabled = false # Paths to the TLS certificate and private key files. @@ -180,15 +118,9 @@ tls_enabled = false # S3-Compatible Object Storage # ============================================================================= # Filesystem-backed object storage with full S3 API compatibility. -# Works with aws-sdk, boto3, minio-go, and any S3-compatible client. +# Listens on port 9000. [storage] -# Network interface to bind the S3 API server to. -host = "0.0.0.0" - -# Port for S3 API requests. -port = 5900 - # Directory where object data is stored on disk. # Relative paths are resolved from Dove's data directory. data_dir = "storage" |
