Postfix mit smtp-auth unter Sarge [gelöst]

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Postfix mit smtp-auth unter Sarge [gelöst]

Beitrag von Freeman » 17.01.2004 19:53:28

Hi,
nach dem die unter Tipps eingestellte Doku für smtp-auth unter sarge nicht mehr funktionert, würde ich gerne wissen, wer es schon mal zum Laufen bekommen hat und dies nur mal grob auflisten könnte was er dafür gemacht hat.

Hier meine, leider noch erfolglose, Vorgehensweise:

Code: Alles auswählen

apt-get install postfix-tls sasl2-bin libsasl2 libsasl2-modules qpopper

postconf -e 'smtpd_sasl_local_domain=$myhostname'
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_mynetworks, permit_sasl_authenticated, check_relay_domains'

echo 'pwcheck_method: saslauthd' >> /etc/postfix/sasl/smtpd.conf
echo 'mech_list: PLAIN LOGIN' >> /etc/postfix/sasl/smtpd.conf

mkdir -p /var/spool/postfix/var/run/saslauthd/mux
chown -c -h root:sasl /var/spool/postfix/var/run/saslauthd/mux
chmod -c 764 /var/spool/postfix/var/run/saslauthd/mux
chown -c -h root:sasl /var/spool/postfix/var/run/saslauthd

adduser postfix sasl

Im File /etc/default/saslauthd den Start des Dienstes auf YES gesetzt
Im File /etc/init.d/saslauthd im Header
PARAMS="-m /var/spool/postfix/var/run/saslauthd/mux"
hinzugefügt.
In /etc/pam.d sowie unter /var/spool/postfix/etc/pam.d/ ein File "smtp" erstellt mit dem Inhalt
auth            required       pam_unix_auth.so
account         required       pam_unix_acct.so
eingefügt.
Meine Clients (Outlook Express 6 / TheBat!) werden immer noch abgewiesen:
warning: SASL authentication failure: cannot connect to saslauthd server: Permission denied
postfix/smtpd[359]: warning: SASL authentication failure: Password verification failed
postfix/smtpd[359]: warning: pD95904A8.dip.t-dialin.net[217.89.4.168]: SASL PLAIN authentication failed

Momentan etwas ratlos....
Zuletzt geändert von Freeman am 21.01.2004 15:26:10, insgesamt 1-mal geändert.
--
Have fun

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Beitrag von Freeman » 19.01.2004 17:56:06

So, nun hat sich das Berechtigungsproblem von selbst gelöst, nach dem am Samstag in Sarge das Postfixpaket von Vers.1 auf Vers.2 gehoben wurde und ich komplett neu installiert habe. Dafür erscheint nun ein anderer Fehler:

Code: Alles auswählen

postfix/smtpd[11618]: warning: SASL authentication failure: cannot connect to saslauthd server: Connection refused
postfix/smtpd[11618]: warning: SASL authentication failure: Password verification failed
postfix/smtpd[11618]: warning: p50803056.dip.t-dialin.net[80.128.48.86]: SASL PLAIN authentication failed
Klaro, dass der Rest dann nicht funktioniert, interessant ist nur der Eintrag "refused". Warum wird die Verbindung mit dem Dienst verweigert?

Ausserdem will Posttfix 2 den Eintrag

Code: Alles auswählen

check_relay_domains
nicht mehr sondern nur noch

Code: Alles auswählen

reject_unauth_destination
Hat keiner irgendeinen Ansatzpunkt wo ich noch was "schrauben" könnte?
--
Have fun

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Postfix smtp-auth unter Sarge [gelöst]

Beitrag von Freeman » 21.01.2004 15:24:56

Erfolg :D Nun geht auch Postfix unter Sarge in einer chroot-Umgebung mit smtp-auth über den saslauthd-daemon und PAM-Authentifizierung.

Hier ein kurzer Überblick:

Postfix-TLS installieren und SASL2:

Code: Alles auswählen

apt-get install postfix-tls sasl2-bin libsasl2 libsasl2-modules qpopper
Als erstes wird dann die /etc/postfix/main.cf angepasst:

Code: Alles auswählen

smtpd_sasl_local_domain=
smtpd_sasl_auth_enable=yes
smtpd_sasl_security_options=noanonymous
broken_sasl_auth_clients=yes
smtpd_recipient_restrictions=permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
Unter /etc/postfix/sasl/ ein File smtpd.conf erstellen mit folgendem Inhalt:

Code: Alles auswählen

pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
saslauthd_path: /var/run/saslauthd/mux/mux
autotransition:true
Unter /etc/pam.d/ ein File smtp erstellen mit folgendem Inhalt:

Code: Alles auswählen

