OVH Community, your new community space.

Email Server einrichten


sledge0303
04.02.08, 22:27
Na dann happy Mailing

netfloh
04.02.08, 22:06
huhu ich wollte dir nur mal bescheid sagen, dass ich es jetzt dieses Tutorial genutzt habe:http://workaround.org/articles/ispma...fehlerbehebung

damit funktioniert alles zufriedenstellen. Kein offener Relay Server. Alles mit Authentifizierung und TLS Verschlüsselung!

Danke für deine Hilfe

Flo

sledge0303
02.02.08, 13:03
Zitat Zitat von netfloh
Guten Morgen!
habe deine Vorschläge übernommen. Leider ohne Erfolg! Ich werde das System noch einmal neu aufsetzten.
Es ist übrigens kein Ubuntu System mit GUI! Werde erstmal noch selber nach den Fehlern suchen bevor ich dir ne Mail schreibe!

Recht herzlichen Dank für deine Hilfe !!!
Hmmm, noch ein kleiner Tipp am Rande: erstelle einen Testuser und erstelle dessen Passwort im Klartext, also ohne MD5 Verschlüsselung.

netfloh
02.02.08, 10:43
Guten Morgen!
habe deine Vorschläge übernommen. Leider ohne Erfolg! Ich werde das System noch einmal neu aufsetzten.
Es ist übrigens kein Ubuntu System mit GUI! Werde erstmal noch selber nach den Fehlern suchen bevor ich dir ne Mail schreibe!

Recht herzlichen Dank für deine Hilfe !!!

sledge0303
01.02.08, 22:25
Also, ich hab mir mal eben das Howto vom Falko angeschaut und deine Ausgaben mal schnell überflogen.

Erstmal fehlt das hier, was aber nicht zur Lösung deines Problems reichen wird:

Code:
cat >> /etc/postfix/master.cf << "EOF"
smtps     inet  n       -       n       -       -       smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
587       inet  n       -       n       -       -       smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
EOF
Dann schreiben wir mal etwas um, machen aber von der momentanen eine Sicherheitskopie

Code:
mv /etc/courier/authmysqlrc /etc/courier/authmysqlrc.OLD

cat > /etc/courier/authmysqlrc << "EOF"
MYSQL_SERVER            localhost
MYSQL_USERNAME          mysqluser
MYSQL_PASSWORD          password
MYSQL_PORT              0
MYSQL_OPT               0
MYSQL_DATABASE          mailsystem
MYSQL_USER_TABLE        users
MYSQL_CLEAR_PWFIELD     password
MYSQL_UID_FIELD         5000
MYSQL_GID_FIELD         5000
MYSQL_LOGIN_FIELD       email
MYSQL_HOME_FIELD        "/home/vmail"
MYSQL_MAILDIR_FIELD CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/')
EOF

chmod 660 /etc/courier/authmysqlrc
chown daemon:daemon /etc/courier/authmysqlrc
Hast du auch mal nachgesehen, ob 'daemon' auch wirklich der User ist, unter dem Courier bei Ubuntu läuft?
Ich benutze kein Ubuntu und da musst du selbst ein wenig aufpassen!

Noch ein kleiner Hinweis:
Wenn das nicht klappt, rate ich dir das ganze Zeugs neu zu installieren!
Du hast offensichtlich eine Krücke erstellt, wenn man nur an die Dateirechte denkt...
Das liegt auch daran, dass du offensichtlich kein Grundlagenwissen in Sachen Administration vorweisen kannst. Ubuntu wird bestimmt bei dir mit GUI installiert sein und wirst ggf. deine Dateien mit einem Editor bearbeiten.
Auch das ist nicht im Sinne des Erfinders, da bestimmte Textpassagen wie ein Zeilenumbruch oder TAB falsch dargestellt werden.
Es kann auch an der DB liegen, dass du dort irgendeine Grütze drin steht, dass aber kann ich von der Ferne nicht beurteilen.
Kannst mir auch eine Mail schicken und ich schau mir das auf deinem System genau an, wenn ein virtuelles Bierchen ausgibst
Meine Addy findest im Wiki.
Sorry, aber so wie wir bisher verfahren sind, kommen wir nicht weiter!

Gruß Thomas

PS: es gibt zum posten von Configs und Skripten auch Codetags, dass gestaltet sich a beim lesen augenfreundlicher und b kann man evtl. falsche Zeilenumbrüche besser erkennen. Einfach über dem Editor die Raute anklicken - für das nächste mal

