Mail per script

Mal ein Schuss ins Blaue:

nbsmtp

kann auf der Kommandozeile Mails z.b. an gmx senden. Viellecht sucht er ja sowas? Ich nutze den als "sendmail" im mutt.

Code:
set sendmail="/usr/bin/nbsmtp -U ich@gmx.net -P passwort -h mail.gmx.net -f ich@gmx.net"

Soweit ich weiß kann man das out of the box nutzen...

PS:
Wenn man nur mit einer Adresse hantiert im Mutt ausreichend, bin faul. Mann kann ja gegebenenfalls den from-header ändern...

EDIT:
nbSMTP is a lightweight SMTP client. It simply takes a message from
STDIN and sends it to a relayhost. A relayhost is meant to be a full
SMTP server and it will really send the message.
(aus der Manpage)
 
Zuletzt bearbeitet:
dissent schrieb:
Es geht darum, dass ich für unterschiedliche Systeme und *nix Derivate ein Prog brauch dem ich per Parameter ne mail und server gebe und der die dann senden kann...
Wenn ich dann immer sendmail etc. konfigurieren muss ist das nicht umsetzbar.
Mit Perl und Net::SMTP kann man sich recht leicht ein entsprechendes Skript schreiben.

HTH & Ciao.
Markus Mann
];-)
 
asg schrieb:
cat Mein-Log.log | mail -s 'Das Log vom Programm X vom `date`' mich@example.org
das ist eigentlich eine sehr gute lösung. leider weisen aber viele mailkonten generell mails von dynamischen ip-adressen ab. gibt es etwas was man dagegen machen kann, gibt es optionen über die man die sender-ip/hostnamen fälschen kann? (spammer machne das doch sicherlich so)
 
gibt es etwas was man dagegen machen kann, gibt es optionen über die man die sender-ip/hostnamen fälschen kann?
vielleicht einfach als lösung den relay deines vertrauens benutzen? :) klappt hier einwandfrei, damit bekomm ich dann jede mail an sein ziel.
 
soul_rebel schrieb:
das ist eigentlich eine sehr gute lösung. leider weisen aber viele mailkonten generell mails von dynamischen ip-adressen ab. gibt es etwas was man dagegen machen kann, gibt es optionen über die man die sender-ip/hostnamen fälschen kann? (spammer machne das doch sicherlich so)
Also eigentlich soll man sowas ja nicht machen (wird zum Spamen misbraucht). Aber wie Du schon sagst, es gibt Fälle, da ist selbst das Fälschen des Absenders nötig.
Ich habe da mal vor Jahren was gelesen und auf meine Seite gepackt (hab es aber nie ausprobiert). Leider ist die Originalseite mittlerweile tot:
http://os4.org/os/software/mail/smtp/sendmail/sendmail-absendeadr-aendern.html

Man sieht schon daran, das es in der Originalsprache (englisch) auf meiner Seite (normal NUR deutsch) liegt, das ich mich damit nicht näher befasst hatte (wollte ich aber)...

P.S.: Viele Leute behaupten ja, wer im Internet unterwegs ist muss auch englisch (die Sprache der Interneterfinder) sprechen. Wenn das so ist, sollten erstmal alle Autofahrer der Welt deutsch lernen (die Sprache der Automobilerfinder). :D
 
dissent schrieb:
naja, wenn man kein sendmail oder postfix oder sonst was hat...
man muss dem client doch auch sagen können nimm den server mail.gmx.net oder 192.168.1.254 oder so

mail konnte doch auch mails senden ohne ihm etwas zu pipen oder? ich meine sowas wie
$ mail -s "test" bla@ball.de text
Das Internet ist nicht ganz so dumm aufgebaut wie man manchmal vermuten mag. In diesem Fall fragt er einfach den DNS, welche MX-Records für die Domain eingetragen sind.
Das kann man auf der Kommandozeile auch!
z.B.:
# host os4.org
os4.org has address 212.227.118.79
os4.org mail is handled by 10 mx00.schlund.de.
os4.org mail is handled by 10 mx01.schlund.de.

.... das bedeutet, das in diesem Fall alle Mails an "xxxx@os4.org" über den Mailserver "mx00.schlund.de" oder "mx01.schlund.de" verschickt werden.