auth required /lib/security/pam_unix_auth.so
account required /lib/security/pam_unix_acct.so
password required /lib/security/pam_unix_passwd.so
session required /lib/security/pam_unix_session.so
Damit der saslauthd-daemon mit Postfix-chroot funktioniert, müssen zusätzlich ein paar Konfigurationen getätigt werden.
Erstellen eines Verzeichnisses für saslauthd in der chroot-Umgebung von Postfix und Vergabe von Berechtigungen:

Code: Alles auswählen

mkdir -p /var/spool/postfix/var/run/saslauthd/mux
chown -c -h root:sasl /var/spool/postfix/var/run/saslauthd/mux
chmod -c 776 /var/spool/postfix/var/run/saslauthd/mux
Im File /etc/default/saslauthd bei dem Starteintrag das #-Zeichen entfernen.

Im File /etc/init.d/saslauthd folgende Zeile im Header unter PWDIR=/var/run/saslauthd einfügen:

Code: Alles auswählen

PARAMS="-m /var/spool/postfix/var/run/saslauthd/mux"
Der Postfix-User ist der Gruppe sasl hinzuzufügen:

Code: Alles auswählen

adduser postfix sasl
Nun noch mit

Code: Alles auswählen

/etc/init.d/postfix reload
und

Code: Alles auswählen

etc/init.d/saslauthd start
die Konfiguration aktivieren.

Nun sollte SMTP-Auth funktionieren.
Das ganze habe ich unter Sarge, Stand vom 21.01.2004 getestet. Für Fehler usw. bin ich nicht verantwortlich :wink: .

Wenn jemand noch einen Tipp hat wie man es besser lösen kann oder ein Sicherheitsproblem erkennt, der lässt es mich bitte wissen...
--
Have fun

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Beitrag von Freeman » 21.01.2004 22:40:27

Und nun das ganze noch als Script zum "automatisierten" installieren:

Code: Alles auswählen

#!/bin/sh
apt-get install postfix-tls
apt-get install libsasl2 libsasl2-modules libsasl2-modules-mysql sasl2-bin qpopper
#main.cf anpassen
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_mynetworks, permit_sasl_authenticated, reject_unauth_destination'
postconf -e 'virtual_alias_maps = hash:/etc/postfix/virtual'
#smtpd.conf einrichten
rm /etc/postfix/sasl/smtpd.conf
echo 'pwcheck_method: saslauthd' > /etc/postfix/sasl/smtpd.conf
echo 'mech_list: plain login' >> /etc/postfix/sasl/smtpd.conf
echo 'saslauthd_path: /var/run/saslauthd/mux/mux' >> /etc/postfix/sasl/smtpd.conf
echo 'autotransition:true' >> /etc/postfix/sasl/smtpd.conf
#smtp in /etc/pam.d/ anpassen
rm /etc/pam.d/smtp
echo '#%PAM-1.0' > /etc/pam.d/smtp
echo 'auth required /lib/security/pam_unix_auth.so' >> /etc/pam.d/smtp
echo 'account required /lib/security/pam_unix_acct.so' >> /etc/pam.d/smtp
echo 'password required /lib/security/pam_unix_passwd.so' >> /etc/pam.d/smtp
echo 'session required /lib/security/pam_unix_session.so' >> /etc/pam.d/smtp
#chroot-pfad für saslauthd erstellen
mkdir -p /var/spool/postfix/var/run/saslauthd/mux
chown -c -h root:sasl /var/spool/postfix/var/run/saslauthd/mux
chmod -c 776 /var/spool/postfix/var/run/saslauthd/mux
#saslauth dienst auf automatischen start einstellen
rm /etc/default/saslauthd
echo 'START=yes' > /etc/default/saslauthd
echo 'MECHANISMS="pam"' >> /etc/default/saslauthd
adduser postfix sasl
echo ""
echo "WICHTIG!!!!!!"
echo "In /etc/init.d/saslauthd folgendes im Header einfügen:"
echo " PARAMS="-m /var/spool/postfix/var/run/saslauthd/mux" "
echo ""
echo "Postfix reloaden und /etc/init.d/saslauthd start ausführen
echo "nicht vergessen :-))"
Was der Script nicht macht ist der Eintrag

Code: Alles auswählen

PARAMS="-m /var/spool/postfix/var/run/saslauthd/mux"
im /etc/init.d/saslauthd File. Den darf man nicht vergessen sonst geht nix :cry:
--
Have fun

Benutzeravatar
/bin/false
Beiträge: 51
Registriert: 14.02.2004 14:25:14

Beitrag von /bin/false » 14.02.2004 14:27:51

Geht nicht mit Woody, gell? Ich bekomme jedenfalls keine sasl2-related Pakete... :cry:

