Sendmail SMTP braucht kein Passwort zum senden

lockdoc

Well-Known Member
Ich hatte mir sendmail mit STARTTLS eingerichtet und dachte eigentlich, dass sich die user zum Senden ueber ihr System Passwort authentifizieren muessen.
Dem ist allerdings komischerweise nicht so, denn ich kann mails auch ohne ein Password versenden.


In Thunderbird habe ich das Account wie folgt eingerichtet
Code:
Server: mx.domain
Port: 25
Authentication Method: no authentication
Connection Security:STARTTLS
Gespeicherte Passwoerter gibt es nicht, da ich keins eingestellt habe und kann deswegen auch gerade nicht die Mails vom IMAP empfangen


Wenn ich dann eine Email ueber diesen SMTP Server versende, dann fragt thunderbird zwar nach dem SMTP Password, hat aber dann schon die Email laengst versendet, wie mir der Maillog zeigt
Code:
Jul 16 11:13:49 mx sm-mta[76281]: STARTTLS=server, relay=trinity.domain [192.168.0.240], version=TLSv1/SSLv3, verify=NO, cipher=DHE-RSA-CAMELLIA256-SHA, bits=256/256
Jul 16 11:13:49 mx sm-mta[76281]: q6G9Dmt0076281: from=<lockdoc@domain>, size=344, class=0, nrcpts=1, msgid=<5003DB4C.6060801@domain>, proto=ESMTP, daemon=TLSMTA, relay=trinity.domain [192.168.0.240]
Jul 16 11:13:49 mx sm-mta[76282]: q6G9Dmt0076281: to=<lockdoc@domain>, ctladdr=<lockdoc@domain> (1001/1001), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30684, relay=local, dsn=2.0.0, stat=Sent

Wenn ich dann im Webmail Interface nachkucke (damit Thunderbird auch ja nicht das Passwort vom Imap hat), dann kam die Mail an.

StartTLS scheint auch zu da zu sein
Code:
user> telnet mx.domain 25
Trying 192.168.0.19...
Connected to mx.domain.
Escape character is '^]'.
220 mx.domain ESMTP Sendmail 8.14.5/8.14.5; Mon, 16 Jul 2012 11:27:59 +0200 (CEST)
EHLO localhost
250-mx.domain Hello mx.domain [192.168.0.19], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH GSSAPI DIGEST-MD5 CRAM-MD5
250-STARTTLS
250-DELIVERBY
250 HELP

Und SaslAuth scheint auch das Password zu nehmen.
Code:
user> testsaslauthd -u lockdoc -p MEINPASSWORD
0: OK "Success."

Dann nochmal eine Testmail via telnet
Code:
user> telnet mx.domain 25
Trying 192.168.0.19...
Connected to mx.domain.
Escape character is '^]'.
220 mx.domain ESMTP Sendmail 8.14.5/8.14.5; Mon, 16 Jul 2012 11:33:57 +0200 (CEST)
HELO localhost
250 mx.domain Hello mx.domain [192.168.0.19], pleased to meet you
MAIL FROM:lockdoc@domain
250 2.1.0 lockdoc@domain... Sender ok
RCPT TO:lockdoc@domain
250 2.1.5 lockdoc@domain... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
my message.
.
250 2.0.0 q6G9Xv9b076868 Message accepted for delivery
QUIT
221 2.0.0 mx.domain closing connection
Connection closed by foreign host.


Wie bringe ich denn dem Sendmail bei, dass man Emails nur via Password versenden darf?
 
Code:
user> telnet mx.domain 25
Trying 192.168.0.19...
Connected to mx.domain.
Escape character is '^]'.
220 mx.domain ESMTP Sendmail 8.14.5/8.14.5; Mon, 16 Jul 2012 11:33:57 +0200 (CEST)
HELO localhost
250 mx.domain Hello mx.domain [192.168.0.19], pleased to meet you
MAIL FROM:lockdoc@domain

Du machst ein HELO, damit geht sendmail nicht davon aus, dass du dich authentifizieren willst. Du musst dafür ESMTP initiieren mittels EHLO, dann wird sendmail dich fragen, denke ich.

Rob
 
Danke erstmal.

Ich will aber das, sendmail es gar nicht zulaesst, dass ich ohne gueltigen Username und Passwort Emails versenden kann. Sonst kann ja jedere meinen Mailer nutzen und mails versenden.
 
Danke erstmal.

Ich will aber das, sendmail es gar nicht zulaesst, dass ich ohne gueltigen Username und Passwort Emails versenden kann. Sonst kann ja jedere meinen Mailer nutzen und mails versenden.

