Chyba "554 5.3.5 buildaddr: unknown mailer hub: Unknown error 4294936307"

Miroslav BENES miroslav.benes na zdas.cz
Čtvrtek Leden 5 14:57:44 CET 2006


Náčrt situace (doufám že bude čitelný) :

+----------+
| mx.prvni +-----+
+----------+     |
                 |   +------------+     +----------+      +--------+
+----------+     |   |  centralni |     |          |      | vnejsi |
| mx.druha +-----+---+ mailserver +-----+ firewall +------+   mx   
+-----> Internet
+----------+     |   |            |     |          |      |        |
                 |   +------------+     +----------+      +--------+
+----------+     |
| mx.treti +-----+
+----------+


Veškerá pošta odcházející z domén prvni,cz, druha.cz apod. se 
shromažďuje na vnitřním "centrálním" mailserveru. Pokud patří do jiné 
domény uvnitř naší sítě, je předaná příslušnému mailserveru. Pokud má 
odejít "ven", předává se na FW. Ten udělá antivirovou kontrolu a předá 
ji dál - na vnější mailserver, který ji převezme a postará se o doručení.

Přicházející poštu (pokud je pro někoho z vyjmenovaných domén) přebírá 
"Vnější MX", které ji pak předává na FW.

Vypadá to složitě, ale udržuje se to docela dobře.
No a mě jde o to, že nahrazuji "Vnější MX", takže potřebuju nastavit 
chování:

 - doručuj odchozí poštu kamkoliv, pokud je odesilatel z vyjmenovaných 
domén (a pokud přichází se stroje FW)
 - přebírej poštu přicházející odkukoliv, pokud je adresát ve 
vyjmenovaných doménách a předávej ji na adresu FW




>
> Tohle se obavam, ze neni pravda - OP se ptal na povoleni posty, pokud 
> je _odesilatel_ z uvedenych domenach.

Asi bych to měl upřesnit - odesilatel a/nebo adresát.

> To pomoci RELAY asi nezaridite, krome toho je to celkem riziko. 
> Kdokoliv muze podvrhnout adresu odesilatele tak, aby byla z Vami 
> prijimanych domen, a pak odesilat spam "z Vasi adresy" kamkoli.

No jo sakra, to jsem si neuvědomil.
Ale zdá se, že to nejde (připojeno z ntb přes tel adaptér, tedy "zvenku"):

220 ns.prvni.cz ESMTP Sendmail 8.13.4/8.13.4; Thu, 5 Jan 2006 14:35:31 +0100
HELO ddd
250 ns.prvni.cz Hello p0982.as-l041.contactel.cz [194.108.235.220], 
pleased to meet you
MAIL FROM: blbec na prvni.cz
250 2.1.0 blbec na prvni.cz... Sender ok
RCPT TO: nekdo na post.cz
550 5.7.1 nekdo na post.cz... Relaying denied
QUIT
221 2.0.0 ns.prvni.cz closing connection

IMHO je to proto, že v souboru /etc/mail/access je toto :

localhost.localdomain           RELAY
localhost                       RELAY
127.0.0.1                       RELAY
# fw
111.222.333.444                 RELAY
# spravovane domeny
del.cz                          RELAY
zdas.cz                         RELAY
zdas.com                        RELAY
zdas.biz                        RELAY

Takže (pokud to dobře chápu) bude fumkce "RELAY" (tedy předání pošty 
ven) dostupná jen pokud má odesilatel správnou (jednu z vyjmenovaných) 
IP nebo pokud pokud jeho IP po zpětném překladu zapadne do vyjmenovaných 
domén.


Ale úplně ideální to není :

220 ns.prvni.cz ESMTP Sendmail 8.13.4/8.13.4; Thu, 5 Jan 2006 14:32:17 +0100
HELO aaa
250 ns.prvni.cz Hello p0982.as-l041.contactel.cz [194.108.235.220], 
pleased to meet you
MAIL FROM: blbec na prvni.cz
250 2.1.0 blbec na prvni.cz... Sender ok
RCPT TO: existujici.jmeno na prvni.cz
250 2.1.5 existujici.jmeno na prvni.cz... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
necum
a
makej
.
250 2.0.0 k05DWHg8015029 Message accepted for delivery
QUIT
221 2.0.0 ns.prvni.cz closing connection


Spammer tedy může podvrhnout poštu mířící dovnitř a vydávat se přitom za 
vnitřního odesilatele.
Dá se toto nějak omezit - tj. aby odesilatelé z vyjmenovaných domén 
mohli posílat maily jen z jedné povolené IP adresy ?


> Myslim, ze lepsi je pouzit SASL, nebo alespon nejakou metou 
> SMTPafterPOP3.

SASL - šifrované spojení ? To asi lepší nebude - FW ho totiž musí 
rozebrat a zkontrolovat.




BTW nakonec jsem to "vyřešil" tak, že jsem se podíval na konfiguraci 
vnitřního "centrálního" mailserveru, který dělá analogicky totéž - tj. 
rozesílá podle cílové domény na příslušné stroje. A v jeho konfiguraci 
je totéž, jen se místo $#hub používá $#esmtp. Syntaxe které zdá se chodí 
je tedy :

R$+ < @ prvni . cz . >          $#esmtp $@ fw.prvni.cz $: $1 < @ prvni . 
cz >
#R$+ < @ $* . prvni . cz . >    $#esmtp $@ fw.prvni.cz $: $1 < @ $2 
prvni . cz >
R$+ < @ neco . prvni . cz . >   $#esmtp $@ fw.prvni.cz $: $1 < @ neco . 
prvni . cz >

R$+ < @ prvni . com . >         $#esmtp $@ fw.prvni.cz $: $1 < @ prvni . 
com >
R$+ < @ prvni . biz . >         $#esmtp $@ fw.prvni.cz $: $1 < @ prvni . 
biz >

R$+ < @ druha . cz . >          $#esmtp $@ fw.prvni.cz $: $1 < @ druha . 
cz >

atd.






Další informace o konferenci Sendmail