Skip to main content

Postfix sähköpostin lähettämisessä SSL:ää käyttäen

  • December 11, 2014
  • 1 kommentti
  • 5 katselukertaa

Minulla on käyttöjärjestelmänä Debian GNU/Linux ja siinä MTA nimeltä Postfix versio 2.9.1.

MTA nimeltä Postfix on melko helppoa konfiguroida niin, että se lähettää sähköpostia käyttäen releenään Soneran sähköpostipalvelinta. Olennaista on lisätä tällainen rivi tiedostoon /etc/postfix/main.cf:

relayhost = [mail.inet.fi]


Mutta sitten jos halutaan mukaan myös SSL, homma meneekin vaikeammaksi. Toimi näin:

Asenna postfixin lisäksi Stunnel. Oikea Debian-paketti on nimeltään stunnel4 . Luo tiedosto /etc/stunnel/postfix.conf ja kirjoita sinne tällaista:


[ssmtp_c2s]
accept = 127.0.0.1:10111
client = yes
connect = mail.inet.fi:465
delay = yes


Tiedostoa /etc/default/stunnel täytyy editoida tällaiseksi:


# Change to one to enable stunnel automatic startup
# MUUTOS
#ENABLED=0
ENABLED=1
FILES="/etc/stunnel/*.conf"
OPTIONS=""

# Change to one to enable ppp restart scripts
PPP_RESTART=0


Kirjoita tiedostoon /etc/postfix/main.cf tällaista:


relayhost = 127.0.0.1:10111

# SASL authentication
smtp_sasl_auth_enable=yes
smtp_sasl_password_maps = hash:/etc/postfix/passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous

# TLS
smtp_tls_eccert_file =
smtp_tls_eckey_file =
# http://www.postfix.org/TLS_README.html#client_tls_may
smtp_tls_security_level = may
smtpd_tls_received_header = yes
tls_random_source = dev:/dev/urandom
# http://www.postfix.org/TLS_README.html#client_tls_may
smtpd_tls_security_level = may


Kirjoita tiedostoon /etc/postfix/passwd Soneran antama käyttäjätunnus ja salasana tässä muodossa:


mail.inet.fi:465 KÄYTTÄJÄTUNNUS:SALASANA


Sitten anna tämä komento:


postmap hash:/etc/postfix/passwd


Sitten voit kokeilla, että toimiiko ne antamalla tämän komennon:


postmap -q mail.inet.fi:465 /etc/postfix/passwd


Jos tuo komento tulostaa käyttäjätunnuksen ja salasanan, kaikki on OK.

Estä koneen muita käyttäjiä lukemasta käyttäjätunnusta ja salasana näin:


chmod go-rwx /etc/postfix/passwd*


Lopuksi anna nämä komennot:


/etc/init.d/stunnel4 stop
/etc/init.d/stunnel4 start
/etc/init.d/postfix stop
/etc/init.d/postfix start

1 kommentti

  • May 4, 2012
Toi em. systeemi on tällainen tämän takia:


  • TLS on SSL:än parannettu versio

  • Soneran käyttämä MTA (joka ainakin ennen oli ZMailer) tukee vain SSL:ää ilman TLS:ää, joko siksi, ettei sen tuoreinkaan versio sitä tue, tai sitten siksi, että tuorein versio tukee sitä, mutta Sonera ei ole enabloinut sitä omassa asennuksessaan, tai siksi, että tuorein versio tukee sitä, mutta Soneralla on asennettuna joku vanhempi versio, joka ei sitä tue

  • Postfix tukee vain TLS:ää, muttei SSL:ää ilman TLS:ää.



STunnel tarvitaan siis em. syistä.