PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : sendmail von Konsole



Primusio
29.01.03, 11:17
Hallöchen Linuxfreunde,
ich habe da ein kleines Problem und zwar meine Unwissenheit.

Ich habe schon sehr viel gelesen aber nicht das was ich brauche. Ich möchte nur auf der Konsole kleine E-Mails verschicken können, sodass ich mir später auch ein kleines Script schreiben kann.
Sendmail soll dabei nicht als Mailserver oder so dienen, und er soll auch keine Antworten empfangen müssen, er soll nur blind verschicken.

Wie stelle ich so etwas an ? kann mir da jemand helfen ? Blicke irgendwie nicht so richtig durch.

Würde mich sehr über eine schnelle Antwort freuen.

Mit freundlichen Grüßen
euer Peterle

joey.brunner
29.01.03, 11:29
wie weit kensnt du dich bei sendmail aus. also wenn du ne standardinstall von der distri hast, solltest du eh nur verschicken koennen, aber nicht empfangen, das liegt daran, dass keine lokalen domains eingetragen sind. diese standardconfig muss aber geaendert werden, da ansonsten jeder ueber dich spammen kann, gib am besten an, dass nur der host 127.0.0.1 relayen darf. versuch dir mal ne mail zu schicken. gib dazu folgenden befehl in der console an:

mail -s Hallo [Deine@email.adresse]
Text
Text
.

Der Punkt ist wichtig... sollte eigentlich ankommen, aber wie gesasgt, sendmail muss noch gut konfiguriert werden.

joey

Primusio
29.01.03, 11:58
Ehrlich gesagt, kenne ich mich gar nicht mit sendmail aus.

Kennst du zufällig den ODS Kommunikationsserver von c't ? Den verwenden wir und da sind einige Einstellungen sehr seltsam, naja.

Also wenn ich "mail -s hallo meine@mailadresse.de" eingebe, kommt bei dieser Adresse nix an.

MfG
Peter

joey.brunner
29.01.03, 12:25
aber den befehl hast du drauf oder?

laefut sendmail? mach mal:
ps aux | egrep sendmail und poste die ausgabe...

nein den server kenne ich leider nicht...

und poste mal die datei /var/log/maillog

danke

winter
29.01.03, 13:11
hier is nen kleines perl-sendmail script:


#! /usr/bin/perl

use strict;
use vars qw($TO $FROM $CC $SUBJECT);
my $SENDMAIL = '/usr/sbin/sendmail'; # Pfad gg. ändern
my $STANDARD = 'email'; # Standardabsender der E-Mails

print "\nAn wen soll die E-Mail geschickt werden?";
print "\nan>";
chomp($TO = <STDIN> );
$FROM = $STANDARD;
print "\nWer soll der Absender sein? [$STANDARD]";
print "\nvon>";
chomp(my $from = <STDIN> );
$FROM = $from if length $from > 2;
print "\nKopieempfänger definieren? [n]";
print "\ncc>";
chomp(my $cc = <STDIN> );
if (lc $cc eq 'y') {
print "\nKopieempfänger";
print "\nCC>";
chomp($CC = <STDIN> );
}
else { $CC = "N/A" }
print "\n Betreff der E-Mail? [random]";
print "\nSubject>";
chomp($SUBJECT = <STDIN> );
$SUBJECT = rand(100) if length $SUBJECT < 2;
print "\n\nDie eigegebenen Daten sind:\n";
print "An: $TO\nVon: $FROM\nCC: $CC\nBetreff: $SUBJECT\n";
print "\nOk, nun bitte den Text eingeben. Das Ende der Nachricht ist mit der Eingabe '-END-' erreicht";
print "\n";
my $TEXT;
do {
print "Msg>";
$TEXT .= <STDIN>;
}

until ($TEXT =~ /-END-/);
$TEXT = s/-END-//;
open(MAIL, qq%| $SENDMAIL -t -f "$FROM"%) || die "Sendmail konnte nicht aufgerufen werden: $!";
print MAIL "To: $TO\n";
print MAIL "Reply-To: $FROM\n";
print MAIL "Cc: $CC\n" if $CC ne 'N/A';
print MAIL "Subject: $SUBJECT\n";
print MAIL "$TEXT\n";
print MAIL ".";
close(MAIL);
print "Ok, E-Mail versendet\n";

Primusio
29.01.03, 13:41
Wozu brauche ich denn dieses Script ?

Also /var/log/maillog habe ich nicht, ich vermute mal die heißt bei mir /var/log/mail, die habe ich als Anhang mitgeschickt.

"sendmail: Accepting connections on Port 25" sagt er bei ps ax, er ist auf type: smtp eingestellt.

Hoffe die mail log hilft.

MfG
Peter

mbo
29.01.03, 13:57
Hi,

Sendmail kann keine eMails verschicken, wenn er die empfangenden Mailserver nicht finden kann:

Jan 29 13:08:56 Arktur sendmail[1202]: NAA01200: to=[p.luecken@de.elop.de], ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, relay=de.elop.de], stat=Host unknown (Name server: de.elop.de]: host not found)

Kläre das DNS-Problem und dann schaun wir weiter.
Außerdem, schau mal bitte in das Postfach vom root ...

cu iae
mbo

Primusio
29.01.03, 14:43
In meiner resolv.con stehen 3 funktionierende Nameserver (IP's). Oder wie kann ich das Problem beheben ?

Und ich finde die Datei für root nicht, wo er die ganzen Mails/ NAchrichten hineinschreibt ?

MfG
Peterle

joey.brunner
30.01.03, 10:58
ich hatte dieses problem auch mal. ich hatte auch die order richtig gestellt... aber leider braucht sendmail wohl nen eigenen dns. also setz dir mal schnell einen auf... dann sollte es gehenb.

joey

Primusio
30.01.03, 11:10
Dann geht es wohl nicht, schade.

Ich kann keinen DNS auf den Server aufbauen, ist bei uns auf Arbeit und da darf nur das drauf, was auch schon drauf ist.

Trotzdem danke an alle.

MfG
Peter

joey.brunner
30.01.03, 11:39
oh warte, man sollte den kompletten thread lesen. also verschicken solltest du auch ohne eigenen dns koennen. solltest nicht nur, sondern ist so. da reicht der dns des providers. es wird nur beim relaying auf einen z.b. exchange oder so schwierig (intern), aber so solltest du ueberhaupt keine probs haben. funktioniert den die normale namensaufloesung?

mach mal einen dig

joey

Primusio
30.01.03, 11:51
dig funzt, er braucht 102 msec zum Standardserver.