netfloh
01.02.08, 20:50
alle Rechte neu vergeben. Sieht jetzt so aus wie bei dir!
Dienste habe ich auch alle neu gestartet!

Leider gleiche Fehler. Kann man nicht den Grad des Fehlers sich genauer anzeigen lassen. Es kommt immer nur:

Feb 1 21:40:54 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:127.0.0.1]
Feb 1 21:42:35 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:127.0.0.1]
Feb 1 21:42:46 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:77.185.238.255]
Feb 1 21:42:51 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:77.185.238.255]

sledge0303
01.02.08, 19:25
Zitat Zitat von netfloh
oki, dass war geändert, ich weiß aber nicht warum!
Leider funktioniert die Anmeldung immer noch nicht. Müssen eventuell noch andere Dateien von den Rechten geändert werden?

-rw-rw---- 1 daemon daemon 3682 2008-01-31 12:38 authdaemonrc
-rw-r--r-- 1 netfloh netfloh 11 2008-01-22 01:01 authmodulelist
-rw-rw---- 1 daemon daemon 421 2008-01-31 18:18 authmysqlrc
-rw-r--r-- 1 root root 8521 2008-01-31 12:40 authmysqlrc_original
-rw-r--r-- 1 netfloh netfloh 13507 2008-01-31 15:31 imapd
-rw-r--r-- 1 netfloh netfloh 336 2007-10-08 01:07 imapd.cnf
-rw------- 1 daemon daemon 2142 2008-01-22 01:45 imapd.pem
-rw-r--r-- 1 netfloh netfloh 6211 2007-10-08 01:07 imapd-ssl
-rw-r--r-- 1 netfloh netfloh 3331 2007-10-08 01:07 pop3d
-rw-r--r-- 1 netfloh netfloh 336 2007-10-08 01:07 pop3d.cnf
-rw------- 1 daemon daemon 2142 2008-01-22 01:45 pop3d.pem
-rw-r--r-- 1 netfloh netfloh 5752 2007-10-08 01:07 pop3d-ssl
Autsch, da ist einiges schief gelaufen...hier sind meine Berechtigungen

Code:
-rw-rw----  1 daemon daemon   214 2007-12-02 00:56 authdaemonrc
-rw-r--r--  1 root   root      11 2007-12-02 00:29 authmodulelist
-rw-rw----  1 daemon daemon   469 2007-12-02 00:56 authpgsqlrc
-rw-r--r--  1 root   root   13506 2007-02-13 10:51 imapd
-rw-------  1 daemon daemon   336 2007-02-13 10:51 imapd.cnf
-rw-------  1 daemon daemon  2367 2007-12-13 15:38 imapd.pem
-rw-r--r--  1 root   root    6211 2007-02-13 10:51 imapd-ssl
-rw-r--r--  1 root   root    3331 2007-02-13 10:51 pop3d
-rw-------  1 daemon daemon   336 2007-02-13 10:51 pop3d.cnf
-rw-------  1 daemon daemon  2367 2007-12-13 15:38 pop3d.pem
-rw-r--r--  1 root   root    5752 2007-02-13 10:51 pop3d-ssl
Dann schau mal gleich nach, wie diese in Postfix gesetzt sind

Code:
-rw-r--r--  1 root root      425 2007-12-02 00:30 dynamicmaps.cf
-rw-r--r--  1 root root     1980 2008-01-08 23:41 main.cf
-rw-r--r--  1 root root     4767 2007-12-22 16:00 master.cf
-rw-r-----  1 root postfix   139 2007-12-02 00:45 pgsql_domains.cf
-rw-r-----  1 root postfix   132 2007-12-02 00:45 pgsql_virtual.cf
-rw-r-----  1 root postfix   145 2007-12-02 00:45 pgsql_forwarding.cf
-rw-r-----  1 root postfix   201 2007-12-02 00:45 pgsql_mailboxes.cf
-rw-r--r--  1 root root    17975 2007-03-21 12:17 postfix-files
-rwxr-xr-x  1 root root     6840 2007-03-21 12:17 postfix-script
-rwxr-xr-x  1 root root    22239 2007-03-21 12:17 post-install
drwxr-xr-x  2 root root     4096 2007-12-02 00:57 sasl
-rw-r--r--  1 root root     1834 2007-12-13 15:36 smtpd.cert
-rw-r--r--  1 root root     1675 2007-12-13 15:36 smtpd.key
Wie du siehst, der Eigentümer ist root und die Gruppe 'postfix'. Diese Berechtigungen müssen für deine virtuellen Dateien gesetzt werden. Selbiges wenn nach postfix/sasl gehst. Sonst kann Postfix nicht auf diese Dateien zugreifen!

