Postfix TLS

Allikas: Kuutõrvaja
Redaktsioon seisuga 29. märts 2012, kell 13:11 kasutajalt Jj (arutelu | kaastöö)
                                        Roheline.jpg Toores. Ehk seda pala võib täiendada.

Probleem: Sooviksime igalpoolt maailmast ühenduda kasutajanime ning parooli abil oma mailiserveriga ja saata läbi selle kirju. Samas kasutame palju ebaturvalisi võrke (wifi, lennujaam jms) seega peaks olema ühendus, mille üle käib suhtlus serveriga krüpteeritud.

Ehk siis startls loob serveriga krüpteeritud ühenduse ja autendib end läbi base64 krüpteeritud paroolide.

Genereerime base64 formaadis kasutajanime ning parooli

Postfixi seadistamine

Vajalik on lisada enda Postfixi seadistusele järgnevad read:

# lubame ligi vaid sisevõrgul ja sasli abil autentitud kasutajad
smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated,
smtpd_client_restrictions = permit_sasl_authenticated permit_mynetworks reject_unknown_client
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination,

smtpd_sasl_type = dovecot <- Autentimiseks kasutatakse dovecot imap serveri vahendeid
smtpd_sasl_path = /var/spool/postfix/private/auth <- Dovecoti poolt loodud socket autentimiseks

smtpd_sasl_auth_enable = yes
smtpd_tls_auth_only = yes
smtpd_use_tls = yes
smtp_use_tls = yes

# krüptovõtmed
smtpd_tls_key_file = /usr/local/etc/postfix/ssl/smtpd.pem
smtpd_tls_cert_file = /usr/local/etc/postfix/ssl/smtpd.pem
tls_random_source = dev:/dev/urandom

Kasutades IMAP serveriks Cyrust on mõistlik kasutada saslatuhd nimelist deemonit, mis näiteks kontrollib kasutajad PAMi kaudu.

Testimine

$ perl -MMIME::Base64 -e 'print encode_base64("kasutajanimi")' 
$ perl -MMIME::Base64 -e 'print encode_base64("not.my.real.password")'

Kasutada saab ka http://base64-encoder-online.waraxe.us/ asuvat tasuta kodeerijat.

Ühendume openssl käsurea kliendi abil mailiserveriga:

$ openssl s_client -starttls smtp -crlf -connect mail.edu.ee:25
250 DSN
helo test.eenet.ee
250 mail.edu.ee
auth login
334 VXNlfm3hbdU6
dGVzdA==        <- siia paneme kodeeritud kasutajanime
334 UGFzc1dwcAQ6
WAx3GVpcHpMQ==  <- kodeeritud parool
235 2.7.0 Authentication successful

Edasi võib teostada juba tavalise kirjasaatmise protseduuri.

mail from: jj@eenet.ee
250 2.1.0 Ok
rcpt to: jj@eenet.ee
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
test
.
250 2.0.0 Ok: queued as 60C1584BD0E11

Thunderbirdis väljuvate kirjade seadistus:

Thunderbird.png