Dovecot SASL

Hallo,

habe einen Root Server im Internet und möchte mit diesem Mails senden
können und habe deshalb postfix mit dovecot SASL konfiguriert.
Habe die entsprechenden Howtos gelesen aber es funktioniert nicht.

Kann jedenfalls den so konfigurierten Server nicht von meinem Rechner
mit Thunderbird als SMTP Client zum Senden verwenden.

Dovecot IMAP funktioniert auf dem Server. Ich kann mit TB auf Mails
eines Users zugreifen.
Postfix funktioniert. Ich kann Mails versenden, z. B. mit dem Kommando
mail (am Server).

postconf mail_version:

mail_version = 2.9.6

doveconf -n

# 2.0.16: /etc/dovecot/dovecot.conf
# OS: Linux 3.7.10-1.16-desktop x86_64 openSUSE 12.3 (x86_64)
mail_location = mbox:~/mail:INBOX=/var/mail/%u
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date ihave
passdb {
driver = pam
}
plugin {
sieve = ~/.dovecot.sieve
sieve_dir = ~/sieve
}
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
}
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
driver = passwd
}

postconf -a

cyrus
dovecot

und das ist /etc/postfix/main.cf.

queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
data_directory = /var/lib/postfix

mail_owner = postfix
unknown_local_recipient_reject_code = 550
debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = maildrop
html_directory = /usr/share/doc/packages/postfix-doc/html
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/packages/postfix-doc/samples
readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
relay_domains = $mydestination, hash:/etc/postfix/relay
virtual_alias_maps = hash:/etc/postfix/virtual
inet_protocols = all
biff = no
mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
virtual_alias_domains = hash:/etc/postfix/virtual
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
sender_canonical_maps = hash:/etc/postfix/sender_canonical
masquerade_exceptions = root
masquerade_classes = envelope_sender, header_sender, header_recipient
myhostname = xxxxx.xxxx.xx
delay_warning_time = 1h
message_strip_characters =
inet_interfaces = all
masquerade_domains =
mydestination = $myhostname, localhost.$mydomain
defer_transports =

# mynetworks_style = host

disable_dns_lookups = no
relayhost =
content_filter =
mailbox_command =
mailbox_transport =
strict_8bitmime = no
disable_mime_output_conversion = no
smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_client_restrictions =
smtpd_helo_required = no
smtpd_helo_restrictions =
strict_rfc821_envelopes = no

smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth

# smtpd_sasl_security_options = noanonymous
# smtpd_sasl_security_options = noanonymous, noplaintext
# smtpd_sasl_tls_security_options = noanonymous

smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination

# smtpd_delay_reject = yes
# smtpd_client_restrictions = permit_sasl_authenticated, reject

# erst ab postfix 2.10:
# smtpd_relay_restrictions =
permit_mynetworks,
permit_sasl_authenticated

alias_maps = hash:/etc/aliases
message_size_limit = 0
mailbox_size_limit = 0

Hier noch die Ausgabe von postconf -n

alias_maps = hash:/etc/aliases
biff = no
canonical_maps = hash:/etc/postfix/canonical
command_directory = /usr/sbin
config_directory = /etc/postfix
content_filter =
daemon_directory = /usr/lib/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$process_name $process_id & sleep 5
defer_transports =
delay_warning_time = 1h
disable_dns_lookups = no
disable_mime_output_conversion = no
html_directory = /usr/share/doc/packages/postfix-doc/html
inet_interfaces = all
inet_protocols = all
mail_owner = postfix
mail_spool_directory = /var/mail
mailbox_command =
mailbox_size_limit = 0
mailbox_transport =
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
masquerade_classes = envelope_sender, header_sender, header_recipient
masquerade_domains =
masquerade_exceptions = root
message_size_limit = 0
message_strip_characters =
mydestination = $myhostname, localhost.$mydomain
myhostname = xxxxx.xxxx.xx
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
relay_domains = $mydestination, hash:/etc/postfix/relay
relayhost =
relocated_maps = hash:/etc/postfix/relocated
sample_directory = /usr/share/doc/packages/postfix-doc/samples
sender_canonical_maps = hash:/etc/postfix/sender_canonical
sendmail_path = /usr/sbin/sendmail
setgid_group = maildrop
smtpd_client_restrictions =
smtpd_helo_required = no
smtpd_helo_restrictions =
smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated, reject_unauth_destination
permit_mynetworks, permit_sasl_authenticated
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = hash:/etc/postfix/access
strict_8bitmime = no
strict_rfc821_envelopes = no
transport_maps = hash:/etc/postfix/transport
unknown_local_recipient_reject_code = 550
virtual_alias_domains = hash:/etc/postfix/virtual
virtual_alias_maps = hash:/etc/postfix/virtual

Die von mir verwendeten, nicht funktionierenden SMTP Server Einstellung
in Thunderbird:

