Letsencrypt certbot – darmowy certyfikat kawalifikowany EXIM
Pobieramy ze strony https://github.com/pypa/get-pip
Instalujemy pip poleceniem python get-pip.py
skrypt instalujący potrzebne pakiety pythona
#!/bin/sh
#
for i in $(cat packages.txt); do pip install $i; done
zawartość pliku packages.txt
cffi
configobj
cryptography
enum34
idna
ipaddress
letsencrypt
mock
ndg_httpsclient
psutil
pyasn1
pycparser
pyOpenSSL
pyparsing
pyrfc3339
python2-pythondialog
python-augeas
python-configargparse
python-parsedatetime
python-requests
pytz
six
werkzeug
zope.component
zope.event
zope.interface
virtualenv
Instalacja certbot ./certbot-auto –no-bootstrap
utworzenie tymczasowej subdomeny dla apache poczta.domena.com
/opt/eff.org/certbot/venv/bin/certbot certonly –webroot -w /glowny/katalog/subdomeny/poczta.domena.com -d poczta.domena.com
Podczas instalacji kluczy wpisać swój adres e-mail, potrzebny do odzyskania klucza w razie utraty
Zaakceptować warunki
certyfikat zainstalowany w /etc/letsencrypt/live/poczta.domena.com/
fullchain.pem – certyfikat
privkey.pem – klucz
Dla EXIM należy nadac uprawnienia dla usera i grupy exim dla kluczy oraz nadać uprawnienia do odczytu dla katalogów archive i live
w /etc/letsencrypt
Utworzyć symlinki dla kluczy do katalogu /etc/exim/certs/certyfikat.poczta.domena.com.pem , klucz.poczta.domena.com.pem
Konfiguracja EXIM dla wielu domen
tls_certificate = ${if exists{/etc/exim/cert/letsencrypt/certyfikat.${lc:${tls_sni}}.pem}{/etc/exim/cert/letsencrypt/certyfikat.${lc:${tls_sni}}.pem}{/etc/exim/cert/exim.crt}}
tls_privatekey = ${if exists{/etc/exim/cert/letsencrypt/klucz.${lc:${tls_sni}}.pem}{/etc/exim/cert/letsencrypt/klucz.${lc:${tls_sni}}.pem}{/etc/exim/cert/exim.key}}