An welche Adresse schickst du? Wenn die Zieldomain auf der lokalen Kiste liegt, ist eine Authentifizierung nicht nötig. SMTP-Auth ist nur dafür da, Mails an extern zu legitimieren.

Rob
 
Achso. Ich hatte es natuerlich zum Testen an meine eigene Domain (intern) geschickt.
Mails die extern versendet werden laufen ueber den in Sendmail eingestellten RELAY.

Aber auch das versenden nach extern geht via Telnet ohne Passwortabfrage
Code:
user >telnet mx.domain 25
Trying 192.168.0.19...
Connected to mx.domain.
Escape character is '^]'.
220 mx.domain ESMTP Sendmail 8.14.5/8.14.5; Mon, 16 Jul 2012 12:06:18 +0200 (CEST)
HELO localhost
250 mx.domain Hello mx.domain [192.168.0.19], pleased to meet you
MAIL FROM:lockdoc@domain
250 2.1.0 lockdoc@domain... Sender ok
RCPT TO:firstname.lastname@uni-domain
250 2.1.5 firstname.lastname@uni-domain... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
message
.
250 2.0.0 q6GA6I9l077723 Message accepted for delivery
QUIT
221 2.0.0 mx.domain closing connection
Connection closed by foreign host.

Code:
Jul 16 12:06:56 mx sm-mta[77723]: q6GA6I9l077723: from=lockdoc@domain, size=8, class=0, nrcpts=1, msgid=<201207161006.q6GA6I9l077723@mx.domain>, proto=SMTP, daemon=TLSMTA, relay=mx.domain [192.168.0.19]
Jul 16 12:06:57 mx sm-mta[77726]: STARTTLS=client, relay=public.external.relay.server., version=TLSv1/SSLv3, verify=FAIL, cipher=AES256-SHA, bits=256/256
Jul 16 12:06:59 mx sm-mta[77726]: q6GA6I9l077723: to=firstname.lastname@uni-domain, ctladdr=lockdoc@domain (1001/1001), delay=00:00:08, xdelay=00:00:03, mailer=relay, pri=30008, relay=public.external.relay.server. [209.173.141.248], dsn=2.0.0, stat=Sent (422 bytes received in 00:00:00; Message id ARW75058 accepted for delivery)
 
Achso, es macht vielleicht Sinn, wenn ich mal meine Config poste ;)


Code:
[B]host[/B]: mx.my-real-domain.de
[B]IP:[/B]   192.168.0.19