netfloh
01.02.08, 19:14
oki, dass war geändert, ich weiß aber nicht warum!
Leider funktioniert die Anmeldung immer noch nicht. Müssen eventuell noch andere Dateien von den Rechten geändert werden?

-rw-rw---- 1 daemon daemon 3682 2008-01-31 12:38 authdaemonrc
-rw-r--r-- 1 netfloh netfloh 11 2008-01-22 01:01 authmodulelist
-rw-rw---- 1 daemon daemon 421 2008-01-31 18:18 authmysqlrc
-rw-r--r-- 1 root root 8521 2008-01-31 12:40 authmysqlrc_original
-rw-r--r-- 1 netfloh netfloh 13507 2008-01-31 15:31 imapd
-rw-r--r-- 1 netfloh netfloh 336 2007-10-08 01:07 imapd.cnf
-rw------- 1 daemon daemon 2142 2008-01-22 01:45 imapd.pem
-rw-r--r-- 1 netfloh netfloh 6211 2007-10-08 01:07 imapd-ssl
-rw-r--r-- 1 netfloh netfloh 3331 2007-10-08 01:07 pop3d
-rw-r--r-- 1 netfloh netfloh 336 2007-10-08 01:07 pop3d.cnf
-rw------- 1 daemon daemon 2142 2008-01-22 01:45 pop3d.pem
-rw-r--r-- 1 netfloh netfloh 5752 2007-10-08 01:07 pop3d-ssl

sledge0303
01.02.08, 18:47
Zitat Zitat von netfloh

Dateirechte:
-rw-r--r-- 1 netfloh netfloh 3682 2008-01-31 12:38 /etc/courier/authdaemonrc

bz:
-rw-r--r-- 1 netfloh netfloh 421 2008-01-31 18:18 /etc/courier/authmysqlrc
Hier liegt der Hund offensichtlich begraben

Code:
chmod 660 /etc/courier/authdaemonrc
chown daemon:daemon /etc/courier/authdaemonrc
chmod 660 /etc/courier/authmysqlrc
chown daemon:daemon /etc/courier/authmysqlrc
Du kannst nicht einfach Dateirechte umändern wie es dir passt. Wenn du sonst noch irgendetwas geändert hast, dann wieder zurückschreiben.
User 'daemon' ist der User für Courier, so ist es bei Debian und da Ubuntu ein Derivat von Debian ist, wird es auch dieser User dort sein.
'daemon' muss auch die Rechte auf die Zertifikate besitzen.
Hier ein Beispiel, die Pfade zu den Zertifikaten entsprechend anpassen

Code:
chown daemon:daemon /etc/courier/pop3d.pem
chown daemon:daemon /etc/courier/imapd.pem
chmod 600 /etc/courier/pop3d.pem
chmod 600 /etc/courier/imapd.pem

netfloh
01.02.08, 17:21
POP 3 Anmeldung:
telnet localhost pop3
Password:
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
+OK Hello there.
user $email
+OK Password required.
pass $pw
-ERR Login failed.
quit
+OK Better luck next time.
Connection closed by foreign host.

Master.CF:

smtp inet n - - - - smtpd
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - n 300 1 qmgr
#qmgr fifo n - - 300 1 oqmgr
tlsmgr unix - - - 1000? 1 tlsmgr
rewrite unix - - - - - trivial-rewrite
bounce unix - - - - 0 bounce
defer unix - - - - 0 bounce
trace unix - - - - 0 bounce
verify unix - - - - 1 verify
flush unix n - - 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - - - - smtp
relay unix - - - - - smtp
-o smtp_fallback_relay=
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - - - - showq
error unix - - - - - error
retry unix - - - - - error
discard unix - - - - - discard
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - - - - lmtp
anvil unix - - - - 1 anvil
scache unix - - - - 1 scache


In der authdaemonrc:
nur eintrag geändert:
authmodulelist="authmysql"