Benutzeravatar
blackm
Moderator und Co-Admin
Beiträge: 5921
Registriert: 02.06.2002 15:03:17
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von blackm » 14.02.2004 15:16:46

Ja, es gibt ein paar Unterschiede zwischen Woody und Sarge. Fuer Woody gibt es aber auch schon fertige Anleitungen, z.B. http://workaround.org/articles/ispmail/

by, Martin
Schöne Grüße

Martin

Neu im Forum? --> https://wiki.debianforum.de/debianforum ... tensregeln
Log- und Konfigurationsdatein? --> pastebin.php
Forum unterstützen? --> https://wiki.debianforum.de/debianforum.de/Spenden

Benutzeravatar
Executor
Beiträge: 10
Registriert: 15.02.2004 12:34:35

Beitrag von Executor » 15.02.2004 13:02:49

Vielen Dank für die Anleitung. Ich bin nun auch schon gut eine Woche am rumbasteln mit SMTP AUTH und bisher nicht viel weiter gekommen.
Nachdem ich das oben gepostete shellskript laufen gelassen habe, krieg ich bei der authentifizierung nun folgende fehlermeldung im syslog.

Code: Alles auswählen

Feb 15 12:31:11 arbiter postfix/smtpd[11151]: connect from arbiter[127.0.0.1]
Feb 15 12:32:17 arbiter postfix/smtpd[11151]: warning: SASL authentication problem: unrecognized plaintext verifier saslauthd
Feb 15 12:32:17 arbiter postfix/smtpd[11151]: warning: arbiter[127.0.0.1]: SASL LOGIN authentication failed
Ich hab mich dazu mit "AUTH PLAIN `printf 'username\0username\0password' | mimencode`" versucht beim webserver zu authentifizieren, wobei das selbe resultat auch bei der verwendung eines mailclients mit plain authentifizierung herauskommt (mit oder ohne tls spielt dabei keine rolle).

auf ehlo localhost antwortet der server:
250-mail.irgendeinhost.com
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-STARTTLS
250-AUTH GSSAPI LOGIN PLAIN
250-AUTH=GSSAPI LOGIN PLAIN
250-XVERP
250 8BITMIME

Bedeuted diese fehlermeldung nun, dass die authentifizierung fehlgeschlagen ist, weil login/passwort falsch sind oder deutet das auf ein anderes problem hin?
Ich hab usernamen/password eines bestehenden users verwendet und zudem auch noch einen eintrag in der sasl2db erstellt zur sicherheit.
Seh ich das richtig, dass die konfiguration aus obigem skript die sasl2 datenbank nicht verwendet sondern die logindaten der systemaccount?

Benutzeravatar
/bin/false
Beiträge: 51
Registriert: 14.02.2004 14:25:14

Beitrag von /bin/false » 15.02.2004 13:32:06

Seh ich das richtig, dass die konfiguration aus obigem skript die sasl2 datenbank nicht verwendet sondern die logindaten der systemaccount?
Ich würde auch gerne mal erfahren, welche Methoden es für SMTP-Auth gibt und wie sie sich grundsätzlich unterscheiden. Das wird irgendwie nirgends wirklich klar.
PWCHECK - benutzt die UNIX-Passwörter, kann aber nicht mit Postfix in chroot benutzt werden.
SASLDB - benutzt eine eigene Datenbank, muss für jeden Nutzer extra hinzugefügt werden.
SASLAUTH - ??
SASL2* - ??

Wäre wirklich nett das wirwarr mal zu verstehen :wink:

/edit1

Ganz konkret: Mein Postfix läuft nun in der Variante PWCHECK (kann ich dann chroot wieder aktivieren?). Allerdings dauert es ganz schön lange bis die Mails schliesslich verschickt werden. Naja, das ist ja zu verschmerzen. Das wirkliche Problem ist nun allerdings, dass die Mails alle in der Mail Queue stecken bleiben. Ich hab beim besten Willen keine Ahnung warum sie nicht an den entgültigen Empfänger verschickt werden... 8O

/edit2
Ich habs eben ausprobiert. Der Server nimmt nur Mails an wenn smtp nicht im chroot läuft...

MTAs zu konfigurieren scheint mit das schwierigste Unterfangen zu sein, dem man sich so stellen kann, oder? Überall gibt es hier Threads dazu und auch massig HowTos, aber trotzdem haben so viele immer wieder Schweirigkeiten... :roll:
Zuletzt geändert von /bin/false am 15.02.2004 18:17:27, insgesamt 2-mal geändert.

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Beitrag von Freeman » 15.02.2004 17:47:07

Hi,

