# E-Mail Probleme trotz 1:1 Howto mit Ubuntu



## mathias172 (17. Jan. 2008)

Hallo Forum,

ich habe das Howto (http://www.howtoforge.com/perfect_server_ubuntu7.10) befolgt und habe trotzdem massive Probleme mit dem Mailserver. Es will einfach nicht so, wie es soll. Ich habe den Server mittlerweile zum dritten Mal neu aufgesetzt und komme immer auf das gleiche Ergebnis.

Problem:
Installation wie im Howto, dann ISPConfig mit Uebimia Webmailer und PHPMyAdmin. Es scheint alles bis auf die Mails zu funktionieren. 

Wenn ich mich per Mailclient anmelden will (unverschlüsselt) mit dem Usernamen info@domain.com werden trotz gültigem Passwort 
Verbindungen als "failed" abgelehnt.


```
...
Jan 17 13:04:34 static courierpop3login: Connection, ip=[::ffff:84.188.6.50]
Jan 17 13:04:43 static postfix/smtpd[14857]: warning: SASL per-process initialization failed: generic failure
Jan 17 13:04:43 static postfix/smtpd[14857]: fatal: SASL per-process initialization failed
Jan 17 13:04:44 static postfix/master[5168]: warning: process /usr/lib/postfix/smtpd pid 14857 exit status 1
Jan 17 13:04:44 static postfix/master[5168]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling
Jan 17 13:04:54 static courierpop3login: LOGIN FAILED, user=info@gothic-nights.com, ip=[::ffff:84.188.6.50]
Jan 17 13:05:04 static courierpop3login: Disconnected, ip=[::ffff:84.188.6.50]
...
```
Dasselbe Szenario in Uebimiau ergibt folgende EInträge und funktioniert:

```
...
Jan 17 13:08:03 static courierpop3login: Connection, ip=[::ffff:127.0.0.1]
Jan 17 13:08:04 static courierpop3login: LOGIN, user=webuser1_1, ip=[::ffff:127.0.0.1]
Jan 17 13:08:04 static courierpop3login: LOGOUT, user=webuser1_1, ip=[::ffff:127.0.0.1], top=0, retr=0, rcvd=12, sent=88, time=1
...
```
Eingehende Mails werden ebenfalls nicht akzeptiert. Fehlermeldung des sendenden Servers:


```
5.1.1 <info@domain.com> ... User unknown
```
Meine main.cf sieht so aus:

```
# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

# TLS parameters
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_use_tls = yes
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = static.xxxxxxxxxxxxxxxxx.clients.your-server.de
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
#mydestination = static.xxxxxxxxxxxxxxxxxxx.clients.your-server.de, localhost.xxxxxxxxxxxxxxxxxxxx.clients.your-server.de, localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom

virtual_maps = hash:/etc/postfix/virtusertable

mydestination = /etc/postfix/local-host-names
```
Kann sich das jemand erklären? Wie gesagt setze ich das Howto 1:1 um und jedes Mal dasselbe Ergebnis. Was habe ich übersehen?

Vielen Dank für Eure Hilfe.

PS: Im Howto kann die Installation von php5-json gestrichen werden (gibts nicht). Bei mir fehlte auch noch Cron und IPtables.


----------



## Till (17. Jan. 2008)

Poste bitte mal den Inhalt der Datei:

/etc/default/saslauthd


----------



## mathias172 (17. Jan. 2008)

Hallo, hier der Inhalt


```
#
# Settings for saslauthd daemon
#

# Should saslauthd run automatically on startup? (default: no)
START=yes

# Which authentication mechanisms should saslauthd use? (default: pam)
#
# Available options in this Debian package:
# getpwent  -- use the getpwent() library function
# kerberos5 -- use Kerberos 5
# pam       -- use PAM
# rimap     -- use a remote IMAP server
# shadow    -- use the local shadow password file
# sasldb    -- use the local sasldb database file
# ldap      -- use LDAP (configuration is in /etc/saslauthd.conf)
#
# Only one option may be used at a time. See the saslauthd man page
# for more information.
#
# Example: MECHANISMS="pam"
MECHANISMS="pam"

# Additional options for this mechanism. (default: none)
# See the saslauthd man page for information about mech-specific options.
MECH_OPTIONS=""

# How many saslauthd processes should we run? (default: 5)
# A value of 0 will fork a new process for each connection.
THREADS=5

# Other options (default: -c)
# See the saslauthd man page for information about these options.
#
# Example for postfix users: "-c -m /var/spool/postfix/var/run/saslauthd"
# Note: See /usr/share/doc/sasl2-bin/README.Debian
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"
```


----------



## Till (17. Jan. 2008)

Das ist soweit ok, rif bitte mal:

/etc/init.d/saslauthd restart

auf, und schau im mail.log nach, welche Fehlermeldungen dort erscheinen.


----------



## mathias172 (17. Jan. 2008)

Hallo Till,

nach dem Restart gibt es keine Einträge in der mail.log. Rein gar nichts.


----------



## Till (17. Jan. 2008)

Ok, steht was im syslog oder gab es eine Fehlermeldung beim restart?


----------



## mathias172 (17. Jan. 2008)

Keine Fehlermeldung beim Restart, nur


```
root@static:~# /etc/init.d/saslauthd restart
 * Restarting SASL Authentication Daemon saslauthd                       [ OK ]
```
Im Syslog kommt auch nix, nur eben mit etwas Verspätung nach dem Restart

```
Jan 17 14:07:47 static postfix/smtpd[15983]: warning: SASL per-process initialization failed: generic failure
Jan 17 14:07:47 static postfix/smtpd[15983]: fatal: SASL per-process initialization failed
Jan 17 14:07:48 static postfix/master[5168]: warning: process /usr/lib/postfix/smtpd pid 15983 exit status 1
Jan 17 14:07:48 static postfix/master[5168]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling
```


----------



## mathias172 (17. Jan. 2008)

...gerade mal statt Ubuntu 7.10 das Image 7.04 aufgespielt (ist ein Hetzner Server). Leider selbes Problem auch wenn man mal SASL ganz aus dem Spiel lässt.

Ich wünsch' mir gerade meine Sendmail-Zeiten zurück  Nein, im Ernst: Wenn ich zu doof bin oder gar betriebsblind, dann geb ich es gern zu, Hauptsache der Server läuft.

Ich setze jetzt nochmal 7.10 auf und bin für jede Hilfe und jeden Tipp dankbar.


----------



## Till (18. Jan. 2008)

> Leider selbes Problem auch wenn man mal SASL ganz aus dem Spiel lässt.


Die gleiche Fehlermeldung selbst ohne sasl? Das ist an sich nicht möglich, da´Postfix nicht mit SAS interagiert, wenn Du ihn nicht entsprechend konfiguriert hast.

Ich installiere exact nach den Howtos täglich Server und im Howto fehlt definitiv nichts, es kann aber immer sein, dass ein Hoster selbst Änderungen am Linux System vorgenommen hat, die man erst rückgängig machen müsste. Neuinstallieren des Betriebssystems hilft da aber recht wenig, da muss man wohl alle SASL Konfigurationsdateien durchgehen. Du solltest auch immer das Minimal Imgae nehem und kein LAMP image, wenn der Hoster es anbietet.

Letztens habe ich ISPConfig auf einem Hetzner Debian System installiert (minimal image) und da lief es astrein.


----------



## mathias172 (18. Jan. 2008)

Hallo Till und danke für Deine Bemühungen.

Ich installiere genau nach eben diesem Image, das Ubuntu 7.10 Minimal 64 Bit von Hetzner.

Ich gebe zu, dass bislang nur mit sendmail gearbeitet habe und bei Postfix ein wenig außen vor bin. Hast Du vielleicht eine main.cf zur Hand, die bei Dir läuft?

Ich kann nach einer weiteren Neuinstallation per Webmailer einloggen und Mails verschicken. Per Mailclient kann ich keine Mails senden und auch der Server akzeptiert keine ankommenden Mails. Ein allgemeines Postfix-Problem also. "Relayin denied". mynetworks steht auf 127.0.0.1/8, sollte ich dort suchen?

Gruß,
Mathias


----------



## Till (18. Jan. 2008)

> "Relayin denied". mynetworks steht auf 127.0.0.1/8, sollte ich dort suchen?


Nein, das ist ok. Poste bitte mal den Inhalt der aktuellen main.cf und sieh nach, ob die Domain des Empfängers in /etc/postfix/local-host-names steht und die Emailadresse in der virtusertable Datei.


----------



## mathias172 (18. Jan. 2008)

mynetworks ändern zu wollen, war -wenn man mal drüber nachdenkt- eine Schnapsidee, ist ja logisch.

Ich habe mal Server komplett neu gestartet und siehe da, eine Besserung gibts:

Der Server empfängt Mails. Allerdings ist mir das ganze nicht klar, warum das nicht auch nach dem Neustart von Postfix ging. Gut, nehme ich einfach mal so hin 

Beim Mail senden nach wie vor dasselbe Problem. Ich habe mal versucht, alles auf Nötigste runter zu kürzen, bin aber eben relativ frisch in Postfix. Ich fürchte, ich habe vielleicht zu viel weggekürzt.


```
# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = xxxxxxxxxxxxxxxxx.clients.your-server.de
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
#mydestination = xxxxxxxxxxxxxxx.clients.your-server.de, localhost.clients.your-server.de, localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all

virtual_maps = hash:/etc/postfix/virtusertable
```


----------



## Till (18. Jan. 2008)

Was bei Dir auf jeden Fall fehlt, ist der Verweis auf die local-host-names Datei. Die Postfix Konfiguration, die Du nach dem Ende des Howtos erhalten hattest, muss eigentlich nie geändert werden. Die Postfix main.cf sollte etwa so aussehen (ist von einem Debian System):


```
# See /usr/share/postfix/main.cf.dist for a commented, more complete version

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

myhostname = myhost.mydomain.tld
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
relayhost =
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
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_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
home_mailbox = Maildir/
mailbox_command =

virtual_maps = hash:/etc/postfix/virtusertable
mydestination = /etc/postfix/local-host-names
```


----------



## mathias172 (18. Jan. 2008)

Ich versuchs jetzt einfach nochmal in Ruhe bei einer Tasse Kaffee und ohne Hektik.

Die Zeile mydestination... hat gefehlt, steht aber mit drin, sorry.
Ich melde mich nachher nochmal. Danke für Deine Geduld.


----------



## mathias172 (18. Jan. 2008)

hallo tim,

habe gerade sasl nochmal neu installiert und auch postfix neu konfiguriert.
Ich komme mir vor wie ein dau aber ich troll habe die falschen pfade zu den zertifikaten angegeben, klar dass das nicht funktioniert.

zusätzlich zu dem fiel mir auf, dass mein terminal einen anderen zeichsatz nutz, als der server. allerding betraf das nur das einfach anführungszeichen ('). so kann man sich die schönsten schreibfehler einbauen.

ich danke dir für deine hilfe, deine main.cf hat mich letztendlich auf meine lösung gebracht.


----------