EDIT:
P.S.: Ich lasse meine Statusmeldungen an den "root" entweder so
echo "Nachrichtentext" | mail -s "Betreff" admin@gmx.net
oder so
cat nachrichten.txt | mail -s "Betreff" admin@gmx.net
verschicken und die kommen an, wenn man z.B. "root" (der ja meistens Absender ist) auf die weisse Liste setzt. Mann kann dann (nur so als Gedanke, wenn man will um auf Nummer Sicher zu gehen) bei GMX auch eine Weiterleitung einbauen. Dann sollte es auch einwandfrei gehen ohne Woodoo am System. Aber das finde ich einmal nicht so sauber, und zum Anderen macht es jeder so wie er es am besten verstanden hat...
 
Zuletzt bearbeitet:
Yoda schrieb:
Also eigentlich soll man sowas ja nicht machen (wird zum Spamen misbraucht). Aber wie Du schon sagst, es gibt Fälle, da ist selbst das Fälschen des Absenders nötig.
[...]

Die Absender-Adresse (deine IP) bekomm auch Sendmail natürlich nicht geändert.
Das man alles mögliche in den Header schreiben kann ist nichts neues, dafür braucht es auch kein sendmail. Das wird aber in diesem Fall nichts nützen.
 
also ich kriegs einfach nich gebacken...
marzl schrieb:
vielleicht einfach als lösung den relay deines vertrauens benutzen?
verzeiht mir wenn es so aussieht als ob ich mich extra doof anstelle, aber wie mach ich das denn?
kann "mail" ja nicht sagen sie soll lieber über nen anderen smtp verschicken.

mit "femail" und yodas tipps komme ich auch nicht weiter, die mx00.schlund.de (in meinem fall sinds dieselben) lehne jede verbindung ab, wegen dynamischer ip-adresse...
ist also egal, ob ich versuche über die direkt zu schicken oder den eigenen sendmail benutze.

:verzweifelt:


p.s.: hab ihr obsd...
 
Sendmail funktioniert wohl überall gleich:
Die eigentliche Funktion nennt sich in der sendmail.mc z.B.
define(`SMART_HOST', `smtp.provider.net')
Und der Login/pass wird in der access hinterlegt: z.B.
AuthInfo:smtp.provider.net "U:username" "I:username" "P:passwort" "R:smtp.provider.net" "M:LOGIN PLAIN"

danach müssen die Konfigurationen neu erstellt werden, unter FreeBSD mit
cd /etc/mail/
make all intstall
make restart

Wie das genau unter OpenBSD geht, weiß hier vielleicht ein anderer oder die Doku :)
 
soul_rebel schrieb:
also ich kriegs einfach nich gebacken...
verzeiht mir wenn es so aussieht als ob ich mich extra doof anstelle, aber wie mach ich das denn?
kann "mail" ja nicht sagen sie soll lieber über nen anderen smtp verschicken.
mit "femail" und yodas tipps komme ich auch nicht weiter, die mx00.schlund.de (in meinem fall sinds dieselben) lehne jede verbindung ab, wegen dynamischer ip-adresse...
ist also egal, ob ich versuche über die direkt zu schicken oder den eigenen sendmail benutze.

Bevor man hier fragt wie man etwas "fälschen" kann, und sich damit auf illegalten Gelände bewegt, da dies keiner gerne sieht (auch wenn nur der Header versucht wird umzuschreiben) sollte man sich evtl. mit Email an sich, und dem MTA seines Vertrauens auseinandersetzen.

Wenn ich das nun richtig sehe willst Du von deinem dynamischen IP Host Mails versenden über Deinen MTA der darauf rennt. Richtig, hier sträuben sich viele ISPs und MTAs dagegen diese Emails anzunehmen, zurecht.

Aus diesem Grund setzt man in die Konfiguration seines MTA als Relay Host den Relay Host seines ISPs ein.
Postfix:
Code:
relayhost=[relay.meinisp.de]
Die Klammern kann man auch weglassen, dann wird aber ein MX lookup für den Host gemacht.

Da viel Spam über Dialin Kisten kommt, gerade nette Würmer auf Windows Kisten die eine eigene SMTP Engine haben verteilen so Müll, haben viele blacklists dyn. IPs schon auf der Liste. Auch wenn es kein Spam ist was da verschickt wird, so kann der empfangende MTA die Mail dennoch ablehnen. Stichwort: DUL.

Interessant in diesem Falle dürfte auch das OS-Fingerprinting von PF sein. Damit kann man direkt connections auf Port 25 von Windows Kisten blockieren. Da dies meist eh nur Spam ist, bzw. eben die bekannten Würmer mit SMTP Engine.
Code:
block in on $ext_if proto tcp from any os {"Windows 95", "Windows 98"} to any port smtp
 