@Executor
Richtig, es wird nicht die sasl2db benutzt, sondern die Systemaccounts. Sprich, jeder Mailuser braucht einen Systemaccount ohne Shell. Willst Du die sasl2db nutzen, dann musst du das File /etc/default/saslauthd anpassen.

@bin/false
Ich würde auch gerne mal erfahren, welche Methoden es für SMTP-Auth gibt und wie sie sich grundsätzlich unterscheiden. Das wird irgendwie nirgends wirklich klar.
PWCHECK - benutzt die UNIX-Passwörter, kann aber nicht mit Postfix in chroot benutzt werden.
SASLDB - benutzt eine eigene Datenbank, muss für jeden Nutzer extra hinzugefügt werden.
SASLAUTH - ??
SASL2* - ??
SMTP-Auth ist ja nur ein Mechanismus zur Benutzerauthentifizierung für SMTP. Es gibt da noch viele Möglichkeiten (pop-before-smtp, tls usw.), smtp-auth ist aber die gängigste und imho eine sehr praktische Lösung. Unter Woody war/ist smtp-auth relativ einfach entweder mittels pwcheck oder sasldb zu lösen. Wobei der Unterschied darin liegt, dass pwcheck auf die Systemuser zugreift, die sasldb eine eigenständige Userverwaltung darstellt.

PWCheck funktioniert unter Woody mit Postfix in einer chroot-Umgebung tadellos, dafür gibt es auch ein HowTo im Tipps-Bereich hier. Im Skript ist anstatt sasl2 libsasl7 zu verwenden, weil Woody kein sasl2 hat oder hatte?!?

Unter Sarge nutzt man die neuen Möglichkeiten von SASL2, nämlich den saslauthd. Man konfiguriert seine Anwendung nur noch für die Nutzung von SASL2 und im Konfigfile von saslauthd stellt man ein, ob man PAM (Unuxauthentifzizierung) oder die sasl2db nuzten will. Postfix läuft hier ebenfalls in einer chroot-Umgebung.

Was Du hernimmst liegt an Dir, ich bevorzuge die PAM-Methode, weil ich nur eine Benutzerverwaltung haben will. Zwar soll man aus Sicherheitsgründen so wenig Systemuser wie möglich anlegen, meine User haben aber keine Shell und so sehe ich persönlich das Sicherheitsrisiko als gemildert an.
--
Have fun

Benutzeravatar
/bin/false
Beiträge: 51
Registriert: 14.02.2004 14:25:14

Beitrag von /bin/false » 15.02.2004 18:01:17

Freeman hat geschrieben: PWCheck funktioniert unter Woody mit Postfix in einer chroot-Umgebung tadellos, dafür gibt es auch ein HowTo im Tipps-Bereich hier. Im Skript ist anstatt sasl2 libsasl7 zu verwenden, weil Woody kein sasl2 hat oder hatte?!?
Benutze PWCHECK mit Woody, aber irgndwie ging das ganze erst, als ich chroot ausgestellt hatt...Hm, naja vll wars doch ein anderes Schräubchen an dem ich gedreht hatte. :wink:
Freeman hat geschrieben: Unter Sarge nutzt man die neuen Möglichkeiten von SASL2, nämlich den saslauthd. Man konfiguriert seine Anwendung nur noch für die Nutzung von SASL2 und im Konfigfile von saslauthd stellt man ein, ob man PAM (Unuxauthentifzizierung) oder die sasl2db nuzten will. Postfix läuft hier ebenfalls in einer chroot-Umgebung.

Also wird PAM auch benutzt um die Systemuser am System anzumelden ...? Ist also quasi das Standard-Modul auch in Woody..
Freeman hat geschrieben: Was Du hernimmst liegt an Dir, ich bevorzuge die PAM-Methode, weil ich nur eine Benutzerverwaltung haben will. Zwar soll man aus Sicherheitsgründen so wenig Systemuser wie möglich anlegen, meine User haben aber keine Shell und so sehe ich persönlich das Sicherheitsrisiko als gemildert an.

Genauso ist es bei mir auch. Habe nur einen Benutzer mit Shell-Zugriff. Aber etwas mehr User die Mail und FTP nutzen, da ist es für mich einfacher, wenn Mail-Zugriff eben mit dem gleichen Passwort funktioniert, ohne dass ich es mit sasl noch anlegen muss...
Für einen relativen Anfänger wie mich ist das alles aber echt erstmal überfordernd...Lauter Begriffe, Methoden und Abhängigkeiten, da muss man erstaml Licht ins Dunkel bringen :wink:

Vielen Dank

Btw: Mein Beitrag von habe ich zeitgleich zu deiner Antwort noch editiert.

Benutzeravatar
Executor
Beiträge: 10
Registriert: 15.02.2004 12:34:35

