PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit sendmail!



ChiefRebelAngel
28.09.05, 13:17
Hallo.
Ich habe ernste Probleme mit sendmail unter RHLE3.
sendmail ist zwar installiert und läuft auch, aber wenn ich versuche per PHP via der Funktion mail() eine E-Mail zu verschicken tut er es nicht. Das liegt an folgendem Fehler:


>>> DATA
<<< 550-Verification failed for <root@localhost.localdomain>
<<< 550-Unrouteable address
<<< 550 Sender verify failed
550 5.1.1 <ich@meine-domain.tld>... User unknown
<<< 503 valid RCPT command must precede DATA


Jetzt bräuchte ich Hilfe, denn damit kann ich nix anfangen und würd den Fehler gerne beheben... hab nur kein Plan wie...

Gruß und Dank,
Andreas

RichieX
29.09.05, 17:11
Das liegt wahrscheinlich an deiner /etc/mail/access. Überprüfe, ob du wenigsten "127.0.0.1 RELAY" drinstehen hast.

Aber: Warum schickt der Webserver über root@localhost.localdomain, das müsste normalerweise www oder apache@<servername> sein. Oder setzt du PHP mail() aus der Konsole ab?

ChiefRebelAngel
30.09.05, 07:33
Hi.
In meiner /etc/mail/access steht unter anderem auch die 127.0.0.1... Ich benutze PHP-Scripte eigentlich nie auf derKonsole.
Ich habe lampp installiert und die ganzen PHP-Sachen liegen dort im htdocs-Verzeichnis. Und werden via Browser ausgeführt.

Warum als Absender root@localhost.localdomain steht weiß ich nicht. Ich hab bisher Linux nur als Entwicklungsplattform benutzt, nie um irgendwas zu administrieren. Das ist Neuland für mich...

Hoffe du kannst mir da weiterhelfen, ist nämlich echt dringend...!

Dank und Gruß,
Andreas

P.S.: Wenn ich auf der Konsole mich via Telnet auf meinen Rechner verbinde (Port 25) kann ich E-Mails verschicken. Sonst nicht. hth

RichieX
30.09.05, 11:49
Hallo Andreas,

hast du denn überhaupt schon sendmail konfiguriert? Ich nehme mal an nicht.
Die Grundkonfiguration kannst du in der /etc/mail/sendmail.mc machen. Dort solltes du ersteinmal localhost.localdomain ändern:


DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
LOCAL_DOMAIN(`domain.com')dnl

Wenn die Mail an einen anderen Mailserver im Internet geschickt werden soll, musst du dafür sorgen, dass er entweder dein Server Reverse aufgelöst werden kann oder du schickst die Mails über einen SmartHost:


define(`SMART_HOST',`mail.smarthost.de')

Da du dich wahrscheinlich an diesem Host authentifizieren musst kommt das noch rein:


TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

In die /etc/mail/access die Zugangsdaten des SmartHosts:


AuthInfo:mail.smarthost.de "U:<username>" "P:<password>"


Nicht vergessen: Nach Änderung der sendmail.mc


m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

und Neustart sendmail!

So, nun zum Apache bzw. PHP. Normalerweise sendet der Webserver mit der Adresse apache@domainname. Warum das bei dir nicht so ist kann ich dir nicht sagen. Die PHP mail() Funktion bietet aber meineswissens auch die Absender-Mailadresse als Option mit an. Diese solltes du auch verwenden.

ChiefRebelAngel
30.09.05, 12:20
Hallo Andreas,

hast du denn überhaupt schon sendmail konfiguriert? Ich nehme mal an nicht.
Die Grundkonfiguration kannst du in der /etc/mail/sendmail.mc machen. Dort solltes du ersteinmal localhost.localdomain ändern:


DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
LOCAL_DOMAIN(`domain.com')dnl


Hab ich gemacht.


Wenn die Mail an einen anderen Mailserver im Internet geschickt werden soll, musst du dafür sorgen, dass er entweder dein Server Reverse aufgelöst werden kann oder du schickst die Mails über einen SmartHost:


define(`SMART_HOST',`mail.smarthost.de')

Da du dich wahrscheinlich an diesem Host authentifizieren musst kommt das noch rein:


TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

In die /etc/mail/access die Zugangsdaten des SmartHosts:


AuthInfo:mail.smarthost.de "U:<username>" "P:<password>"


Hm, nöö. Der Rechner auf dem sendmail läuft soll ja als Mail-Server fungieren. Von daher brauch ich das dann ja nicht, oder?


Nicht vergessen: Nach Änderung der sendmail.mc


m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

und Neustart sendmail!

Negativ.. Ich bekomme folgende Fehlermeldung:


m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
/etc/mail/sendmail.mc:10: m4: Cannot open /usr/share/sendmail-cf/m4/cf.m4: No such file or directory



Die PHP mail() Funktion bietet aber meineswissens auch die Absender-Mailadresse als Option mit an. Diese solltes du auch verwenden.
Tu ich doch!


Hm, das ist echt cool von dir das du mir hilfst. Wenn du mir jetzt noch sagen könntest wie ich das hinbiege das es funzt bin ich ein glücklicher Mensch...
War grad auf rpmseek.com und hab mir das sendmail-fc Paket runtergeladen und installiert. Aber es geht immer noch nicht. Selbe Fehlermeldung...