Port: 25
Verbindungssicherheit: SSL/TLS
Authentifizierungsmethode: Passwort, normal

Natürlich habe ich die anderen Möglichkeiten mit Thunderbird (ohne
Erfolg) probiert.

Der Abruf von Mails über IMAP funktioniert ja, trotzdem hier die Server
Einstellungen:

Port: 993
Verbindungssicherheit: SSL/TLS
Authentifizierungsmethode: Passwort, normal

Danke für jede Hilfe

Ferdinand


Ferdinand Gruber
f.gruber@eduhi.at
00 43 7249 48737
00 43 650 542 88 33
Grieskirchner Straße 22
4701 Bad Schallerbach
LPIC-1 zertifiziert

  • 18. Dezember 2013

  • Ferdinand Gruber

  • 12 Antworten

  1. Markus Hohlmeier sagt:

    Am 18.12.2013 18:52, schrieb Ferdinand Gruber:
    > habe einen Root Server im Internet und möchte mit diesem Mails senden
    > können und habe deshalb postfix mit dovecot SASL konfiguriert.
    > Habe die entsprechenden Howtos gelesen aber es funktioniert nicht.

    Gerade bei Dovecot lieber das dovecot Wiki lesen und nicht irgendwelche
    How-To’s. http://wiki2.dovecot.org/HowTo/PostfixAndDovecotSASL

    > Kann jedenfalls den so konfigurierten Server nicht von meinem Rechner
    > mit Thunderbird als SMTP Client zum Senden verwenden.
    >
    > Dovecot IMAP funktioniert auf dem Server. Ich kann mit TB auf Mails
    > eines Users zugreifen.
    > Postfix funktioniert. Ich kann Mails versenden, z. B. mit dem Kommando
    > mail (am Server).
    >
    > postconf mail_version:
    >
    > mail_version = 2.9.6
    >
    > doveconf -n
    >
    > # 2.0.16: /etc/dovecot/dovecot.conf
    > # OS: Linux 3.7.10-1.16-desktop x86_64 openSUSE 12.3 (x86_64)
    > mail_location = mbox:~/mail:INBOX=/var/mail/%u
    > managesieve_notify_capability = mailto
    > managesieve_sieve_capability = fileinto reject envelope
    > encoded-character vacation subaddress comparator-i;ascii-numeric
    > relational regex imap4flags copy include variables body enotify
    > environment mailbox date ihave
    > passdb {
    > driver = pam
    > }
    > plugin {
    > sieve = ~/.dovecot.sieve
    > sieve_dir = ~/sieve
    > }
    > service auth {
    > unix_listener /var/spool/postfix/private/auth {
    > group = postfix
    > mode = 0660
    > user = postfix
    > }
    > }
    > ssl_cert = ssl_key = userdb {
    > driver = passwd
    > }
    >
    > postconf -a
    >
    > cyrus
    > dovecot
    >
    >
    > und das ist /etc/postfix/main.cf.
    >
    > queue_directory = /var/spool/postfix
    > command_directory = /usr/sbin
    > daemon_directory = /usr/lib/postfix
    > data_directory = /var/lib/postfix
    >
    > mail_owner = postfix
    > unknown_local_recipient_reject_code = 550
    > debug_peer_level = 2
    > debugger_command =
    > PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
    > ddd $daemon_directory/$process_name $process_id & sleep 5
    > sendmail_path = /usr/sbin/sendmail
    > newaliases_path = /usr/bin/newaliases
    > mailq_path = /usr/bin/mailq
    > setgid_group = maildrop
    > html_directory = /usr/share/doc/packages/postfix-doc/html
    > manpage_directory = /usr/share/man
    > sample_directory = /usr/share/doc/packages/postfix-doc/samples
    > readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
    > relay_domains = $mydestination, hash:/etc/postfix/relay
    > virtual_alias_maps = hash:/etc/postfix/virtual
    > inet_protocols = all
    > biff = no
    > mail_spool_directory = /var/mail
    > canonical_maps = hash:/etc/postfix/canonical
    > virtual_alias_domains = hash:/etc/postfix/virtual
    > relocated_maps = hash:/etc/postfix/relocated
    > transport_maps = hash:/etc/postfix/transport
    > sender_canonical_maps = hash:/etc/postfix/sender_canonical
    > masquerade_exceptions = root
    > masquerade_classes = envelope_sender, header_sender, header_recipient
    > myhostname = xxxxx.xxxx.xx
    > delay_warning_time = 1h
    > message_strip_characters =
    > inet_interfaces = all
    > masquerade_domains =
    > mydestination = $myhostname, localhost.$mydomain
    > defer_transports =
    >
    > # mynetworks_style = host
    >
    > disable_dns_lookups = no
    > relayhost =
    > content_filter =
    > mailbox_command =
    > mailbox_transport =
    > strict_8bitmime = no
    > disable_mime_output_conversion = no
    > smtpd_sender_restrictions = hash:/etc/postfix/access
    > smtpd_client_restrictions =
    > smtpd_helo_required = no
    > smtpd_helo_restrictions =
    > strict_rfc821_envelopes = no
    >
    > smtpd_sasl_auth_enable = yes
    > smtpd_sasl_type = dovecot
    > smtpd_sasl_path = private/auth
    >
    > # smtpd_sasl_security_options = noanonymous
    > # smtpd_sasl_security_options = noanonymous, noplaintext
    > # smtpd_sasl_tls_security_options = noanonymous
    >
    > smtpd_recipient_restrictions =
    > permit_mynetworks,
    > permit_sasl_authenticated,
    > reject_unauth_destination
    >
    > # smtpd_delay_reject = yes
    > # smtpd_client_restrictions = permit_sasl_authenticated, reject
    >
    > # erst ab postfix 2.10:
    > # smtpd_relay_restrictions =
    > permit_mynetworks,
    > permit_sasl_authenticated
    >
    > alias_maps = hash:/etc/aliases
    > message_size_limit = 0
    > mailbox_size_limit = 0
    >
    > Hier noch die Ausgabe von postconf -n
    >
    > alias_maps = hash:/etc/aliases
    > biff = no
    > canonical_maps = hash:/etc/postfix/canonical
    > command_directory = /usr/sbin
    > config_directory = /etc/postfix
    > content_filter =
    > daemon_directory = /usr/lib/postfix
    > data_directory = /var/lib/postfix
    > debug_peer_level = 2
    > debugger_command =
    > PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd
    > $daemon_directory/$process_name $process_id & sleep 5
    > defer_transports =
    > delay_warning_time = 1h
    > disable_dns_lookups = no
    > disable_mime_output_conversion = no
    > html_directory = /usr/share/doc/packages/postfix-doc/html
    > inet_interfaces = all
    > inet_protocols = all
    > mail_owner = postfix
    > mail_spool_directory = /var/mail
    > mailbox_command =
    > mailbox_size_limit = 0
    > mailbox_transport =
    > mailq_path = /usr/bin/mailq
    > manpage_directory = /usr/share/man
    > masquerade_classes = envelope_sender, header_sender, header_recipient
    > masquerade_domains =
    > masquerade_exceptions = root
    > message_size_limit = 0
    > message_strip_characters =
    > mydestination = $myhostname, localhost.$mydomain
    > myhostname = xxxxx.xxxx.xx
    > newaliases_path = /usr/bin/newaliases
    > queue_directory = /var/spool/postfix
    > readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
    > relay_domains = $mydestination, hash:/etc/postfix/relay
    > relayhost =
    > relocated_maps = hash:/etc/postfix/relocated
    > sample_directory = /usr/share/doc/packages/postfix-doc/samples
    > sender_canonical_maps = hash:/etc/postfix/sender_canonical
    > sendmail_path = /usr/sbin/sendmail
    > setgid_group = maildrop
    > smtpd_client_restrictions =
    > smtpd_helo_required = no
    > smtpd_helo_restrictions =
    > smtpd_recipient_restrictions = permit_mynetworks,
    > permit_sasl_authenticated, reject_unauth_destination
    > permit_mynetworks, permit_sasl_authenticated
    >

    Wieso alles doppelt ? Evtl. liegt der Fehler auch schlichtweg hier.

    > smtpd_sasl_auth_enable = yes
    > smtpd_sasl_path = private/auth
    > smtpd_sasl_type = dovecot
    > smtpd_sender_restrictions = hash:/etc/postfix/access
    > strict_8bitmime = no
    > strict_rfc821_envelopes = no
    > transport_maps = hash:/etc/postfix/transport
    > unknown_local_recipient_reject_code = 550
    > virtual_alias_domains = hash:/etc/postfix/virtual
    > virtual_alias_maps = hash:/etc/postfix/virtual
    >
    > Die von mir verwendeten, nicht funktionierenden SMTP Server
    > Einstellung in Thunderbird:
    >
    > Port: 25
    > Verbindungssicherheit: SSL/TLS
    >

    Bitte ohne SSL versuchen. Das kann so nicht gehen da du in Postfix
    nichts in dieser Hinsicht konfiguriert hast.

    > Authentifizierungsmethode: Passwort, normal
    >
    > Natürlich habe ich die anderen Möglichkeiten mit Thunderbird (ohne
    > Erfolg) probiert.
    >

    Wenns dann immer noch nicht geht, bitte den Auszug aus dem Log von dem
    betreffenden Versuch schicken.

    > Der Abruf von Mails über IMAP funktioniert ja, trotzdem hier die
    > Server Einstellungen:
    >
    > Port: 993
    > Verbindungssicherheit: SSL/TLS
    > Authentifizierungsmethode: Passwort, normal
    >

    Markus

    • Ferdinand Gruber sagt:

      Am 18.12.2013 21:46, schrieb Markus Hohlmeier:
      >> Die von mir verwendeten, nicht funktionierenden SMTP Server
      >> Einstellung in Thunderbird:
      >>
      >> Port: 25
      >> Verbindungssicherheit: SSL/TLS
      >>
      >
      > Bitte ohne SSL versuchen. Das kann so nicht gehen da du in Postfix
      > nichts in dieser Hinsicht konfiguriert hast.
      >

      Ohne SSL funktioniert es ja, sehe ich gerade!

      Wahrscheinlich habe ich so viel herumgeändert, dass ich das gar nicht
      mehr bemerkt habe. =-O
      Ich hatte gedacht, dass das Zertifikat, das ich für Dovecot erstellt
      habe, hier auch verwendet wird.

      Der Server läuft übrigens unter Suse 12.3

      Nun, da es ohne Verschlüsselung geht, sollte es aber auch mit
      Verschlüsselung gelingen, dachte ich.
      Nun habe ich nach einer Anleitung, ein Zertifikat für Postfix mit
      folgenden Befehlen erstellt:

      mkdir /etc/postfix/ssl
      cd /etc/postfix/ssl/
      openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024

      chmod 600 smtpd.key
      openssl req -new -key smtpd.key -out smtpd.csr

      openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out
      smtpd.crt

      openssl rsa -in smtpd.key -out smtpd.key.unencrypted

      mv -f smtpd.key.unencrypted smtpd.key
      openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out
      cacert.pem -days 3650

      Dann habe ich nach der gleichen Anleitung die Postfix-Konfiguration
      ergänzt bzw. geändert:

      postconf -e „mydomain = xxxxx.xx“
      postconf -e „myhostname = xxx.xxxxx“
      postconf -e „mynetworks = 127.0.0.0/8“
      postconf -e „smtpd_sasl_local_domain =“
      postconf -e „smtpd_sasl_auth_enable = yes“
      postconf -e „smtpd_sasl_security_options = noanonymous“
      postconf -e „broken_sasl_auth_clients = yes“
      postconf -e „smtpd_recipient_restrictions =
      permit_sasl_authenticated,permit_mynetworks,check_relay_domains“
      postconf -e „inet_interfaces = all“
      postconf -e „alias_maps = hash:/etc/aliases“
      postconf -e „smtpd_tls_auth_only = no“
      postconf -e „smtp_use_tls = yes“
      postconf -e „smtpd_use_tls = yes“
      postconf -e „smtp_tls_note_starttls_offer = yes“
      postconf -e „smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key“
      postconf -e „smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt“
      postconf -e „smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem“
      postconf -e „smtpd_tls_loglevel = 1“
      postconf -e „smtpd_tls_received_header = yes“
      postconf -e „smtpd_tls_session_cache_timeout = 3600s“
      postconf -e „tls_random_source = dev:/dev/urandom“

      Die gesamte Konfiguration schaut jetzt so aus:

      postconf -n

      alias_maps = hash:/etc/aliases
      biff = no
      broken_sasl_auth_clients = yes
      canonical_maps = hash:/etc/postfix/canonical
      command_directory = /usr/sbin
      config_directory = /etc/postfix
      content_filter =
      daemon_directory = /usr/lib/postfix
      data_directory = /var/lib/postfix
      debug_peer_level = 2
      debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd
      $daemon_directory/$process_name $process_id & sleep 5
      defer_transports =
      delay_warning_time = 1h
      disable_dns_lookups = no
      disable_mime_output_conversion = no
      html_directory = /usr/share/doc/packages/postfix-doc/html
      inet_interfaces = all
      inet_protocols = all
      mail_owner = postfix
      mail_spool_directory = /var/mail
      mailbox_command =
      mailbox_size_limit = 0
      mailbox_transport =
      mailq_path = /usr/bin/mailq
      manpage_directory = /usr/share/man
      masquerade_classes = envelope_sender, header_sender, header_recipient
      masquerade_domains =
      masquerade_exceptions = root
      message_size_limit = 0
      message_strip_characters =
      mydestination = $myhostname, localhost.$mydomain
      mydomain = yyyy.yy
      myhostname = xxx.xxxxx
      mynetworks = 127.0.0.0/8
      newaliases_path = /usr/bin/newaliases
      queue_directory = /var/spool/postfix
      readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
      relay_domains = $mydestination, hash:/etc/postfix/relay
      relayhost =
      relocated_maps = hash:/etc/postfix/relocated
      sample_directory = /usr/share/doc/packages/postfix-doc/samples
      sender_canonical_maps = hash:/etc/postfix/sender_canonical
      sendmail_path = /usr/sbin/sendmail
      setgid_group = maildrop
      smtp_tls_note_starttls_offer = yes
      smtp_use_tls = yes
      smtpd_client_restrictions =
      smtpd_helo_required = no
      smtpd_helo_restrictions =
      smtpd_recipient_restrictions =
      permit_sasl_authenticated,permit_mynetworks,check_relay_domains
      smtpd_sasl_auth_enable = yes
      smtpd_sasl_local_domain =
      smtpd_sasl_path = private/auth
      smtpd_sasl_security_options = noanonymous
      smtpd_sasl_type = dovecot
      smtpd_sender_restrictions = hash:/etc/postfix/access
      smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
      smtpd_tls_auth_only = no
      smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
      smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
      smtpd_tls_loglevel = 1
      smtpd_tls_received_header = yes
      smtpd_tls_session_cache_timeout = 3600s
      smtpd_use_tls = yes
      strict_8bitmime = no
      strict_rfc821_envelopes = no
      tls_random_source = dev:/dev/urandom
      transport_maps = hash:/etc/postfix/transport
      unknown_local_recipient_reject_code = 550
      virtual_alias_domains = hash:/etc/postfix/virtual
      virtual_alias_maps = hash:/etc/postfix/virtual

      Leider funktioniert es jetzt trotzdem nicht, mit Thunderbird eine
      verschlüsselte SMTP Verbindung zum Server zu verwenden..
      Ich nehme an, der Durcheinander in Postfix ist jetzt perfekt.
      Die Anleitung, nach der ich im Prinzip vorgegangen bin, ist hier zu
      finden und ist wahrscheinlich etwas veraltet:
      http://www.howtoforge.de/anleitung/der-perfekte-server-opensuse-103-32-bit/7/

      Bitte um Hilfe.
      Ferdinand


      Ferdinand Gruber
      f.gruber@eduhi.at
      00 43 7249 48737
      00 43 650 542 88 33
      Grieskirchner Straße 22
      4701 Bad Schallerbach
      LPIC-1 zertifiziert

      • Peer Heinlein sagt:

        Am 18.12.2013 23:48, schrieb Ferdinand Gruber:

        > Die Anleitung, nach der ich im Prinzip vorgegangen bin, ist hier zu
        > finden und ist wahrscheinlich etwas veraltet:

        Postfixbuch, Kapitel 20.2 ab Seite 592.

        Peer


        Heinlein Support GmbH
        Schwedter Str. 8/9b, 10119 Berlin

        http://www.heinlein-support.de

        Tel: 030 / 405051-42
        Fax: 030 / 405051-19

        Zwangsangaben lt. §35a GmbHG: HRB 93818 B / Amtsgericht
        Berlin-Charlottenburg,
        Geschäftsführer: Peer Heinlein — Sitz: Berlin

        • Ferdinand Gruber sagt:

          Am 19.12.2013 12:55, schrieb Peer Heinlein:
          > Am 18.12.2013 23:48, schrieb Ferdinand Gruber:
          >
          >> Die Anleitung, nach der ich im Prinzip vorgegangen bin, ist hier zu
          >> finden und ist wahrscheinlich etwas veraltet:
          > Postfixbuch, Kapitel 20.2 ab Seite 592.
          >
          > Peer

          Ich sehe im Logfile, dass mein Problem am Zertifikat liegen muss:

          warning: cannot get RSA certificate from file
          /etc/postfix/ssl/smtpd.crt: disabling TLS support
          warning: TLS library problem: 27879:error:02001002:system
          library:fopen:No such file or
          directory:bss_file.c:404:fopen(‚/etc/postfix/ssl/smtpd.crt‘,’re‘):
          warning: TLS library problem: 27879:error:20074002:BIO
          routines:FILE_CTRL:system lib:bss_file.c:406:
          warning: TLS library problem: 27879:error:140DC002:SSL
          routines:SSL_CTX_use_certificate_chain_file:system lib:ssl_rsa.c:722:

          In der Anleitung im Postfixbuch scheitere ich schon bei der Erstellung
          des Zertifikats.
          Der im Buch angegebene Pfad /usr/lib/ssl/misc existiert bei mir (Suse
          13.1) nicht.

          Wie kann ich die notwendigen Zertifikatdateien für postfix unter Suse
          13.1 erstellen?
          Warum kann man nicht jene von Dovecot verwenden. Ich habe ja für Dovecot
          ein Zertifikat erzeugt.
          Der Mailabruf über IMAP funktioniert ja über SSL/TLS.

          Fragen über Fragen … :-[

          Danke für jeden Tipp
          Ferdinand


          Ferdinand Gruber
          f.gruber@eduhi.at
          00 43 7249 48737
          00 43 650 542 88 33
          Grieskirchner Straße 22
          4701 Bad Schallerbach
          LPIC-1 zertifiziert

          • Peer Heinlein sagt:

            Am 19.12.2013 15:57, schrieb Ferdinand Gruber:

            > Der im Buch angegebene Pfad /usr/lib/ssl/misc existiert bei mir (Suse
            > 13.1) nicht.

            /usr/share/ssl/misc

            > Warum kann man nicht jene von Dovecot verwenden. Ich habe ja für Dovecot
            > ein Zertifikat erzeugt.

            Kannst Du. Das ist 1:1 das gleiche.

            Peer


            Heinlein Support GmbH
            Schwedter Str. 8/9b, 10119 Berlin

            http://www.heinlein-support.de

            Tel: 030 / 405051-42
            Fax: 030 / 405051-19

            Zwangsangaben lt. §35a GmbHG: HRB 93818 B / Amtsgericht
            Berlin-Charlottenburg,
            Geschäftsführer: Peer Heinlein — Sitz: Berlin

          • Ferdinand Gruber sagt:

            Am 19.12.2013 16:28, schrieb Peer Heinlein:
            > Warum kann man nicht jene von Dovecot verwenden. Ich habe ja für Dovecot
            > ein Zertifikat erzeugt.
            > Kannst Du. Das ist 1:1 das gleiche.
            Von Dovecot finde ich folgende zwei Dateien:

            /etc/ssl/certs/dovecot.pem
            /etc/ssl/private/dovecot.pem

            Ich habe nun die alten Pfade auskommentiert und die neuen
            in/etc/postfix/main.cf eingetragen:

            # smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
            # smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
            # smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem

            smtpd_tls_key_file = /etc/ssl/private/dovecot.pem
            smtpd_tls_cert_file = /etc/ssl/certs/dovecot.pem

            CAfile finde ich keines. Braucht man das?

            Es funktioniert jedenfalls noch nicht.
            Die letzte Meldung im Logfile /var/log/mail nach einem Sendeversuch mit
            Thunderbird als SMTP Client ist:

            Dec 19 17:24:06 xxxxxxx postfix/smtpd[29223]: connect from
            212-197-137-81.adsl.highway.telekom.at[212.197.137.81]

            Nach einer Weile kommt dann:

            Dec 19 17:25:21 xxxxxxx postfix/smtpd[29223]: lost connection after
            UNKNOWN from 212-197-137-81.adsl.highway.telekom.at[212.197.137.81]
            Dec 19 17:25:21 xxxxxxx postfix/smtpd[29223]: disconnect from
            212-197-137-81.adsl.highway.telekom.at[212.197.137.81]

            Danke im Voraus für weitere Hilfe
            Ferdinand


            Ferdinand Gruber
            f.gruber@eduhi.at
            00 43 7249 48737
            00 43 650 542 88 33
            Grieskirchner Straße 22
            4701 Bad Schallerbach
            LPIC-1 zertifiziert

          • Ferdinand Gruber sagt:

            Am 19.12.2013 17:38, schrieb Ferdinand Gruber:
            > Es funktioniert jedenfalls noch nicht.
            > Die letzte Meldung im Logfile /var/log/mail nach einem Sendeversuch
            > mit Thunderbird als SMTP Client ist:
            >
            > Dec 19 17:24:06 xxxxxxx postfix/smtpd[29223]: connect from
            > 212-197-137-81.adsl.highway.telekom.at[212.197.137.81]
            >
            > Nach einer Weile kommt dann:
            >
            > Dec 19 17:25:21 xxxxxxx postfix/smtpd[29223]: lost connection after
            > UNKNOWN from 212-197-137-81.adsl.highway.telekom.at[212.197.137.81]
            > Dec 19 17:25:21 xxxxxxx postfix/smtpd[29223]: disconnect from
            > 212-197-137-81.adsl.highway.telekom.at[212.197.137.81]
            >
            Könnte es vielleicht an der Firewall liegen?:

            Folgende Ports sind auf diesem Server offen:

            22/tcp open ssh
            25/tcp open smtp
            80/tcp open http
            110/tcp open pop3
            143/tcp open imap
            443/tcp open https
            993/tcp open imaps
            995/tcp open pop3s

            Wie gesagt, ich verwende in Thunderbird die Einstellungen

            Port: 25
            Verbindungssicherheit: SSL/TLS
            Authentifizierungsmethode: Passwort/normal

            Gruß
            Ferdinand


            Ferdinand Gruber
            f.gruber@eduhi.at
            00 43 7249 48737
            00 43 650 542 88 33
            Grieskirchner Straße 22
            4701 Bad Schallerbach
            LPIC-1 zertifiziert

          • Ralf Petry sagt:

            ähm,
            müsste das nicht Port 587 sein?

            Am 19.12.13 17:48, schrieb Ferdinand Gruber:
            > Wie gesagt, ich verwende in Thunderbird die Einstellungen
            >
            > Port: 25
            > Verbindungssicherheit: SSL/TLS
            > Authentifizierungsmethode: Passwort/normal

          • Werner Flamme sagt:

            Ferdinand Gruber [19.12.2013 17:38]:
            >
            > smtpd_tls_key_file = /etc/ssl/private/dovecot.pem
            > smtpd_tls_cert_file = /etc/ssl/certs/dovecot.pem
            >
            > CAfile finde ich keines. Braucht man das?

            Nein. Du kannst bei openSUSE und SLES auch

            smtpd_tls_CApath = /etc/ssl/certs

            und bei Bedarf auch

            smtp_tls_CApath = /etc/ssl/certs

            angeben.

            HDH, Werner

          • Ferdinand Gruber sagt:

            Am 19.12.2013 15:57, schrieb Ferdinand Gruber:
            > Am 19.12.2013 12:55, schrieb Peer Heinlein:
            >> Postfixbuch, Kapitel 20.2 ab Seite 592.
            Ich habe jetzt genau nach der Anleitung im Buch die drei Dateien
            erstellt und nach /etc/postfix/ssl/ kopiert:

            /etc/postfix/ssl # dir
            -rw-r–r– 1 root root 3247 19. Dez 23:40 newcert.pem
            -rw——- 1 root root 916 19. Dez 23:40 newkey.pem
            -rw-r–r– 1 root root 700 19. Dez 23:40 newreq.pem

            Möglicherweise habe ich aber die Verweise nicht richtig
            in/etc/postfix/main.cf eingetragen:

            smtpd_tls_key_file = /etc/postfix/ssl/newkey.pem
            smtpd_tls_cert_file = /etc/postfix/ssl/newcert.pem
            smtpd_tls_CAfile = /etc/postfix/ssl/newreq.pem

            Das bekomme ich mit telnet:

            telnet localhost 25
            Trying 127.0.0.1…
            Connected to localhost.
            Escape character is ‚^]‘.
            220 xx.xxxxxxx.xx ESMTP Postfix
            EHLO localhost
            250-xx.xxxxxxx.xx
            250-PIPELINING
            250-SIZE
            250-VRFY
            250-ETRN
            250-STARTTLS
            250-AUTH PLAIN
            250-AUTH=PLAIN
            250-ENHANCEDSTATUSCODES
            250-8BITMIME
            250 DSN

            Sollte eigentlich passen, denke ich.

            Übrigens: Wenn ich in Thunderbird die Option STARTTLS nehme, dann wird
            zwar auch kein Mail verschickt, ich bekomme aber vom Server eines retour
            mit folgendem Inhalt:

            Transcript of session follows.

            Out: 220xx.xxxxxxx.xx ESMTP Postfix
            In: EHLO [10.0.0.140]
            Out: 250-xx.xxxxxxx.xx
            Out: 250-PIPELINING
            Out: 250-SIZE
            Out: 250-VRFY
            Out: 250-ETRN
            Out: 250-STARTTLS
            Out: 250-AUTH PLAIN
            Out: 250-AUTH=PLAIN
            Out: 250-ENHANCEDSTATUSCODES
            Out: 250-8BITMIME
            Out: 250 DSN
            In: STARTTLS
            Out: 454 4.7.0 TLS not available due to local problem
            In: QUIT
            Out: 221 2.0.0 Bye

            For other details, see the local mail logfile

            Danke für weitere Hilfe.
            Ferdinand

          • Peer Heinlein sagt:

            Am 20.12.2013 00:28, schrieb Ferdinand Gruber:
            > Ich habe jetzt genau nach der Anleitung im Buch die drei Dateien
            > erstellt und nach /etc/postfix/ssl/ kopiert:
            >
            > /etc/postfix/ssl # dir
            > -rw-r–r– 1 root root 3247 19. Dez 23:40 newcert.pem
            > -rw——- 1 root root 916 19. Dez 23:40 newkey.pem
            > -rw-r–r– 1 root root 700 19. Dez 23:40 newreq.pem

            newreq ist ein New-REQUEST, ein „Request for Signing“. Das ist der
            nicht-unterschriebene Schlüssel.

            Also:

            newreq + CA-Unterschrift = newcert

            Du brauchst hier newreq nicht mehr, denn Dein Zertifikat ist ja
            (mittlerweile unterschrieben) in newcert.

            CAfile bleibt leer — und das ist im Buch auch nicht anders gezeigt.

            > Connected to localhost.
            > Escape character is ‚^]‘.
            > 220 xx.xxxxxxx.xx ESMTP Postfix
            > EHLO localhost
            > 250-xx.xxxxxxx.xx
            > 250-PIPELINING
            > 250-SIZE
            > 250-VRFY
            > 250-ETRN
            > 250-STARTTLS
            > 250-AUTH PLAIN
            > 250-AUTH=PLAIN
            > 250-ENHANCEDSTATUSCODES
            > 250-8BITMIME
            > 250 DSN
            >
            > Sollte eigentlich passen, denke ich.

            Sinnvoll ist es, bei diesem Test hier noch einmal STARTTLS einzugeben.
            Dann sieht man, ob er hier noch einen Fehler wirft oder bereit ist, TLS
            zu sprechen.

            > In: STARTTLS
            > Out: 454 4.7.0 TLS not available due to local problem

            Eben. Es geht also nicht. Und im Logfile von Postfix steht dann auch,
            was da los ist. => LESEN.

            (Aber vermutlich kann es schon wegen CAfile nicht gehen, siehe oben)

            Peer


            Heinlein Support GmbH
            Schwedter Str. 8/9b, 10119 Berlin

            http://www.heinlein-support.de

            Tel: 030 / 405051-42
            Fax: 030 / 405051-19

            Zwangsangaben lt. §35a GmbHG: HRB 93818 B / Amtsgericht
            Berlin-Charlottenburg,
            Geschäftsführer: Peer Heinlein — Sitz: Berlin

  2. Ferdinand Gruber sagt:

    SMTP funktioniert jetzt – mit Port 25 und STARTTLS (Thunderbird als Client)
    Habe folgende Änderung am Server gemacht:

    In der/etc/postfix/master.cf folgende Zeile aktiviert:

    tlsmgr unix – – n 1000? 1 tlsmgr

    Habe aber auch bei postfix noch Änderungen gemacht, daher hier noch
    einmal postconf -n

    alias_maps = hash:/etc/aliases
    biff = no
    broken_sasl_auth_clients = yes
    canonical_maps = hash:/etc/postfix/canonical
    command_directory = /usr/sbin
    config_directory = /etc/postfix
    content_filter =
    daemon_directory = /usr/lib/postfix
    data_directory = /var/lib/postfix
    debug_peer_level = 2
    debugger_command =
    PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd
    $daemon_directory/$process_name $process_id & sleep 5
    defer_transports =
    delay_warning_time = 1h
    disable_dns_lookups = no
    disable_mime_output_conversion = no
    html_directory = /usr/share/doc/packages/postfix-doc/html
    inet_interfaces = all
    inet_protocols = all
    mail_owner = postfix
    mail_spool_directory = /var/mail
    mailbox_command =
    mailbox_size_limit = 0
    mailbox_transport =
    mailq_path = /usr/bin/mailq
    manpage_directory = /usr/share/man
    masquerade_classes = envelope_sender, header_sender, header_recipient
    masquerade_domains =
    masquerade_exceptions = root
    message_size_limit = 0
    message_strip_characters =
    mydestination = $myhostname, localhost.$mydomain
    mydomain = xxxxxx.xx
    myhostname = xxxxx.$mydomain
    mynetworks = 127.0.0.0/8
    newaliases_path = /usr/bin/newaliases
    queue_directory = /var/spool/postfix
    readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
    relay_domains = $mydestination, hash:/etc/postfix/relay
    relayhost =
    relocated_maps = hash:/etc/postfix/relocated
    sample_directory = /usr/share/doc/packages/postfix-doc/samples
    sender_canonical_maps = hash:/etc/postfix/sender_canonical
    sendmail_path = /usr/sbin/sendmail
    setgid_group = maildrop
    smtp_tls_note_starttls_offer = yes
    smtp_use_tls = yes
    smtpd_client_restrictions =
    smtpd_enforce_tls = no
    smtpd_helo_required = no
    smtpd_helo_restrictions =
    smtpd_recipient_restrictions = permit_sasl_authenticated,
    permit_mynetworks, reject_unauth_destination
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_local_domain =
    smtpd_sasl_path = private/auth
    smtpd_sasl_security_options = noanonymous
    smtpd_sasl_type = dovecot
    smtpd_sender_restrictions = hash:/etc/postfix/access
    smtpd_tls_auth_only = no
    smtpd_tls_cert_file = /etc/postfix/ssl/newcert.pem
    smtpd_tls_key_file = /etc/postfix/ssl/newkey.pem
    smtpd_tls_loglevel = 1
    smtpd_tls_received_header = yes
    smtpd_tls_security_level = may
    smtpd_tls_session_cache_timeout = 3600s
    smtpd_use_tls = yes
    strict_8bitmime = no
    strict_rfc821_envelopes = no
    tls_random_source = dev:/dev/urandom
    transport_maps = hash:/etc/postfix/transport
    unknown_local_recipient_reject_code = 550
    virtual_alias_domains = hash:/etc/postfix/virtual
    virtual_alias_maps = hash:/etc/postfix/virtual

    Vielen Dank allen Beteiligten für die Geduld.
    Ferdinand