Beitrag von Executor » 16.02.2004 12:34:05

Ganz konkret: Mein Postfix läuft nun in der Variante PWCHECK (kann ich dann chroot wieder aktivieren?). [...] Das wirkliche Problem ist nun allerdings, dass die Mails alle in der Mail Queue stecken bleiben. Ich hab beim besten Willen keine Ahnung warum sie nicht an den entgültigen Empfänger verschickt werden...
Das kenn ich :( Soweit war ich auch schon, allerdings hab ich dann nicht rausgefunden, weshalb die mails nicht verschickt wurden...

seit ich nun aber sasl2 installiert habe (das skript von diesem thread) sieht es mit pwcheck wieder recht gut aus, sprich die mails werden akzeptiert von sasl und auch verschickt. allerdings muss ich das noch weiter testen, da ich der sache noch nicht ganz traue.

Benutzeravatar
/bin/false
Beiträge: 51
Registriert: 14.02.2004 14:25:14

Beitrag von /bin/false » 16.02.2004 13:33:01

Executor hat geschrieben: Das kenn ich :( Soweit war ich auch schon, allerdings hab ich dann nicht rausgefunden, weshalb die mails nicht verschickt wurden...
Bei mir funzt es jetzt, es lag an einer falschen master.cf! Ich hab die How-Tows wohl etwas falsch verstanden:

Code: Alles auswählen

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (50)
# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd

#628      inet  n       -       -       -       -       qmqpd
pickup    fifo  n       -       -       60      1       pickup
cleanup   unix  n       -       -       -       0       cleanup
qmgr      fifo  n       -       -       300     1       qmgr
#qmgr     fifo  n       -       -       300     1       nqmgr
rewrite   unix  -       -       -       -       -       trivial-rewrite
bounce    unix  -       -       -       -       0       bounce
defer     unix  -       -       -       -       0       bounce
flush     unix  n       -       -       1000?   0       flush
smtp      unix  -       -       -       -       -       smtp
showq     unix  n       -       -       -       -       showq
error     unix  -       -       -       -       -       error
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
So läufts jetzt. Dauert zwar echt lange bis der Server die Mails annimt, aber er tut es.
smtp inet darf allerdings nicht im chroot laufen.

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Beitrag von Freeman » 16.02.2004 14:36:00

Hmm,

also, nur mal um alles noch mal auf einen gemeinsam Stand zu bringen:
  1. Postfix läuft sowohl unter Woody als auch unter Sarge in einer chroot-Umgebung
  2. Unter Woody geht nur der Skript aus dem Tipps-Bereich
  3. Dort ist aber ein Fehler bzgl. der libsasl2, welcher ich nur gegen libsasl7 getauscht habe
  4. Unter Sarge geht das HowTo unter Tipps nicht mehr!
  5. Mein "Script" installiert vollständig Postfix inkl. SMTP-Auth via PAM über saslauthd unter SARGE
Bei mir ist weder unter Woody noch unter Sarge Postfix langsam.
Ich würde folgendes Vorschlagen:

Meinen "Skript" Zeile für Zeile abarbeiten und die gemachten Einträge checken.
Insebsondere mit "pstree" checken, ob der saslauthd läuft.
Ich hab das ganze nun schon so oft installiert und es hat eigentlich immer geklappt. Sowohl die Woody-Installation aus dem Tipps-Bereich als auch meine Install für Sarge.

Schaut mal genau wie das File saslauthd aussieht (hier die Anpassungen):

Code: Alles auswählen

NAME=saslauthd
DAEMON="/usr/sbin/${NAME}"
DESC="SASL Authentication Daemon"
DEFAULTS=/etc/default/saslauthd
PWDIR=/var/run/saslauthd
PARAMS="-m /var/spool/postfix/var/run/saslauthd/mux"
--
Have fun

Benutzeravatar
/bin/false
Beiträge: 51
Registriert: 14.02.2004 14:25:14

Beitrag von /bin/false » 16.02.2004 19:32:07

Freeman hat geschrieben: Bei mir ist weder unter Woody noch unter Sarge Postfix langsam.
Nunja, ich hab dieses How-To befolgt, allerdings nachträglich die pwcheck mit dieser überschrieben. Es bleibt wie geschildert, nur lauffähig wenn smtp inet nicht gechrootet ist... :?: :!:
Und der Versand von Mails mit MozillaMail dauert exakt (hab gestoppt) 6,7sec.

Offensichtlich ist das kein Standard-Verhalten, ich weiss aber wirklich nicht woran es liegen könnte...

Code: Alles auswählen

init-+-apache---10*[apache]
     |-atd
     |-cron
     |-master-+-pickup
     |        |-qmgr
     |        `-trivial-rewrite
     |-miniserv.pl
     |-perl
     |-postmaster---postmaster---postmaster
     |-pwcheck
     |-safe_mysqld---mysqld---mysqld---2*[mysqld]
     |-sshd---sshd---sshd---bash---bash---pstree
     |-syslogd
     `-xinetd
(postmaster = postgresql)
hmm....äh... ja. 8O

Heisst das nun etwa, es dürfte bei mir gar ned gehen ???
Hmpf .... wie könnte ich denn Postfix, die ganzen Sasl Packete und PWCECK+Autostart sauber wieder löschen um dann mal, nun mit erweiterter Erfahrung das ganze neu zu installieren ?

Gruss nach München

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Beitrag von Freeman » 16.02.2004 22:50:10

@ /bin/false

Also, du hast also woody installiert. Ich kann Dir sagen wie Du Postfix bzw. jegliches Programm von Debian wieder wegbekommst:

apt-get --purge remove %programmname%

Ob das dann jedoch sauber ist, sprich alle Konfigfiles /etc/%programmname% bzw. manuelle Änderungen in den Verzeichnissen, das musst Du selber checken.

Am saubersten und für einen reibungslosen Betrieb würde ich Dir eine Neuinstallation raten. Das von Dir verlinkte HowTo kenne ich nicht, bin auch zu faul zum lesen :D , ein HowTo was einwandfrei funktioniert findet sich aber unter http://www.debianhowto.de . Wie Du dann Postfix mit smtp-auth unter woody installierst steht im Forum unter Tipps.
Eine Neuinstallation ist auch in ca. 15 Minuten vorbei (Rootserver), die Installation von Apache etc. nicht miteingerechnet. Ich würde aber eh Paket für Paket einrichtgen und konfigurieren, also erst mal Postfix richtig hinbekommen und dann weiter machen.
--
Have fun

Benutzeravatar
Kati
Beiträge: 24
Registriert: 08.02.2004 18:23:41

Beitrag von Kati » 18.02.2004 10:13:01

Hallo,
ich komme mit der Postfix-Installation von http://workaround.org/articles/ispmail/ nicht weiter:
First of all an important note (thanks to Ulrich Hammer). Remember that Postfix runs in a chroot environment. Thus it would not be able to access MySQL's socket file at /var/run/mysqld/mysqld.sock. There are two ways to work around this:

* Mario Duve (et al) propose an addition to the start section of /etc/init.d/postfix like this:
mkdir -p /var/spool/postfix/var/run/mysqld
chown mysql /var/spool/postfix/var/run/mysqld
ln /var/run/mysqld/mysqld.sock /var/spool/postfix/var/run/mysqld/mysqld.sock
* Or use the real hostname of the MySQL server instead of "localhost". This way database lookups will be done via UDP instead of UNIX sockets. In this case you will need to comment out the line "skip-networking" in the /etc/mysql/my.cnf file to enable the UDP listener.
Ist hier
mysqld.sock
oder
mysql.sock
gemeint?
Habe ich das richtig verstanden: Der laufende MySql-Sock wird in einem UNterverzeichnis von Postfix kopiert, dort Besitzer auf mysql geändert, dann ein Link darauf gesetzt?
Ich habe eine Idee:
mysqld_safe --user=mysql
Dann müßte doch Postfix damit klar kommen, oder?
Den zweiten Vorschlag habe ich gar nicht verstanden:
* Or use the real hostname of the MySQL server instead of "localhost". This way database lookups will be done via UDP instead of UNIX sockets. In this case you will need to comment out the line "skip-networking" in the /etc/mysql/my.cnf file to enable the UDP listener.
Grüße,
Kati

Benutzeravatar
Kati
Beiträge: 24
Registriert: 08.02.2004 18:23:41

Beitrag von Kati » 18.02.2004 11:12:34

Hi,
die Frage bezgl. mysqld.sock hat sich erledigt. Habe in /etc/myslq/my.cnf reingeschaut :)
Wenn ich dort

Code: Alles auswählen

skip-networking
eintrage, erhalte ich also UDP listener. Ja, aber woher weiß ich jetzt, wie der MySQL-Server heißt???

Gruß
Kati

Benutzeravatar
/bin/false
Beiträge: 51
Registriert: 14.02.2004 14:25:14

Beitrag von /bin/false » 21.02.2004 14:52:25

@Kati, ich verstehe deine letzte Frage nicht, ich glaube da bin ich nicht der einzige :?

@Freeman

Ich bin mittlerweile ein gutes Stück weiter. Nachdem ich mir schon einmal den Rooti geschrottet habe und ihn neu aufsetzen liess.

Ich setze nun auf Postfix, Cyrus und sasl2. Jeweils als Backport für woody:
cyrus21-common 2.1.16
cyrus21-imapd 2.1.16
cyrus21-admin 2.1.16
postfix 2.0.16-4
postfix-tls 2.0.16-4
postfix-pcre 2.0.16-4
saslbin 1.5.27-3
sasl2-bin 2.1.15-0

Doch irgendwie steig ich durch diesen ganzen sasl-kram nicht mehr durch. :evil:
Nachdem ich nun tausende How-Tos und und und gelesen habe ist ein totales Durcheinader entstanden.
Ich hoffe dur kannst mir helfen.

/etc/postfix/sasl/smtpd.conf

Code: Alles auswählen

pwcheck_method: auxprop
#sasl_pwcheck_method: auxprop
mechlist: plain login digestmd5
#auxprop_plugin: plain login digestmd5
/etc/postfix/main.cf

Code: Alles auswählen

command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
setgid_group = postdrop
biff = no
append_dot_mydomain = no
myhostname = hostname.serveranbieter.de
alias_maps = hash:/etc/aliases
myorigin = /etc/mailname
mydomain = domain.de
mydestination = hostname.serveranbieter.de, localhost.serveranbieter.de, localhost, domain.de
mynetworks = 127.0.0.0/8
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
notify_classes = resource, software, bounce, 2bounce, delay, policy, protocol
debug_peer_level = 2
# cyrus
mailbox_transport = cyrus
#mailbox_command = /usr/bin/procmail -t -a $EXTENSION
mailbox_size_limit = 0
#sasl
#smtpd_sasl_local_domain = $mydomain
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_networks, check_relay_domains
/etc/postfic/master.cf

Code: Alles auswählen

smtp      inet  n       -       n       -       -       smtpd
#628      inet  n       -       -       -       -       qmqpd
pickup    fifo  n       -       -       60      1       pickup
cleanup   unix  n       -       -       -       0       cleanup
qmgr      fifo  n       -       -       300     1       qmgr
#qmgr     fifo  n       -       -       300     1       nqmgr
rewrite   unix  -       -       -       -       -       trivial-rewrite
bounce    unix  -       -       -       -       0       bounce
defer     unix  -       -       -       -       0       bounce
flush     unix  n       -       -       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       -       -       -       smtp
relay     unix  -       -       -       -       -       smtp
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       -       -       -       showq
error     unix  -       -       -       -       -       error
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp

maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
cyrus     unix  -       n       n       -       -       pipe
  flags=R user=cyrus argv=/usr/sbin/cyrdeliver -e -m "${extension}" ${user}
# Cyrus 2.1.5 (Amos Gouaux)
#cyrus     unix  -       n       n       -       -       pipe
#  user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -d -t$nexthop -f$sender $recipient
scalemail-backend unix  -       n       n       -       2       pipe
  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
# only used by postfix-tls
#tlsmgr   fifo  -       -       n       300     1       tlsmgr
#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
mail.info

Code: Alles auswählen

Feb 21 14:21:04 vl09s20 postfix/master[19492]: daemon started -- version 2.0.16
Feb 21 14:21:27 vl09s20 postfix/smtpd[19510]: connect from p508964CC.dip.t-dialin.net[80.137.100.204]
Feb 21 14:21:31 vl09s20 postfix/smtpd[19510]: warning: SASL authentication failure: no secret in database
Feb 21 14:21:31 vl09s20 postfix/smtpd[19510]: warning: p508964CC.dip.t-dialin.net[80.137.100.204]: SASL CRAM-MD5 authentication failed
Feb 21 14:21:32 vl09s20 postfix/smtpd[19510]: warning: SASL authentication failure: Password verification failed
Feb 21 14:21:32 vl09s20 postfix/smtpd[19510]: warning: p508964CC.dip.t-dialin.net[80.137.100.204]: SASL PLAIN authentication failed
Feb 21 14:21:33 vl09s20 postfix/smtpd[19510]: warning: p508964CC.dip.t-dialin.net[80.137.100.204]: SASL LOGIN authentication failed
Feb 21 14:21:37 vl09s20 postfix/smtpd[19510]: lost connection after AUTH from p508964CC.dip.t-dialin.net[80.137.100.204]
Feb 21 14:21:37 vl09s20 postfix/smtpd[19510]: disconnect from p508964CC.dip.t-dialin.net[80.137.100.204]
/etc/default/saslauthd

Code: Alles auswählen

START=yes
MECHANISMS="pam shadow sasldb2 sasldb"
Ich blick echt nichtmehr durch :oops:
Wäre dir echt dankbar für einen Hinweis.

Benutzeravatar
/bin/false
Beiträge: 51
Registriert: 14.02.2004 14:25:14

Beitrag von /bin/false » 22.02.2004 20:27:35

Dickes Ding! Ich hab jetzt nochmal frisch alles nach deinem HowTo gemacht.
Kann bestätigen, es funzt auch auf Woody mit den Backports von Postfix2.x + Sasl2!

:hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail: :hail:

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Beitrag von Freeman » 23.02.2004 08:57:45

@bin/false
Na also :D . Dass sogar die Backports funktionieren :P . Wollte mir das nur nicht mehr antun, ich hoffe doch mal das Sarge irgendwann 2004 erscheint :wink: .

@Kati
Also, der MySQL-Server heißt entweder "localhost" wenn er auf deinem Server läuft oder aber so wie vom Provider angegeben, falls der Zugriff über Netz passiert. Aber localhost sollte (deinen alten Beiträgen nach) die richtige Wahl sein :) .
--
Have fun