Authmysqlrc:
MYSQL_SERVER localhost
MYSQL_USERNAME $hier_der_username_halt
MYSQL_PASSWORD $password
MYSQL_PORT 0
MYSQL_DATABASE mailsystem
MYSQL_USER_TABLE users
MYSQL_CRYPT_PWFIELD password
#MYSQL_CLEAR_PWFIELD password
MYSQL_UID_FIELD 5000
MYSQL_GID_FIELD 5000
MYSQL_LOGIN_FIELD email
MYSQL_HOME_FIELD "/home/vmail"
MYSQL_MAILDIR_FIELD CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/')
#MYSQL_NAME_FIELD
DEBUG_LOGIN=2

Dateirechte:
-rw-r--r-- 1 netfloh netfloh 3682 2008-01-31 12:38 /etc/courier/authdaemonrc

bz:
-rw-r--r-- 1 netfloh netfloh 421 2008-01-31 18:18 /etc/courier/authmysqlrc

sledge0303
01.02.08, 15:17
Zitat Zitat von netfloh
1 login $Email $Passwort
1 NO Login failed.
2 list "" "*"
2 NO Error in IMAP command received by server.
3 logout
* BYE Courier-IMAP server shutting down
3 OK LOGOUT completed
Connection closed by foreign host.

In der Mail Error steht folgendes drin:

Feb 1 15:27:05 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:127.0.0.1]
Feb 1 15:27:46 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:127.0.0.1]
Hi,

da haben wir schon einmal einen Ansatzpunkt gefunden. Die Sache mit dem Host lassen wir erstmal außen vor, bis der Server erstmal deine Anmeldung erfolgreich entgegen nimmt.
Ich möchte aber bitte vorher noch einen Loginversuch per POP3 über die Konsole sehen:

Code:
telnet localhost pop3
user meine@fomain.de
pass deinpasswort
quit
Poste bitte noch die Ausgaben folgender Dateien

Code:
/etc/postfix/master.cf
/etc/courier/authdaemonrc
/etc/courier/authmysqlrc
Kommentierungen bitte nicht posten. Am besten nur das, was du bearbeitest hast.

...und die Dateirechte mal testweise kontrollieren

Code:
ls -la /etc/courier/authdaemonrc
ls -la /etc/courier/authmysqlrc

netfloh
01.02.08, 14:33
mit mydomain und myhostname ist mir noch etwas unklar! wie meinst du das?
Die Anpassung auf die Werte 5-10 finde ich auch nicht. In welcher Config soll der Parameter stehen?

Wenn ich genau die Telnet Syntax eingebe kommt folgendes:

sudo telnet localhost imap2
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2004 Double Precision, Inc. See COPYING for distribution information.
1 login $Email $Passwort
1 NO Login failed.
2 list "" "*"
2 NO Error in IMAP command received by server.
3 logout
* BYE Courier-IMAP server shutting down
3 OK LOGOUT completed
Connection closed by foreign host.

In der Mail Error steht folgendes drin:

Feb 1 15:27:05 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:127.0.0.1]
Feb 1 15:27:46 ks35xxx imaplogin: LOGIN FAILED, ip=[::ffff:127.0.0.1]

sledge0303
01.02.08, 12:20
Hi,

also der Login in den IMAP2 hast du im falschen Syntax eingegeben.
Der Login in den IMAP Server muss wie in meinem Beispiel aussehen, dabei musst du haargenau auf den Syntax achten, dazu gehören auch die fortlaufenden Nummern vor den Kommandos!

Code:
telnet localhost imap2
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
* OK Dovecot ready.
1 login sledge0303@sledgedomain.de einpasswort
1 OK Logged in.
2 list "" "*"
* LIST (\HasNoChildren) "." "INBOX"
2 OK List completed.
3 logout
* BYE Logging out
3 OK Logout completed.
Connection closed by foreign host.
Was Postfix angeht

Code:
recipient_delimiter = +
Das kannst erstmal rausschmeissen, verursacht nur Probleme.

Code:
config_directory = /etc/postfix
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
inet_interfaces = all
sind überflüssig weil in Postfix default
Code:
mydomain = frickelware.net
myhostname = frickelware.net
Stichwort für myhostname: Reverse DNS

Code:
host frickelware.net
frickelware.net has address 213.2x.x.x
frickelware.net mail is handled by 1 frickelware.net.
Mache mal eine 5 oder 10 daraus (Empfehlung)

Versuche nochmal den IMAP Login, wie oben beschrieben und poste die 'komplette' Ausgabe des Servers zzgl. deines Kommandos (User/Passwort) und Domain zensieren
Vorher mach aber noch die Logfiles leer und schau nach was in der mail.warn/err/info/log drin steht