danke.
habe nach marzls angaben den sendmail konfiguriert. es gibt auf openbsd zwar standardmäßig keine sendmail.mc aber ich habe schenll eine minale .mc datei erstellt , mc4'ed und localhost.cf, submit.cf und sendmail.cf dadurch ersetzt.
das hat soweit gut funktioniert, nur hat
Code:
cat meintestfile | mail -s "testmail" mein@email.de
noch nicht funktioniert, weil der hostname der absenderadresse nicht aufgelöst werden konnte.
[ 421 dns lookup failed for sender domain ]

mit femail hats dann geklappt.
Code:
cat testfile | femail -v -f ein_echte@adresse.de meine@adresse.de
zumindest sahs so aus:
Code:
>>> MAIL FROM:<****>
<<< 250 2.1.0 <***>... Sender ok
>>> RCPT TO:<****>
<<< 250 2.1.5 <****>... Recipient ok
>>> DATA
<<< 354 Enter mail, end with "." on a line by itself
<<< 250 2.0.0 k6RBhtlV010044 Message accepted for delivery
>>> QUIT
nur leider ist bis jetzt noch nichts angekommen....

woran könnte das jetzt liegen?

@asg: ging mir nicht darum etwas "böses" zu machen, auch wenn ich nicht glaube, dass es illegal ist einem ip-paket eine falsche absenderadresse zu geben.

ich weiß auch das sowas stark missbraucht wird. es war nur das erste was mir einfiel.

danke für die hilfe

