PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : qmail - smtp zugriff beschränken



meinereinerseiner
23.11.07, 09:21
hi,

steh grad neben mir - wie kann ich qmail einschränken das er:

a) mails ohne authentifizierung nur von definierten IP's
b) nach authentifizierung von allen IP's
entgegen nimmt?

Das smtp-auth geht bereits und die IP's die dürfen sind in tcp.smtp gesetzt.
Nur nimmt er eben immernoch Mails von aussen entgegen, für die er zuständig ist, was ansich nicht falsch ist, nur soll er das eben genau NICHT machen, also es geht um Domains für die er eigentlich auch ein relay ist.

hintergrund ist, das die kiste als relay dient, welche die mails von spamfiltern bekommt, weiterverarbeitet und an die internen mailserver weiterreicht und gleichzeitig für externe user als smtp-gw fungiert. Ist jetzt jemand also clever, stellt er die mails direkt unter umgehung der filter zu.

ein idee währe die rcpthosts zu leeren, dann ist er ja nurnoch für sich selbst zuständig, und nimmt die mails nur so an wie ich das denke, oder hat das noch seiteneffekte die mir grad nicht einfallen? das routing geht ja via smtproutes wie gehabt und wenn einer dennoch versucht von aussen ohne auth zu schicken, sollte es rejected werden..........so der gedanke. :)


thx
der tom

derRichard
23.11.07, 11:03
hi!

setze die variable "RELAYCLIENT" für den qmail-smtpd.
alle ips in der variable sind erlaubt ohne auth zu relayen.

//richard

meinereinerseiner
23.11.07, 11:06
hi!

setze die variable "RELAYCLIENT" für den qmail-smtpd.
alle ips in der variable sind erlaubt ohne auth zu relayen.

//richard

jupp, das hatte ich ja schon und das geht auch so, problem war, das die kiste halt alle mails für die sie mal zuständig war weiterhin ohne prüfung angenommen hat, das fällt in dem moment weg, wenn ich die betreffenden domains aus der rcpthosts rausnehme.

also im prinzip rennt es jetzt so, wie ich das will. hatte nur nochmal meine gedanken kundgetan, falls jemanden was negatives zu der sache in den sinn kommt.

der tom

derRichard
23.11.07, 11:08
hallo!

zeig mal deine variablen.
und was genau verstehst du unter "prüfung"?

//richard

meinereinerseiner
23.11.07, 18:21
hallo!

zeig mal deine variablen.
und was genau verstehst du unter "prüfung"?

//richard

mit der /etc/tcp.smtp
127.:allow,RELAYCLIENT=""
10.10.1.2:allow,RELAYCLIENT=""
192.168.11.1:allow,RELAYCLIENT=""
regel ich wer ohne Authentifizierung relayen darf.
ebenso rufe ich im smtpd run script /home/vpopmail/bin/vchkpw auf, damit sich user von beliebigen IPs aus zum relayen authentifiziren können,

bislang war der server in einer dmz für 3 domains alleine als relay zuständig und hat die mails an die internen mailserver geroutet. deswegen standen diese 3 domains in der /var/qmail/control/rcpthosts und er hat halt einfach weiter für eben diese angenommen.

jetzt sind 2 weiter server vorgeschaltet, welche spam und virenprüfung machen und der alte hat nur noch ein paar cache, compliance und proxy aufgaben und soll als smtp relay server für externe user dienen, welche sich via smtp-auth anmelden.

wie gesagt, des rätsels lösung war einfach nur die 3 domains aus der rcpthosts zu nehmen und nun gehts.

der tom

BedriddenTech
24.11.07, 18:04
Füge die Variable RELAYCLIENT in dein Checkpassword-Skript ein, so daß die Zeile so ähnlich aussieht:


exec /usr/local/bin/softlimit -m 5000000 \
/usr/local/bin/tcpserver -v -R -l "$LOCAL" -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" \
-u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
/var/qmail/bin/qmail-smtpd \
checkpassword-pam -s smtp -- /bin/true RELAYCLIENT=""