Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Postfix - omezení na odesílání

Dobrý den,

můžete mi prosím poradit? Nejsem expert na nastavování postfixu a jde mi o to, že potřebuji omezit možnost odeslání na konkrétní domény. Respektive potřebuji povolit pouze 2 konkrétní a vše ostatní zakázat.

Prostudoval jsem různé tutorialy a zjistil (možná špatně), že to jde udělat konfigurací v main.cf v sekci smtpd_recipient_restriction a pomocí hash souboru access.

Tudíž vytvořil jsem soubor access, do kterého jsem vepsal 2 požadované domény:

#access
domena1.cz OK
domena2.cz OK

poté spustil postmap /etc/postfix/access

a v main.cf mám:

smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated,
check_recipient_access hash:/etc/postfix/access,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unauth_destination,
reject_unauth_pipelining,
reject_invalid_hostname,
reject_unknown_sender_domain,
reject_rbl_client zen.spamhaus.org,
reject_rhsbl_sender dsn.fc-ignorant.org,
reject

Poté /etc/init.d/postfix reload a restart.

Přesto stále mohu doručit e-mail na @seznam.cz nebo @centrum.cz (ale šlo by to i na ostatní, což nechci).

Prosím o pomoc, díky.

Předmět Autor Datum
máš špatné pořadí pravidel. na prvním řádku povoluješ relay pro tvé sítě a pak už to jede samospáde…
touchwood 15.10.2014 16:12
touchwood
Díky, dobrá. Jen nechápu - domény @seznam.cz, @atlas.cz, @gmail.cz přece nejsou v mynetworks? Nebo…
snaider82 15.10.2014 17:01
snaider82
Koukni do manuálu, bude ti to hned jasné.
touchwood 16.10.2014 00:02
touchwood
Ty mi dáváš :) Chápu tě, ale nejsem někdo, kdo nic nezkoumá a jen slepě opisuje. Ale nemůžu se z to…
snaider82 17.10.2014 10:53
snaider82
Tak fajn. Stačí tam dát check_recipient_acces hash:/etc/postfix/access #access: domena1.cz OK domen…
snaider82 17.10.2014 11:42
snaider82
Když ti něco nefunguje, tak přece nebudeš dělat extrémní pravidla, ne? Nejprve si tedy odlaď základ…
touchwood 17.10.2014 11:52
touchwood
Tak děkuju, už to funguje jak má. Thx poslední
snaider82 17.10.2014 13:24
snaider82

máš špatné pořadí pravidel.

na prvním řádku povoluješ relay pro tvé sítě a pak už to jede samospádem.

edit:

Restrictions are applied in the order as specified; the first restriction that matches wins.

postconf.5.html

edit2: úplně přesněji: první 2 řádky jsou špatně umístěny.

Ty mi dáváš :)

Chápu tě, ale nejsem někdo, kdo nic nezkoumá a jen slepě opisuje. Ale nemůžu se z toho vymotat. Nemohl bys mě navést trochu konkrétněji?

Hele zkoušel jsem to nastavit podle tohoto - http://www.postfix.org/RESTRICTION_CLASS_README.ht ml

Sekce Restricting what users can send mail to off-site destinations.

Moje soubory:

smtpd_recipient_restrictions =
                               check_sender_access hash:/etc/posftix/restricted_senders,
                               smtpd_restriction_classes = local_only,
                               local_only = check_recipient_access hash:/etc/postfix/local_domains,
                               permit_mynetworks,
                               permit_sasl_authenticated,
                               reject_non_fqdn_sender,
                               reject_non_fqdn_recipient,
                               reject_unauth_destination,
                               reject_unauth_pipelining,
                               reject_invalid_hostname,
                               reject_unknown_sender_domain,
                               reject_rbl_client zen.spamhaus.org,
                               reject_rhsbl_sender dsn.fc-ignorant.org, reject

restricted_senders

*@moje.dm

local_domains

domena1.cz OK
domena2.cz OK

Ale teď to hlásí chybu při odesílání kamkoli (451 4.3.5 Sender address rejected).

Dík

Tak fajn. Stačí tam dát check_recipient_acces hash:/etc/postfix/access

#access:
domena1.cz OK
domena2.cz OK

... a teď tam potřebuju dát vše ostatní REJECT

jenže * REJECT nefunguje, *@* taky ne. To tam nejde napsat hvězdička jako zástupný znak pro všechno?
Když tam vypíšu konkrétní adresu, tak restrikce jede.

Když ti něco nefunguje, tak přece nebudeš dělat extrémní pravidla, ne?

Nejprve si tedy odlaď základ:

smtpd_recipient_restrictions =
                               check_recipient_access hash:/etc/postfix/access,
                               reject

Pokud potřebuješ ještě doručovat lokálně, přidej si pravidlo pro local delivery.

Dále nechápu to tvé mixování s recipient a sender - předpokládám, že rozdíl ti je jasný!

Zpět do poradny Odpovědět na původní otázku Nahoru