Benutzeravatar
Kati
Beiträge: 24
Registriert: 08.02.2004 18:23:41

Beitrag von Kati » 25.02.2004 00:24:50

Mitlerweile habe ich qmail&Freunde nach debianhowto.de erfolgreich installiert. :) Das muß was heißen, wenn ich als Linux-Anfängerin das geschafft und die Installation verstanden habe. Virtuelle Domains/Postfächer und Postfachverzeichnis sind wirklich genial!

Ja, klar, als Name des mysql-Servers kann natürlich auch die IP angegeben werden, oder localhost, oder mysql.domain.de, wenn es vorher eingerichtet wurde.

Mal sehen, vielleicht schaffe ich Postfix&Co. auch , später, obwohl ich mit qmail ganz gut leben kann, mal sehen ... 8)

Benutzeravatar
Freeman
Beiträge: 67
Registriert: 12.07.2002 16:38:08
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: München

Beitrag von Freeman » 25.02.2004 08:43:48

Jedem sein Mailserver :D ....
--
Have fun

toppas72
Beiträge: 22
Registriert: 23.01.2004 23:34:21

Beitrag von toppas72 » 28.09.2004 14:05:32

@freeman

habe alles nach deinen "howto" installiert und konfiguriert. danke übrigens...

postfix funkt. tadellos, leider habe ich noch problem mit der SMTP-AUTH, bekomme immer wieder diese fehlermeldung:

