henrymail.full.prop 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. ; This file contains all of the configuration options for
  2. ; henrymail, and explains what they do. The default values
  3. ; are shown for each setting.
  4. ; For the simplest configurations, only the settings in
  5. ; henrymail.sample.prop need to be changed.
  6. ; If you have some special requirements (e.g. you are running other web services
  7. ; on the same machine or you are restricted to operating on certain ports) then
  8. ; read on to see if these settings can help you.
  9. ; This is the domain for emails addresses that this server is responsible for
  10. ; e.g. mary@example.com
  11. Domain = example.com
  12. ; This is the DNS name of the email server. Note that it is different to the
  13. ; domain, in case you want to host a website at the domain root.
  14. ServerName = mail.example.com
  15. ; This is the address where the Message Submission Agent will listen.
  16. ; The default value is the IANA recommended port, see http://www.iana.org/go/rfc6409
  17. MsaAddress = :587
  18. ; This is the address where the Message Transfer Agent will listen.
  19. ; The default value is the IANA recommended port, see http://www.iana.org/go/rfc5321
  20. MtaAddress = :25
  21. ; This is the address where the IMAP server will listen
  22. ; The default value is the IANA recommended port, see http://www.iana.org/go/rfc3501
  23. ImapAddress = :143
  24. ; This is the address where the web administration interface will listen.
  25. ; The default value is the standard HTTPS port.
  26. WebAdminAddress = :443
  27. ; Defines whether to use Transport Layer Security for the each server type
  28. ; It is recommended that you leave this enabled for all server types.
  29. ; It should only be disabled for convenience during application development.
  30. MtaUseTls = true
  31. MsaUseTls = true
  32. ImapUseTls = true
  33. ; Defines whether to use Transport Layer Security for the web administration
  34. ; interface. It is recommended to leave this enabled, unless you are running
  35. ; henrymail behind a reverse proxy like nginx, which terminates the TLS
  36. ; connection for you.
  37. WebAdminUseTls = true
  38. ; Which DNS server should be used for sending emails and performing DNS health
  39. ; checks. Defaults to the OpenDNS Public DNS server: see https://use.opendns.com/
  40. DnsServer = 208.67.222.222:53
  41. ; It is desirable during development and testing to spoof DNS records, without
  42. ; having to expose the development environment to the internet. These settings
  43. ; enable an in-built DNS server to provide this facility. They should not
  44. ; be used in production environments.
  45. FakeDns = false
  46. FakeDnsAddress = 127.0.0.1:2053
  47. ; Henrymail supports 3 modes for certificates: AutoCert, Given, and SelfSigned
  48. ; AutoCert will automatically obtain certificates from LetsEncrypt,
  49. ; see https://letsencrypt.org/. This is the most convenient setting if you
  50. ; are running a standalone henrymail server.
  51. ; Given will use an existing certificate on disk. This is advisable if you
  52. ; already have a certificate, and you share it with other applications (e.g.
  53. ; a web server)
  54. ; SelfSigned will generate a self-signed certificate (not advisable in production
  55. ; systems)
  56. CertificateMode = AutoCert
  57. ; If CertificateMode is set to AutoCert, then this email address is used by
  58. ; LetsEncrypt to send you warnings if your certificate will expire, or if there
  59. ; is some other problem.
  60. AutoCertEmail = admin@example.com
  61. ; This is the directory in which henrymail will store automatically generated
  62. ; certificates.
  63. AutoCertCacheDir = keys
  64. ; If CertificateMode is set to Given, then this should be the path to the
  65. ; public certificate. The certificate must be issued for the server
  66. ; set in the ServerName setting.
  67. CertificateFile = /etc/letsencrypt/live/example.com/fullchain.pem
  68. ; If CertificateMode is set to Given, then this should be the path to the
  69. ; private key.
  70. KeyFile = /etc/letsencrypt/live/example.com/privkey.pem
  71. ; Which database driver should be used to connect to the database.
  72. ; Currently only sqlite3 is supported.
  73. DbDriverName = sqlite3
  74. ; A string describing how to connect to the database. For sqlite3 databases,
  75. ; this is just the filename.
  76. DbConnectionString = henrymail.db
  77. ; Controls how long SMTP clients are allowed to be idle before the connection
  78. ; is terminated.
  79. MaxIdleSeconds = 300
  80. ; Controls the maximum message size that the SMTP server(s) will accept
  81. MaxMessageBytes = 1024*1024
  82. ; Controls the maximum number of recipients the the SMTP server(s) will accept
  83. MaxRecipients = 50
  84. ; Controls how frequently retries are attempted, if an email fails to send due
  85. ; to server down time. The format is described here:
  86. ; https://godoc.org/github.com/robfig/cron
  87. RetryCronSpec = * * * * *
  88. ; How many retries are attempted before the server stops trying and sends a
  89. ; failure notification instead.
  90. RetryCount = 3
  91. ; When the server is first started, an administrator user is generated.
  92. ; This setting controls the username
  93. AdminUsername = admin
  94. ; When the server is first started, an administrator user is generated.
  95. ; This setting controls the password. If the setting is left blank, a
  96. ; random 8 character password is generated and logged to the console.
  97. AdminPassword =
  98. ; The mailboxes which will be configured for each new account, by default.
  99. ; NB Not sure you can have a string array type property in a java props file.
  100. ; DefaultMailboxes = "INBOX", "Trash", "Sent", "Drafts"
  101. ; This setting controls whether emails sent from henrymail are signed with
  102. ; DKIM.
  103. DkimSign = true
  104. ; This setting controls is incoming emails DKIM signatures should be verified.
  105. ; Dkim records that are present but incorrect will cause the email to be rejected.
  106. DkimVerify = true
  107. ; This setting controls if incoming emails MUST be signed with DKIM.
  108. ; Enabling this setting can reduce spam, however it will also reject any
  109. ; emails from poorly configured email domains.
  110. DkimMandatory = false
  111. ; Where to store the public & private keys for DKIM signing. The key is stored
  112. ; in PEM format. The key pair will be automatically generated on server startup
  113. ; if it does not already exist.
  114. DkimPrivateKeyFile = keys/dkim-private.pem
  115. DkimPublicKeyFile = keys/dkim-public.pem
  116. ; The length of the DKIM signing key. 2048 is a safe default. 1024 is the minimum
  117. ; recommended setting.
  118. DkimKeyBits = 2048
  119. ; This setting controls whether SPF records should be verified for incoming emails
  120. ; SPF records that are present but incorrect will cause the email to be rejected.
  121. SpfVerify = true
  122. ; This setting controls whether SPF records are mandatory for incoming emails.
  123. ; Enabling this setting can reduce spam, however it will also reject any
  124. ; emails from poorly configured email domains.
  125. SpfMandatory = false
  126. ; This setting controls where to store the secret key for JWT authentication in the
  127. ; web interface
  128. JwtTokenSecretFile = keys/jwt-secret
  129. ; This setting controls the name of the cookie that's stored in users' browsers for
  130. ; authentication
  131. JwtCookieName = henrymail_jwt_token
  132. ; This setting controls what domain is used for the authentication cookie. This should
  133. ; only be used during development, when the server name setting may differ from the
  134. ; actual server name. Use in a production environment will cause the web admin interface
  135. ; to stop working.
  136. CookieDomainOverride = "CookieDomainOverride"
  137. ; This setting controls which port our server will connect to in order to pass on
  138. ; submitted emails. This should only be changed for development purposes when you
  139. ; wish to test emails looping back to your own server locally. Changing this in
  140. ; production will cause all outgoing email to fail.
  141. MtaSendPort = :25