mx.my-real-domain.de.mc
Code:
[B]divert[/B](0)
[B]VERSIONID[/B](`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.39.2.1 2011/09/23 00:51:37 kensmith Exp $')
[B]OSTYPE[/B](freebsd6)
[B]DOMAIN[/B](generic)

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


[COLOR="Green"]dnl # ------------ EXTERNAL RELAYING[/COLOR]
[B]define[/B](`SMART_HOST', `public.relayer.for.external.mails')[COLOR="Green"]dnl[/COLOR]
[B]FEATURE[/B](`authinfo')[COLOR="green"]dnl[/COLOR]


[COLOR="Green"]dnl # ------------ MASQUERADING[/COLOR]
[B]LOCAL_DOMAIN[/B](`localhost.localdomain')[COLOR="green"]dnl[/COLOR]
[B]MASQUERADE_AS[/B](`my-real-domain.de')[COLOR="green"]dnl[/COLOR]
[B]FEATURE[/B](`masquerade_envelope')[COLOR="green"]dnl[/COLOR]
[B]FEATURE[/B](`masquerade_entire_domain')[COLOR="green"]dnl[/COLOR]
[B]MASQUERADE_DOMAIN[/B](`localhost')[COLOR="green"]dnl[/COLOR]
[B]MASQUERADE_DOMAIN[/B](`localhost.localdomain')[COLOR="green"]dnl[/COLOR]
[B]MASQUERADE_DOMAIN[/B](`dyndns.org')[COLOR="green"]dnl[/COLOR]
[B]MASQUERADE_DOMAIN[/B](`mydyndns.dyndns.org')[COLOR="green"]dnl[/COLOR]
[B]FEATURE[/B](`always_add_domain')[COLOR="green"]dnl[/COLOR]


[COLOR="green"]dnl # ------------ SMTP SASL-AUTH Settings[/COLOR]
[B]define[/B](`confAUTH_OPTIONS', `A p')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')[COLOR="green"]dnl[/COLOR]
[B]TRUST_AUTH_MECH[/B](`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')[COLOR="green"]dnl[/COLOR]


[COLOR="green"]dnl # ------------ CERT Settings[/COLOR]
[B]define[/B](`CERT_DIR', `/etc/mail/certs')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confCACERT_PATH', `CERT_DIR')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confCACERT', `CERT_DIR/mx.my-real-domain.de.crt')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confSERVER_CERT', `CERT_DIR/mx.my-real-domain.de.crt')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confSERVER_KEY', `CERT_DIR/mx.my-real-domain.de.key.open')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confCRL', `CERT_DIR/mx.my-real-domain.de.crt')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confCLIENT_CERT', `/etc/mail/certs/mx.my-real-domain.de.crt')[COLOR="green"]dnl[/COLOR]
[B]define[/B](`confCLIENT_KEY', `/etc/mail/certs/mx.my-real-domain.de.key')[COLOR="green"]dnl[/COLOR]

[B]define[/B](`confCW_FILE', `-o /etc/mail/local-host-names')


[COLOR="green"]dnl # ------------ LISTEN[/COLOR]
[B]DAEMON_OPTIONS[/B](`Family=inet, Addr=192.168.0.19, Name=TLSMTA')[COLOR="green"]dnl[/COLOR]
[B]FEATURE[/B](`no_default_msa')[COLOR="green"]dnl[/COLOR]


[COLOR="green"]dnl # ------------ LOGGING[/COLOR]
[B]define[/B](`confLOG_LEVEL', `9')[COLOR="green"]dnl[/COLOR]


[B]define[/B](`confBIND_OPTS', `WorkAroundBrokenAAAA')
[B]define[/B](`confNO_RCPT_ACTION', `add-to-undisclosed')
[B]define[/B](`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')
[B]MAILER[/B](local)
[B]MAILER[/B](smtp)

access
Das ist die IP des webservers, damit er ueber disen Host relayen darf, da er selber nur ein relay sendmail hat.
Allerdings weiss ich nicht, ob das hier wirklich noetig ist.
Code:
From:192.168.0.12                       OK
Connect:192.168.0.12                    OK

local-host-names
Code:
localhost.my-real-domain.de
mail.my-real-domain.de
mx.my-real-domain.de
mydyndns.dyndns.org
my-real-domain.de

authinfo
Code:
AuthInfo:relay.jangosmtp.net "U:username" "P:password" "M:LOGIN PLAIN DIGEST-MD5"


Nachtrag:
Kompiliert ist Sendmail mit folgenden Optionen aus der make.conf
Code:
SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL -DSTARTTLS
SENDMAIL_LDFLAGS=-L/usr/local/lib
SENDMAIL_LDADD=-lsasl2 -lssl -lcrypto
 
Zuletzt bearbeitet:
Hi,

vielleicht ist durch die /etc/mail/access die Authentifizierung obsolet, weil der konnektierende Host bereits authentifiziert ist. Versuch mal, eine E-Mail von einer anderen IP-Adresse über den Host zu verschicken.

Rob
 
Die Mails hatte ich auch gar nicht vom webserver (192.168.0.12) aus gesendet.

Allerdings vom JAIL HOST (192.168.0.1), welcher den selben User/Pass hat, wie die Sendmail Jail.

Wenn ich das jetzt von einem LAN Client mache (trinity), von dem ich es auch mit dem Thunberbird probiert hatte dann folgendes:
Code:
user> telnet mx.my-real-domain.de 25
Trying 192.168.0.19...
Connected to mx.my-real-domain.de.
Escape character is '^]'.
220 mx.my-real-domain.de ESMTP Sendmail 8.14.5/8.14.5; Mon, 16 Jul 2012 12:50:30 +0200 (CEST)
[B]HELO[/B] my-real-domain.de
250 mx.my-real-domain.de Hello trinity.my-real-domain.de [192.168.0.240], pleased to meet you
[B]MAIL FROM[/B]: lockdoc@my-real-domain.de
250 2.1.0 lockdoc@my-real-domain.de... Sender ok
[B]RCPT TO[/B]: firstname.lastname@my-uni-mail.de
550 5.7.1 firstname.lastname@my-uni-mail.de... [COLOR="DarkRed"]Relaying denied. Proper authentication required.[/COLOR]

Nun frage ich mich allerdings, warum es trotzdem mit Thunderbird funktioniert.
 
Gut. Thunderbird ging mit lokalen Adressen, nach extern geht es auch nicht.
Hat sich wohl dann erledigt mit dem Thread - laueft alles wie es soll ;-)
 
Zurück
Oben