You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: CHANGELOG.md
+8-6
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,14 @@
1
1
CHANGELOG
2
2
=========
3
3
4
+
In Development
5
+
--------------
6
+
7
+
Mail:
8
+
9
+
* An MTA-STS policy for incoming mail is now published (in DNS and over HTTPS) when the primary hostname and email address domain both have a signed TLS certificate installed.
10
+
* MTA-STS reporting is enabled with reports sent to administrator@ the primary hostname.
11
+
4
12
v0.45 (May 16, 2020)
5
13
--------------------
6
14
@@ -24,12 +32,6 @@ Web:
24
32
25
33
* Add a new hidden feature to set nginx alias in www/custom.yaml.
26
34
27
-
MTA-STS:
28
-
29
-
* Added support for client side MTA-STS when there is a valid SSL Certificate on the primary domain
30
-
* Automatically adds reporting when alias "tlsrpt@<primary-domain>" is added.
31
-
* Starts default on 'testing', but changes will be kept between MiaB Upgrades.
* DNS ([nsd4](https://www.nlnetlabs.nl/projects/nsd/)) with [SPF](https://en.wikipedia.org/wiki/Sender_Policy_Framework), DKIM ([OpenDKIM](http://www.opendkim.org/)), [DMARC](https://en.wikipedia.org/wiki/DMARC), [DNSSEC](https://en.wikipedia.org/wiki/DNSSEC), [DANE TLSA](https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities), and [SSHFP](https://tools.ietf.org/html/rfc4255) records automatically set
* Webmail ([Roundcube](http://roundcube.net/)), mail filter rules (also using dovecot), email client autoconfig settings (served by [nginx](http://nginx.org/))
33
+
* Spam filtering ([spamassassin](https://spamassassin.apache.org/)) and greylisting ([postgrey](http://postgrey.schweikert.ch/))
34
+
* DNS ([nsd4](https://www.nlnetlabs.nl/projects/nsd/)) with [SPF](https://en.wikipedia.org/wiki/Sender_Policy_Framework), DKIM ([OpenDKIM](http://www.opendkim.org/)), [DMARC](https://en.wikipedia.org/wiki/DMARC), [DNSSEC](https://en.wikipedia.org/wiki/DNSSEC), [DANE TLSA](https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities), [MTA-STS](https://tools.ietf.org/html/rfc8461), and [SSHFP](https://tools.ietf.org/html/rfc4255) policy records automatically set
* Backups ([duplicity](http://duplicity.nongnu.org/)), firewall ([ufw](https://launchpad.net/ufw)), intrusion protection ([fail2ban](http://www.fail2ban.org/wiki/index.php/Main_Page)), and basic system monitoring ([munin](http://munin-monitoring.org/))
36
37
37
-
It also includes:
38
+
It also includes system management tools:
38
39
39
-
* A control panel and API for adding/removing mail users, aliases, custom DNS records, etc. and detailed system monitoring.
40
+
* Comprehensive health monitoring that checks each day that services are running, ports are open, TLS certificates are valid, and DNS records are correct
41
+
* A control panel for adding/removing mail users, aliases, custom DNS records, configuring backups, etc.
42
+
* An API for all of the actions on the control panel
43
+
44
+
It also supports static website hosting since the box is serving HTTPS anyway.
40
45
41
46
For more information on how Mail-in-a-Box handles your privacy, see the [security details page](security.md).
("_mta-sts", "TXT", "v=STSv1; id=%sZ"%datetime.datetime.now().strftime("%Y%m%d%H%M%S"), "Optional. Part of the MTA-STS policy for incoming mail. If set, a MTA-STS policy must also be published.")
327
339
]
328
340
# Rules can be custom configured accoring to https://tools.ietf.org/html/rfc8460.
329
341
# Skip if the rules below if the user has set a custom _smtp._tls record.
# if the alias 'tlsrpt@PRIMARY_HOSTNAME' is configured, automaticly, reporting will be enabled to this email address
332
-
tls_rpt_email="tlsrpt@%s"%env['PRIMARY_HOSTNAME']
333
343
tls_rpt_string=""
334
-
foraliasinget_mail_aliases(env):
335
-
ifalias[0] ==tls_rpt_email:
336
-
tls_rpt_string=" rua=mailto:%s"%tls_rpt_email
337
-
mta_sts_records.append(("_smtp._tls", "TXT", "v=TLSRPTv1;%s"%tls_rpt_string, "For reporting, add an email alias: 'tlsrpt@%s' or add a custom TXT record like 'v=TLSRPTv1; rua=mailto:[youremail]@%s' for reporting"% (env["PRIMARY_HOSTNAME"], env["PRIMARY_HOSTNAME"])))
Copy file name to clipboardexpand all lines: security.md
+6-8
Original file line number
Diff line number
Diff line change
@@ -101,19 +101,17 @@ The box restricts the envelope sender address (also called the return path or MA
101
101
Incoming Mail
102
102
-------------
103
103
104
-
### Encryption
105
-
106
-
As discussed above, there is no way to require on-the-wire encryption of mail. When the box receives an incoming email (SMTP on port 25), it offers encryption (STARTTLS) but cannot require that senders use it because some senders may not support STARTTLS at all and other senders may support STARTTLS but not with the latest protocols/ciphers. To give senders the best chance at making use of encryption, the box offers protocols back to TLSv1 and ciphers with key lengths as low as 112 bits. Modern clients (senders) will make use of the 256-bit ciphers and Diffie-Hellman ciphers with a 2048-bit key for perfect forward secrecy, however. ([source](setup/mail-postfix.sh))
107
-
108
-
### DANE
104
+
### Encryption Settings
109
105
110
-
When DNSSEC is enabled at thebox's domain name's registrar, [DANE TLSA](https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities) records are automatically published in DNS. Senders supporting DANE will enforce encryption on-the-wire between them and the box --- see the section on DANE for outgoing mail above. ([source](management/dns_update.py))
106
+
As with outbound email, there is no way to require on-the-wire encryption of incoming mail from all senders. When the box receives an incoming email (SMTP on port 25), it offers encryption (STARTTLS) but cannot require that senders use it because some senders may not support STARTTLS at all and other senders may support STARTTLS but not with the latest protocols/ciphers. To give senders the best chance at making use of encryption, the box offers protocols back to TLSv1 and ciphers with key lengths as low as 112 bits. Modern clients (senders) will make use of the 256-bit ciphers and Diffie-Hellman ciphers with a 2048-bit key for perfect forward secrecy, however. ([source](setup/mail-postfix.sh))
111
107
112
108
### MTA-STS
113
109
114
-
SMTP MTA Strict Transport Security ([SMTP MTA-STS for short](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol#SMTP_MTA_Strict_Transport_Security)).
110
+
The box publishes a SMTP MTA Strict Transport Security ([SMTP MTA-STS](https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol#SMTP_MTA_Strict_Transport_Security)) policy (via DNS and HTTPS) in "enforce" mode. Senders that support MTA-STS will use a secure SMTP connection. (MTA-STS tells senders to connect and expect a signed TLS certificate for the "MX" domain without permitting a fallback to an unencrypted connection.)
111
+
112
+
### DANE
115
113
116
-
MTA-STS is a mechanism that instructs an SMTP server that the communication with the other SMTP server MUST be encrypted and that the domain name on the certificate should match the domain in the policy. It uses a combination of DNS and HTTPS to publish a policy that tells the sending party what to do when an encrypted channel can not be negotiated.
114
+
When DNSSEC is enabled at the box's domain name's registrar, [DANE TLSA](https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities) records are automatically published in DNS. Senders supporting DANE will enforce encryption on-the-wire between them and the box --- see the section on DANE for outgoing mail above. ([source](management/dns_update.py))
0 commit comments