mirror of
https://github.com/stalwartlabs/mail-server.git
synced 2025-02-23 15:33:03 +08:00
203 lines
3.6 KiB
TOML
203 lines
3.6 KiB
TOML
[server]
|
|
hostname = "test.example.org"
|
|
|
|
[server.listener.jmap]
|
|
bind = ["127.0.0.1:9990"]
|
|
url = "https://127.0.0.1:9990"
|
|
protocol = "jmap"
|
|
max-connections = 8192
|
|
|
|
[server.listener.imap]
|
|
bind = ["127.0.0.1:9991"]
|
|
protocol = "imap"
|
|
max-connections = 8192
|
|
|
|
[server.listener.imaptls]
|
|
bind = ["127.0.0.1:9992"]
|
|
protocol = "imap"
|
|
max-connections = 8192
|
|
tls.implicit = true
|
|
|
|
[server.listener.sieve]
|
|
bind = ["127.0.0.1:9993"]
|
|
protocol = "managesieve"
|
|
max-connections = 8192
|
|
tls.implicit = true
|
|
|
|
[server.listener.smtps]
|
|
bind = ['127.0.0.1:9994']
|
|
greeting = 'Test SMTP instance'
|
|
protocol = 'smtp'
|
|
tls.implicit = true
|
|
|
|
[server.listener.smtp]
|
|
bind = ['127.0.0.1:9995']
|
|
greeting = 'Test SMTP instance'
|
|
protocol = 'smtp'
|
|
tls.implicit = false
|
|
|
|
[server.socket]
|
|
reuse-addr = true
|
|
|
|
[server.tls]
|
|
enable = true
|
|
implicit = false
|
|
certificate = "default"
|
|
|
|
[global.tracing]
|
|
method = "stdout"
|
|
|
|
[session.ehlo]
|
|
reject-non-fqdn = false
|
|
|
|
[session.rcpt]
|
|
relay = [ { if = "authenticated-as", ne = "", then = true },
|
|
{ else = false } ]
|
|
directory = "local"
|
|
|
|
[session.rcpt.errors]
|
|
total = 5
|
|
wait = "1ms"
|
|
|
|
[queue]
|
|
path = "/tmp/stalwart-test"
|
|
hash = 64
|
|
|
|
[report]
|
|
path = "/tmp/stalwart-test"
|
|
hash = 64
|
|
|
|
[resolver]
|
|
type = "system"
|
|
|
|
[queue.outbound]
|
|
next-hop = [ { if = "rcpt-domain", in-list = "local/domains", then = "local" },
|
|
{ else = false } ]
|
|
|
|
[remote."mock-smtp"]
|
|
address = "localhost"
|
|
port = 9999
|
|
protocol = "smtp"
|
|
|
|
[remote."mock-smtp".tls]
|
|
implicit = false
|
|
allow-invalid-certs = true
|
|
|
|
[session.extensions]
|
|
future-release = [ { if = "authenticated-as", ne = "", then = "99999999d"},
|
|
{ else = false } ]
|
|
|
|
[store]
|
|
db.path = "/tmp/stalwart-test/sqlite.db"
|
|
|
|
[store.blob]
|
|
type = "local"
|
|
|
|
[store.blob.local]
|
|
path = "/tmp/stalwart-test"
|
|
|
|
[certificate.default]
|
|
cert = "file://../../tests/resources/tls_cert.pem"
|
|
private-key = "file://../../tests/resources/tls_privatekey.pem"
|
|
|
|
[jmap]
|
|
directory = "local"
|
|
|
|
[jmap.protocol]
|
|
set.max-objects = 100000
|
|
|
|
[jmap.protocol.request]
|
|
max-concurrent = 8
|
|
|
|
[jmap.protocol.upload]
|
|
max-size = 5000000
|
|
max-concurrent = 4
|
|
ttl = "1m"
|
|
|
|
[jmap.protocol.upload.quota]
|
|
files = 3
|
|
size = 50000
|
|
|
|
[jmap.rate-limit]
|
|
account.rate = "1000/1m"
|
|
authentication.rate = "100/2s"
|
|
anonymous.rate = "100/1m"
|
|
|
|
[jmap.event-source]
|
|
throttle = "500ms"
|
|
|
|
[jmap.web-sockets]
|
|
throttle = "500ms"
|
|
|
|
[jmap.push]
|
|
throttle = "500ms"
|
|
attempts.interval = "500ms"
|
|
|
|
[directory."local"]
|
|
type = "memory"
|
|
|
|
[directory."local".options]
|
|
catch-all = true
|
|
subaddressing = true
|
|
|
|
[directory."local".lookup]
|
|
domains = ["example.org"]
|
|
|
|
[[directory."local".users]]
|
|
name = "admin"
|
|
description = "Superadmin"
|
|
secret = "secret"
|
|
member-of = ["superusers"]
|
|
|
|
[[directory."local".users]]
|
|
name = "john"
|
|
description = "John Doe"
|
|
secret = "12345"
|
|
email = ["john@example.org", "jdoe@example.org", "john.doe@example.org"]
|
|
email-list = ["info@example.org"]
|
|
member-of = ["sales"]
|
|
|
|
[[directory."local".users]]
|
|
name = "jane"
|
|
description = "Jane Doe"
|
|
secret = "12345"
|
|
email = "jane@example.org"
|
|
email-list = ["info@example.org"]
|
|
member-of = ["sales", "support"]
|
|
|
|
[[directory."local".users]]
|
|
name = "bill"
|
|
description = "Bill Foobar"
|
|
secret = "12345"
|
|
quota = 500000
|
|
email = "bill@example.org"
|
|
email-list = ["info@example.org"]
|
|
|
|
[[directory."local".groups]]
|
|
name = "sales"
|
|
description = "Sales Team"
|
|
|
|
[[directory."local".groups]]
|
|
name = "support"
|
|
description = "Support Team"
|
|
|
|
[[directory."local".groups]]
|
|
name = "superusers"
|
|
description = "Superusers"
|
|
|
|
[oauth]
|
|
key = "parerga_und_paralipomena"
|
|
max-auth-attempts = 1
|
|
|
|
[oauth.expiry]
|
|
user-code = "1s"
|
|
token = "1s"
|
|
refresh-token = "3s"
|
|
refresh-token-renew = "2s"
|
|
|
|
[imap.auth]
|
|
allow-plain-text = true
|
|
|
|
[imap.rate-limit]
|
|
rate = "10000/1s"
|
|
concurrent = 9000
|