FAQ about TLS issues

master
Tim Möhlmann 6 years ago
parent b5693edc63
commit 1394955447
No known key found for this signature in database
GPG Key ID: AFABC30066A39335

@ -55,6 +55,7 @@ distribution requires a lot of effort. Mail servers are highly exposed to hackin
open relay scanners, spam and malware distributors etc. We need to work in a safe way and open relay scanners, spam and malware distributors etc. We need to work in a safe way and
have to prevent pushing out something quickly. have to prevent pushing out something quickly.
**TODO: Move the next section into the contributors part of docs**
We currently maintain a strict work flow: We currently maintain a strict work flow:
#. Someone writes a solution and sends a pull request; #. Someone writes a solution and sends a pull request;
@ -65,8 +66,8 @@ We currently maintain a strict work flow:
Please consider that this project is mostly developed in people their free time. Please consider that this project is mostly developed in people their free time.
We thank you for your understanding and patience. We thank you for your understanding and patience.
I would to donate (for a feature) I would like to donate (for a feature)
````````````````````````````````` ``````````````````````````````````````
Donations are welcome at the `patreon`_ account of the project lead. It will be used to pay Donations are welcome at the `patreon`_ account of the project lead. It will be used to pay
for infra structure and project related costs. If there are leftovers, it will be distributed for infra structure and project related costs. If there are leftovers, it will be distributed
@ -88,10 +89,90 @@ our ongoing `project management`_ discussion issue.
Deployment related Deployment related
------------------ ------------------
Technical issues Technical issues
---------------- ----------------
Changes in .env don't propagate
```````````````````````````````
Variables are sent to the containers at creation time. This means you need to take the project
down and up again. A container restart is not sufficient.
.. code-block:: bash
docker-compose down && \
docker-compose up -d
*Issue reference:* `615`_,
TLS certificate issues
``````````````````````
When there are issues with the TLS/SSL certificates, Mailu denies service on secure ports.
This is a security precaution. Symptoms are:
- 403 browser errors;
These issues are typically caused by four scenarios:
#. ``TLS_FLAVOR=notls`` in ``.env``;
#. Certificates expired;
#. When ``TLS_FLAVOR=letsencrypt``, it might be that the *certbot* script is not capable of
obtaining the certificates for your domain. See `letsencrypt issues`_
#. When ``TLS_FLAVOR=certs``, certificates are supposed to be copied to ``/mailu/certs``.
Using an external ``letsencrypt`` program, it tends to happen people copy the whole
``letsencrypt/live`` directory containing symlinks. Symlinks do not resolve inside the
container and therefore it breaks the TLS implementation.
letsencrypt issues
..................
In order to determine the exact problem on TLS / Let's encrypt issues, it might be helpful
to check the logs.
.. code-block:: bash
docker-compose logs front | less -R
docker-compose exec front less /var/log/letsencrypt/letsencrypt.log
Common problems:
- Port 80 not reachable from outside.
- Faulty DNS records: make sure that all ``HOSTNAMES`` have **A** (IPv4) and **AAAA** (IPv6)
records, pointing the the ``BIND_ADDRESS4`` and ``BIND_ADDRESS6``.
- DNS cache not yet expired. It might be that old / faulty DNS records are stuck in a cache
en-route to letsencrypt's server. The time this takes is set by the ``TTL`` field in the
records. You'll have to wait at least this time after changing the DNS entries.
Don't keep trying, as you might hit `rate-limits`_.
.. _`rate-limits`: https://letsencrypt.org/docs/rate-limits/
Copying certificates
....................
As mentioned above, care must be taken not to copy symlinks to the ``/mailu/certs`` location.
**The wrong way!:**
.. code-block:: bash
cp -r /etc/letsencrypt/live/domain.com /mailu/certs
**The right way!:**
.. code-block:: bash
mkdir -p /mailu/certs
cp /etc/letsencrypt/live/domain.com/privkey.pem /mailu/certs/key.pem
cp /etc/letsencrypt/live/domain.com/fullchain.pem /mailu/certs/cert.pem
See also :ref:`external_certs`.
*Issue reference:* `426`_, `615`_.
WIP: Link to `troubleshooting`_ related issues will be in the bottom of this section. WIP: Link to `troubleshooting`_ related issues will be in the bottom of this section.
.. _`426`: https://github.com/Mailu/Mailu/issues/426
.. _`615`: https://github.com/Mailu/Mailu/issues/615
.. _`troubleshooting`: https://github.com/Mailu/Mailu/issues?utf8=%E2%9C%93&q=label%3Afaq%2Ftroubleshooting .. _`troubleshooting`: https://github.com/Mailu/Mailu/issues?utf8=%E2%9C%93&q=label%3Afaq%2Ftroubleshooting

Loading…
Cancel
Save