Gruß und Dank,
Andreas


Edit:
Hab hier grad was festgestellt (beim Versuch sendmail neuzustarten):


[root@xyz /]# /etc/init.d/sendmail start
Starting sendmail: 554 5.0.0 No local mailer defined
554 5.0.0 QueueDirectory (Q) option must be set
[FAILED]
Starting sm-client: [ OK ]
[root@xyz /]#

RichieX
30.09.05, 19:36
Zu deinem Edit:
Ich denke das liegt daran, das sendmail nicht als localer Mailserver eingestellt ist. Es gibt unter RH einen Mail-Switcher. Such mal in der grafischen Oberfläche unter Einstellungen.

ChiefRebelAngel
04.10.05, 20:30
Danke für den Hinweis, aber grafische Oberfläche fällt aus, die gibt es nicht... Hab nur Zugriff via ssh...


Gruß,
Andreas

RichieX
05.10.05, 09:33
Dafür gibts dann redhat-config-mail-switch oder so ähnlich.

ChiefRebelAngel
05.10.05, 15:51
Dafür gibts dann redhat-config-mail-switch oder so ähnlich.

Danke für den Hinweis. Hab das jetzt mal gemacht. Allerdings ist es jetzt so: Ich kann per mail (dem Linux-Programm) bzw. per PHP E-Mails "verschicken". Irgendwas passiert zwar aber es kommen keine Mails an, bzw. es gehen keine Mails raus und Fehlermeldungungen bekomme ich auch keine... Es ist zum ausflippen... Vielleicht sollte ich sendmail komplett vom System entfernen und ganz von vorne anfangen, nämlich sendmail wieder installieren. Alleine trau ich mir das aber nicht zu... Gibts da Tuts oder so?

gruß,
Andreas

RichieX
05.10.05, 18:18
Fehlermeldungen findest du in der /var/log/maillog. Wenn die nicht ausreichen, musst du den Loglevel etwas höher stellen, Standard ist 9 und sollte aber für die Diagnose ausreichen. Also Mail schicken und glz. mit tail -f /var/log/maillog in einer anderen Konsole in die log reinschauen.

ChiefRebelAngel
06.10.05, 13:32
Das hab ich aus der /var/log/maillog



Oct 5 15:16:37 xyz sm-msp-queue[6679]: j95AuOIU006434: to=ich@meine-domain.tld, ctladdr=nobody (99/99), delay=02:20:13, xdelay=00:00:00, mailer=relay, pri=12720465, relay=[127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]


Ich werd daraus nicht schlau. Ich sehe aber, das localhost aus irgendeinem Grund die Verbindung abbricht. Hoffe du kannst mir da irgendwie weiterhelfen... Langsam fang ich an am Rädchen zu drehen, vor allem weil mein Chef mir im Nacken sitzt...

Dank und Gruß,
Andreas

Tomek
06.10.05, 13:46
Poste bitte deine Postfix-Konfiguration (/etc/postfix/main.cf und /etc/postfix/master.cf).

ChiefRebelAngel
06.10.05, 15:32
Hallo Tomek.
Würde ich gerne tun, allerdings habe ich im Moment weder postfix noch sendmail noch sonstwas installiert. Hab alles runtergeschmissen um es neu zu installieren (was aber wegen der dämlichen Paketabhängigkeiten nicht funktioniert...).

Gibt es für Redhat nichts sowas wie YaST? Muss aber auf der Konsole laufen, weil kein X vorhanden... Ich bekomm schon Heulkrämpfe...


Dank und Gruß,
Andreas

Tomek
06.10.05, 15:51
Nein, so etwas wie Yast gibt es unter Red Hat/Fedora nicht. Es wird Zeit, dass du dich mit der Konsole auseinandersetzt oder du installierst dir SUSE Linux mit Yast.

ChiefRebelAngel
06.10.05, 16:49
Ich habe im Prinzip kein Problem mit der Konsole als solche. Ich finde es nur Mühsam die ganzen Pakete von Hand per rpm zu installieren, die abhängigkeiten zu beachten usw. ... Ich bräuchte da schon ein Tool welches mir die ganze Prozedur etwas vereinfacht...

Naja, würde der Rechner nicht Frankfurt stehen, ich nicht nur per Putty mit dem Rechner verbunden sein und ich eine anständige Internetverbindung hätte wär mir schon viel geholfen...

Die Idee mit SuSE auf dem Server installieren findet die Geschäftsleitung allerdings nicht so toll... Da is Redhat drauf und ich muss jetzt da jetzt durch... Aber da ich mich mit Redhat nicht auskenne und auch sogut wie keine administrativen Tätigkeiten verrichtet habe (bisher) fällt mir das alles nicht so wirklich leicht...


Gruß,
Andreas

Tomek
06.10.05, 16:55
Ich habe im Prinzip kein Problem mit der Konsole als solche. Ich finde es nur Mühsam die ganzen Pakete von Hand per rpm zu installieren, die abhängigkeiten zu beachten usw. ... Ich bräuchte da schon ein Tool welches mir die ganze Prozedur etwas vereinfacht...
Dafür gibt es apt und yum.

ChiefRebelAngel
07.10.05, 11:06
Danke sehr :-)
Ich werd mich dann mal mit den Tools auseinandersetzen...
Vielen Dank nochmal!

Gruß,
Andreas