Arbejde med at gøre kryptering af email mere udbredt

Fra wiki.klid.dk
Skift til: navigering, søgning

En foreløbig konklusion på hvad der er rimeligt sikkert nu om dage, er at god kryptering er meget vanskeligt at bryde.

Men det har vist sig vanskeligt at få almindelige brugere til at benytte krypteret email.

En vej frem kunne være at indbygge kryptering af email automatisk i de brugte email-servere, fx postfix og sendmail. Vi vil kun se på open source mail-servere da det er afsløret, at der er blevet købt bagdøre i kommercielle programmer.

Krypteringen bør benytte en sikker metode. SHA-1 er usikker, men SHA-2 og SHA-256 regnes for sikrere.

Denne side vil se på hvordan man kan få internettet til i højere grad automatisk at benytte krypteret email.

Mail-protokollerne kan allerede i dag benytte kryptering af email via en facilitet, der hedder STARTTLS.

Der er noget diskussion i forskellige IETF-mailinglister, bl.a. ietf-smtp mailinglisten.

Keld Simonsen har foreslået en opportunistisk TLS løsning, hvis begge MTA-er kan køre TLS, så prøver man dette.

Google har foreslået en ny ESMPT-option som kan sikre at en email bliver sendt frem krypteret.

Keith Moore har foreslået krypteret mail mellem MTA og MUA http://datatracker.ietf.org/doc/draft-moore-email-tls/

Et andet forslag er opportunistisk brug af TLS og med brug af DANE - en rimelig sikker brug af selvunderskrevne certifikater via DNS - http://datatracker.ietf.org/doc/draft-ietf-dane-smtp-with-dane/

Et lille script kan bruges til at sætte en fungerende postfix op til at køre STARTTLS hvis begge maskiner kan det:

#!/bin/sh
# run as root - sets up postfix to use STARTTLS encryption if both machines can do it
# generates self-signed 10 years certificate and all postfix configuration,
# takes care of everything - just run this script and restart postfix!
dir="$(postconf -h config_directory)"
fqdn=$(postconf -h myhostname)
case $fqdn in /*) fqdn=$(cat "$fqdn");; esac
ymd=$(date +%Y-%m-%d)
key="${dir}/key-${ymd}.pem"; rm -f "${key}"
cert="${dir}/cert-${ymd}.pem"; rm -f "${cert}"
(umask 077; openssl genrsa -out "${key}" 4096) &&
 openssl req -new -key "${key}" -sha256 \
   -x509 -subj "/CN=${fqdn}" -days 3650 -out "${cert}" &&
 postconf -e \
   "smtpd_tls_cert_file = ${cert}" \
   "smtpd_tls_key_file = ${key}" \
   'smtpd_tls_security_level = may' \
   'smtpd_tls_received_header = yes' \
   'smtpd_tls_loglevel = 1' \
   'smtp_tls_security_level = may' \
   'smtp_tls_loglevel = 1' \
   'smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache' \
   'tls_random_source = dev:/dev/urandom'

Scriptet er taget fra postfix sider http://www.postfix.org/TLS_README.html#quick-start

sendmail ser ud til automatisk at kunne sættes op til at bruge TLS - http://www.sendmail.com/sm/open_source/docs/m4/starttls.html


Lidt om erfaringer med brug af sendmail med TLS.

MTA-en exim kan også sættes nemt op med TLS.

Erfaring med NemID Sikker mail med offentlig virksomhed.