netfloh
01.02.08, 10:53
die postconf:

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
config_directory = /etc/postfix
inet_interfaces = all
mailbox_size_limit = 0
mydestination = mail.frickelware.net, ks35291.kimsufi.com, localhost.kimsufi.com, localhost
myhostname = mail.frickelware.net
mynetworks = 127.0.0.0/8
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks
recipient_delimiter = +
relayhost =
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
smtpd_use_tls = yes
transport_maps = proxy:mysql:/etc/postfix/mysql-virtual_transports.cf
virtual_alias_domains =
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual_forwardings.cf, mysql:/etc/postfix/mysql-virtual_email2email.cf
virtual_gid_maps = static:5000
virtual_mailbox_base = /home/vmail
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_uid_maps = static:5000

bei dem telnet login kommt folgendes:

login NO Error in IMAP command received by server.
list "" "*"
list NO Error in IMAP command received by server.


als Anleitung habe ich diese hier genutzt:
http://www.howtoforge.de/howto/virtu...ql-ubuntu-710/

jedoch ohne quota!

Als Root-Server wird ein Ubuntu 6.06 LTS bei OVH genutzt

Danke schonmal für deine Hilfe!

mfg

netfloh

sledge0303
31.01.08, 17:44
Zitat Zitat von netfloh
Über die Console auf dem Server kann ich von diesen Accounts auch Emails verschicken, welche z.B bei GMX oder meiner Uni Mail auch ankommen.

Wenn ich jetzt jedoch mich per Email Programm oder Squirrelmail anmelden möchte sagt er mein Login ist fehlerhaft! in der mail.err steht folgendes drin:
imaplogin: LOGIN FAILED,(hier endweder locale IP oder externe)

ich habe auch schon gegoogle nach dem Problem. Es scheint an der authentifizierung liegen.

Theoretisch muss ich das Password per Secret in die Datenbank eintragen!

Könntet ihr vielleicht weiterhelfen woran es noch liegen könnte? Kann auch die Configs posten!

Danke erstmal

netfloh
Bevor wir uns genauer mit deinem Problem auseinandersetzen, welches Howto hast du benutzt und wie sieht deine momentane Konfiguration des MTA aus?
Dahingehend poste bitte die Ausgabe von

Code:
postconf -n
Kannst du dich auf der Konsole mit einem Benutzernamen und Kennwort anmelden?
Code:
# telnet localhost imap2
1 login $user@domain.de $deinpassword
2 list "" "*"
3 logout
Ich bin momentan noch beim schreiben eines ziemlich kompakten Tutorial über Mailserver und Dienste...

netfloh
31.01.08, 17:17
danke für die schnelle Antwort! ich habe zum Teil diese Tutorium genutzt.
Es tritt jedoch ein Fehler auf. Später dazu mehr.

Zur Zeit funktioniert es, dass ich in der MySQL Datenbank virtuelle Domainen und Benutzer anlegen kann. Diese Benutzer können Emails empfangen (diese werden auch in einem Ordner gespeichert). Über die Console auf dem Server kann ich von diesen Accounts auch Emails verschicken, welche z.B bei GMX oder meiner Uni Mail auch ankommen.

Wenn ich jetzt jedoch mich per Email Programm oder Squirrelmail anmelden möchte sagt er mein Login ist fehlerhaft! in der mail.err steht folgendes drin:
imaplogin: LOGIN FAILED,(hier endweder locale IP oder externe)

ich habe auch schon gegoogle nach dem Problem. Es scheint an der authentifizierung liegen.

Theoretisch muss ich das Password per Secret in die Datenbank eintragen!

Könntet ihr vielleicht weiterhelfen woran es noch liegen könnte? Kann auch die Configs posten!

Danke erstmal

netfloh

F4RR3LL
27.01.08, 19:06
http://wiki.freakempire.de/doku.php/...ch_und_postfix

oder

http://workaround.org/articles/ispmail-sarge/

gibt massig Möglichkeiten. Aber musste aufpassen das du ned zur spamschleuder wirst..das geht schneller als man glaubt

Gruß Sven

netfloh
27.01.08, 18:45
Hallo User,
ich würde gerne auf einem OVH Root einen Mail Server (mit TLS, POP, Imap und Webfrontend)installieren. Gibt es irgendwo HowTo's wie man dies anstellt? Die Beschreibung bei Ubuntu Wikis finde ich nicht wirklich gut!

Danke

netfloh