Sep 28 13:57:53 server postfix/smtpd[26795]: warning: SASL authentication failure: cannot connect to saslauthd server: No such file or directory
Sep 28 13:57:53 server postfix/smtpd[26795]: warning: meinpc.provider.de[x.x.x.x]: SASL LOGIN authentication failed

hat jemand eine idee?



was auch komisch ist, ein: /etc/init.d/saslauthd restart

bringt mir:

Stopping SASL Authentication Daemon: (not running).
Starting SASL Authentication Daemon: (failed).


jedoch läuft der saslauthd munter weiter: ps aux | grep sasl

root 26676 0.0 0.2 6464 1512 ? Ss 13:57 0:00 /usr/sbin/saslauthd -m /var/spool/postfix/var/run/saslauthd/mux -a pam
root 26677 0.0 0.2 6464 1512 ? S 13:57 0:00 /usr/sbin/saslauthd -m /var/spool/postfix/var/run/saslauthd/mux -a pam
root 26678 0.0 0.2 6464 1512 ? S 13:57 0:00 /usr/sbin/saslauthd -m /var/spool/postfix/var/run/saslauthd/mux -a pam
root 26679 0.0 0.2 6464 1512 ? S 13:57 0:00 /usr/sbin/saslauthd -m /var/spool/postfix/var/run/saslauthd/mux -a pam
root 26680 0.0 0.2 6464 1512 ? S 13:57 0:00 /usr/sbin/saslauthd -m /var/spool/postfix/var/run/saslauthd/mux -a pam


bin ratlos, vielleicht hat jemand ein tipp?

danke und gruss
toppas

toppas72
Beiträge: 22
Registriert: 23.01.2004 23:34:21

Beitrag von toppas72 » 28.09.2004 18:18:28

geschafft :P

habe in /var/run/ ein symlink gemacht:

lrwxrwxrwx 1 root sasl 37 Sep 28 16:40 saslauthd -> /var/spool/postfix/var/run/saslauthd/


und den eintrag:

PARAMS="-m /var/spool/postfix/var/run/saslauthd/mux"

aus der /etc/init.d/saslauthd wieder entfernt.
so lässt sich auch saslauthd problemlos stoppen und starten.


gruss
toppas

frantek
Beiträge: 38
Registriert: 12.05.2004 15:16:47

Beitrag von frantek » 23.11.2004 10:12:05

vielen dank freeman, dein beitrag hat mich heute gerettet ...

Antworten