edit: meine kleine myconfig.mc:
Code:
include(`/usr/share/sendmail/m4/cf.m4')
OSTYPE(`bsd4.4')
define(`SMART_HOST',`smtp.1und1.de')
MAILER(`smtp')
 
soul_rebel schrieb:
[...]
auch wenn ich nicht glaube, dass es illegal ist einem ip-paket eine falsche absenderadresse zu geben.
Verwechselst Du hier IP-Paket und Header einer Mail?
Natürlich kannst Du den Header manipuliere, das wird dir in dem Fall nichts bringen.
Wiederum ein IP-Paket zu manipulieren ist nicht eben mal gemacht, sendmail der falsche Ansatz und überhaupt der falsche Ansatz eine Mail zu verschicken.

soul_rebel schrieb:
noch nicht funktioniert, weil der hostname der absenderadresse nicht aufgelöst werden konnte.
Dann sorge dafür.
 
paefchen schrieb:
Verwechselst Du hier IP-Paket und Header einer Mail?
nein...
paefchen schrieb:
Natürlich kannst Du den Header manipuliere, das wird dir in dem Fall nichts bringen.
Wiederum ein IP-Paket zu manipulieren ist nicht eben mal gemacht, sendmail der falsche Ansatz und überhaupt der falsche Ansatz eine Mail zu verschicken.
das ist mir auch klar....[/quote]

paefchen schrieb:
Dann sorge dafür.
ich habe jetzt den eigenen hostnamen auf die öffentliche dyndns-adresse und komme mit dem normalen mail jetzt ein wenig weiter...:
Code:
>>> DATA
550 must be authenticated
554 no valid recipients
>>> RSET
250 OK
root... aliased to ******
/root/dead.letter... Saved message in /root/dead.letter
Closing connection to smtp.1und1.de.
>>> QUIT
aber noch nicht ganz...
 
Zuletzt bearbeitet:
Ach, 1und1.
Schonmal die Idee gehabt dort in der Hilfe nachzusehen?
Dort gibt es die Lösung, auf Basis von postfix:
WebHosting-FAQ -> E-MailE-Mail-Clients -> Einrichtung und Konfiguration -> Artikel #3
 
soul_rebel schrieb:
[...]
es gibt auf openbsd zwar standardmäßig keine sendmail.mc
[...]

Das stimmt nicht.
Mindestens seit OpenBSD 3.6 und sendmail-8.13.5 (wahrscheinlich schon frueher)
ist eine kommentierte sendmail.mc an /etc/mail/sendmail.cf
angehaengt.
Diese Datei ist Bestandteil der Basis-Installation von OpenBSD.
 
@asg: danke das hilft schon weiter. will es aber trotzdem erst mit sendmail versuchen

@walt: stimmt, aber eine so große config sollte ich doch trotzdem nicht brauchen...

@marzl: könntest du vielleicht deine sendmail.mc posten/mailen/pm'en, dann weiß ich was ich alles haben muss? vielen dank!
 
cat /etc/mail/mail.bsdbox.de.mc

Code:
divert(-1)

#
#  This is a generic configuration file for FreeBSD 5.X and later systems.
#  If you want to customize it, copy it to a name appropriate for your
#  environment and do the modifications there.
#
#  The best documentation for this .mc file is:
#  /usr/share/sendmail/cf/README or
#  /usr/src/contrib/sendmail/cf/README
#

divert(0)
VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.28 2003/04/18 01:25:41 gshapiro Exp $')
OSTYPE(freebsd5)
DOMAIN(generic)

FEATURE(access_db, `hash -o -T<TMPF> /etc/mail/access')
FEATURE(blacklist_recipients)
FEATURE(local_lmtp)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')

FEATURE(`accept_unqualified_senders')
FEATURE(`accept_unresolvable_domains')

INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass-milter.sock, F=, T=C:15m;S:4m;R:4m;E:10m')
define(`confMILTER_MACROS_CONNECT',`b, j, _, {daemon_name}, {if_name}, {if_addr}')
INPUT_MAIL_FILTER(`clmilter',`S=local:/var/run/clamav/clmilter.sock, F=, T=S:4m;R:4m')

dnl Dialup users should uncomment and define this appropriately
define(`SMART_HOST', `smtp.1und1.de')

dnl Uncomment the first line to change the location of the default
dnl /etc/mail/local-host-names and comment out the second line.
dnl define(`confCW_FILE', `-o /etc/mail/sendmail.cw')
define(`confCW_FILE', `-o /etc/mail/local-host-names')

dnl Uncomment both of the following lines to listen on IPv6 as well as IPv4
DAEMON_OPTIONS(`Name=IPv4, Family=inet')
dnl DAEMON_OPTIONS(`Name=IPv6, Family=inet6')

CLIENT_OPTIONS(`Family=inet,Address=0.0.0.0,M=S')

define(`confBIND_OPTS', `WorkAroundBrokenAAAA')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')

define(`confLOCAL_MAILER', `cyrusv2')

define(`confAUTH_MECHANISMS',`PLAIN LOGIN')dnl
TRUST_AUTH_MECH(`PLAIN LOGIN')dnl

define(`CERT_DIR', `/etc/mail/certs')dnl
define(`confCACERT_PATH', `CERT_DIR')dnl
define(`confCACERT', `CERT_DIR/mycert.pem')dnl
define(`confSERVER_CERT', `CERT_DIR/mycert.pem')dnl
define(`confSERVER_KEY', `CERT_DIR/mykey.pem')dnl
define(`confCLIENT_CERT', `CERT_DIR/mycert.pem')dnl
define(`confCLIENT_KEY', `CERT_DIR/mykey.pem')dnl

DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl

MAILER(`cyrusv2')
MAILER(local)

MAILER(smtp)

die ist inkl. cyrus, spamassasin, ssl/tls und clamav. just ignore
 
öh, nein, eigentlich nicht.
eine normaler outbound smtp-auth reicht völlig. afaik. bin mir nicht 100% sicher.
 
hm dann isses ist vielleicht doch einfacher ich mach ein pkg_add postfix-2.2.8p1-sasl2.tgz und halte mich an das tutorial von der 1und1seite ;)
hab ja nich mal die openbsd-sourcen installiert....
 
soul_rebel schrieb:
@walt: stimmt, aber eine so große config sollte ich doch trotzdem nicht brauchen...

Musst Du ja auch nicht. :)
Was Du davon nicht brauchst, laesst Du weg.

soul_rebel schrieb:
hm dann isses ist vielleicht doch einfacher ich mach ein pkg_add postfix-2.2.8p1-sasl2.tgz und halte mich an das tutorial von der 1und1seite ;)

Kannst Du ja, aber mit diesen beiden Links sollte es auch gehen:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/smtp-auth.html
http://www.sendmail.org/~ca/email/auth.html

Ist doch auch viel interessanter :)

soul_rebel schrieb:
hab ja nich mal die openbsd-sourcen installiert....

Wuesste nicht wozu die OpenBSD Sourcen im diesem Kontext benoetigt werden.
Das einzige was Du brauchst ist:
ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-2.1.22.tar.gz und
ftp://ftp.sendmail.org/pub/sendmail/sendmail.8.13.7.tar.gz
 
klappt!

danke für die hilfe!

hätte direkt postfix nehmen sollen, das konfiguriert sich um einiges leichter sendmail...
 
Zurück
Oben