/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
qmail patch - acceptér kun domæne fra ip a~
Fra : Brian Ipsen


Dato : 15-11-03 01:45

Hej!

Findes der en patch til qmail, som gør, at man kan sige, at den kun
skal godtage mail med xx@domain.dk som afsender (både i envelope samt
headers), såfremt SMTP forbindelsen er oprettet fra f.eks.
192.168.5.0/24 ?

/Brian


 
 
Claus Alboege (15-11-2003)
Kommentar
Fra : Claus Alboege


Dato : 15-11-03 15:10

Brian Ipsen <spammers@nowhere.net> writes:

> Hej!
>
> Findes der en patch til qmail, som gør, at man kan sige, at den kun
> skal godtage mail med xx@domain.dk som afsender (både i envelope samt
> headers), såfremt SMTP forbindelsen er oprettet fra f.eks.
> 192.168.5.0/24 ?

No patches needed (bortset fra QMAILQUEUE, hvis du koerer qmail-1.03)

Tilfoej flg til /etc/tcp.smtp (og koer tcprules)
192.168.5.:allow,QMAILQUEUE="/path/to/qfilter"

/path/to/qfilter indeholder flg:

#!/bin/sh
exec /var/qmail/bin/qmail-qfilter \
/path/to/rejecter

qmail-qfilter finder du paa:

http://untroubled.org/qmail-qfilter/

/path/to/rejecter indeholder flg:

#!/bin/sh
exec 3</dev/stdin
if [ "$QMAILUSER@$QMAILHOST" == "user@host" ] ; then
sed -e '/^$/q' <&3 | grep -qi '^From: user@host' || exit 31
exec cat -
else
exit 31
fi

Ret/skriv rejecter scriptet/programmet saa det passer til dine behov.


/Claus A


Brian Ipsen (16-11-2003)
Kommentar
Fra : Brian Ipsen


Dato : 16-11-03 07:18

On Sat, 15 Nov 2003 15:10:21 +0100, Claus Alboege <csa@csa-net.dk>
wrote:

>> Findes der en patch til qmail, som gør, at man kan sige, at den kun
>> skal godtage mail med xx@domain.dk som afsender (både i envelope samt
>> headers), såfremt SMTP forbindelsen er oprettet fra f.eks.
>> 192.168.5.0/24 ?
>
>No patches needed (bortset fra QMAILQUEUE, hvis du koerer qmail-1.03)
>
>Tilfoej flg til /etc/tcp.smtp (og koer tcprules)
>192.168.5.:allow,QMAILQUEUE="/path/to/qfilter"
>
>/path/to/qfilter indeholder flg:
>
>#!/bin/sh
>exec /var/qmail/bin/qmail-qfilter \
> /path/to/rejecter
>
>qmail-qfilter finder du paa:
>
> http://untroubled.org/qmail-qfilter/
>
>/path/to/rejecter indeholder flg:
>
>#!/bin/sh
>exec 3</dev/stdin
>if [ "$QMAILUSER@$QMAILHOST" == "user@host" ] ; then
> sed -e '/^$/q' <&3 | grep -qi '^From: user@host' || exit 31
> exec cat -
>else
> exit 31
>fi
>
>Ret/skriv rejecter scriptet/programmet saa det passer til dine behov.

Hmm.... det sætter den jo kun op på TCP forbindelser fra 192.168..5.x
- dem har jeg styr på.... det er alle dem udefra, der er problemet (og
qmail-queue patch'en har jeg allerede på, den bliver brugt til at
starte qmail-scanner-queue:

:allow,QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"

Det, som jeg ville foretrække var, at når der kommer følgende i SMTP
dialogen:

mail from:xx@domain.dk

så skulle smtp daemonen checke, om TCP forbindelsen var oprettet fra
192.168.5.x (eller 127.0.0.1) - og hvis det ikke var tilfældet, så
skulle den melde fejl tilbage (553 - false sender detected) eller
noget i den stil....

/Brian


Claus Alboege (16-11-2003)
Kommentar
Fra : Claus Alboege


Dato : 16-11-03 12:23

Brian Ipsen <spammers@nowhere.net> writes:

> On Sat, 15 Nov 2003 15:10:21 +0100, Claus Alboege <csa@csa-net.dk>
> wrote:
>
>>> Findes der en patch til qmail, som gør, at man kan sige, at den kun
>>> skal godtage mail med xx@domain.dk som afsender (både i envelope samt
>>> headers), såfremt SMTP forbindelsen er oprettet fra f.eks.
>>> 192.168.5.0/24 ?
>>
>>No patches needed (bortset fra QMAILQUEUE, hvis du koerer qmail-1.03)
>>
>>Tilfoej flg til /etc/tcp.smtp (og koer tcprules)
>>192.168.5.:allow,QMAILQUEUE="/path/to/qfilter"
>>
>>/path/to/qfilter indeholder flg:
>>
>>#!/bin/sh
>>exec /var/qmail/bin/qmail-qfilter \
>> /path/to/rejecter
>>
>>qmail-qfilter finder du paa:
>>
>> http://untroubled.org/qmail-qfilter/
>>
>>/path/to/rejecter indeholder flg:
>>
>>#!/bin/sh
>>exec 3</dev/stdin
>>if [ "$QMAILUSER@$QMAILHOST" == "user@host" ] ; then
>> sed -e '/^$/q' <&3 | grep -qi '^From: user@host' || exit 31
>> exec cat -
>>else
>> exit 31
>>fi
>>
>>Ret/skriv rejecter scriptet/programmet saa det passer til dine behov.
>
> Hmm.... det sætter den jo kun op på TCP forbindelser fra 192.168..5.x
> - dem har jeg styr på.... det er alle dem udefra, der er problemet (og
> qmail-queue patch'en har jeg allerede på, den bliver brugt til at
> starte qmail-scanner-queue:
>
> :allow,QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"

Saa brug $TCPREMOTEIP til at checke hvor forbindelsen er oprettet fra i
"rejecter" scriptet.

Mht qmail-qfilter og qmail-scanner burde man normalt kunne kalde
qmail-scanner-queue.pl fra qfilter, lige som man kan kalde spamc og
andet godt:

#!/bin/sh
exec /var/qmail/bin/qmail-qfilter \
/path/to/rejecter -- \
/path/to/spamc -- \
/path/to/reject-spam-over-10 -- \
/path/to/my-custom-filter

Det lader dog umiddelbart ikke til qmail-scanner er glad for at blive
kaldt fra qmail-qfilter. Det kan dog nemt klares ved at saette

#define QMAIL_QUEUE "/var/qmail/bin/qmail-scanner-queue.pl"

i qmail-qfilter.c

> Det, som jeg ville foretrække var, at når der kommer følgende i SMTP
> dialogen:
>
> mail from:xx@domain.dk
>
> så skulle smtp daemonen checke, om TCP forbindelsen var oprettet fra
> 192.168.5.x (eller 127.0.0.1) - og hvis det ikke var tilfældet, så
> skulle den melde fejl tilbage (553 - false sender detected) eller
> noget i den stil....

Saa maa du nok selv igang med at skrive en lap - du kan jo tage
udgangspunkt i badmailfrom koden (og goodmailfrom patchen)


/Claus A


Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste