Restricción se refiene al nombre de la restricción en sí.
RC se refiere a que tipo de restricción se aplica, siendo estas Client, HELO, Sender y Recipient, respectivamente.
Depende de nos indicará de que variables depende.
Notas están explicadas al final de la tabla.
| Notacion | |
|---|---|
| D(IP) | Nombre de dominio por resolucion inversa de DNS de la direccion IP |
| [IP] | Esta IP o su red |
| [a,b] | Este dominio o su padre |
| [x] | El dominio x o dominios padre |
| El dominio x o subdominios | |
| Restricción | Arg | RC | Depende de | Explicación | Acción | Notas |
|---|---|---|---|---|---|---|
| Conexión de IP | ||||||
| reject_unknown_client | IP | CHSR | - | IP no tiene PTR | Reject | |
| permit_mynetworks | IP | CHSR | $mynetworks | - | Permit | |
| check_client_access | IP | CHRS | map:client_access [IP],[D(IP)] | 1,3 | ||
| reject_maps_rbl | IP | CHSR | $maps_rbl_domains | 2 | ||
| HELO/EHLO h | ||||||
| reject_invalid_hostname | h | HSR | - | Sintaxis incorrecta de 'h' | Reject | |
| permit_naked_ip_address | h | HSR | - | h es una direcciín IP sin [] | Dunno | |
| reject_unknown_hostname | h | HSR | - | h no tiene en DNS registro A ni MX | Reject | |
| reject_non_fqdn_hostname | h | HSR | - | h no está en la forma FQDN | Reject | |
| check_helo_access | h | HSR | map:helo_access [h] | 1 | ||
| MAIL FROM a@b.c | ||||||
| reject_unknown_sender_domain | b.c | SR | - | b.c no tiene registro A ni MX | Reject | |
| check_sender_access | a@b.c | SR | map:sender_access a@b.c,[b.c],a@ | 1,4 | ||
| reject_non_fqdn_sender | b.c | SR | - | b.c no está en la forma FQDN | Reject | |
| reject_sender_login_mismatch | ||||||
| RCPT TO d@e.f | ||||||
| permit_mx_backup | e.f | R | - | Somos MX para e.f && Permit | Accept | |
| check_recipient_access | d@e.f | R | map:recipient_access d@e.f,[e.f],d@ | 1,4 | ||
| reject_unknown_recipient_domain | e.f | R | - | e.f no tiene registro A ni MX | Reject | |
| reject_non_fqdn_recipient | e.f | R | - | e.f no está en forma FQDN | Reject | |
| permit_auth_destination | e.f | R | $relay_domains | e.f = <$relay_domains> && Permit | Dunno | |
| $mydestination | e.f = $mydestination && Permit | |||||
| $inet_interfaces | e.f = $inet_interfaces && Permit | |||||
| $virtual_maps | e.f => $virtual_maps && Permit | |||||
| reject_unauth_destination | e.f | R | $relay_domains | e.f = <$relay_domains> && Dunno | Reject | |
| $mydestination | e.f = $mydestination && Dunno | |||||
| $inet_interfaces | e.f = $inet_interfaces && Dunno | |||||
| $virtual_maps | e.f => $virtual_maps && Dunno | |||||
| check_relay_domains | IP, e.f | R | $relay_domains | D(IP) = <$relay_domains> && Permit | Reject | |
| $relay_domains | e.f = <$relay_domains> && Permit | |||||
| $mydestination | e.f = $mydestination && Permit | |||||
| $inet_interfaces | e.f = $inet_interfaces && Permit | |||||
| $virtual_maps | e.f => $virtual_maps && Permit | |||||
| header_check, body_checks | ||||||
| 1 | Si se encuentra en la tabla, aplicar el resultado que figure. Si no, No-Sé. |
| 2 | Si se encuentra, rechazar. Si no, No-Sé. |
| 3 | Si la dirección IP del cliente es a.b.c.d que se resulve al
nombre de dominio x.y.z, Postfix busca en la tabla en el orden:
Se queda con la primera que encuentre.
Si el tipo de la tabla es regexp o pcre, entonces se recorre
secuencialmente y se intentan emparejar todas sus entradas con
x.y.x y después con a.b.c.d
|
| 4 | Si la dirección de correo-e v@x.y.z Postfix busca en la tabla en el orden:
Se queda con la primera que encuentre.
Si el tipo de la tabla es regexp o pcre, entonces se recorre
secuencialmente y se intentan emparejar todas sus entradas con
v@x.y.z
|
Esta información se ha obtenido de un documento de La Universidad de Córdoba.