Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post Reply
locotur
Posts: 6
Joined: Wed Aug 22, 2018 3:43 pm

Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post by locotur »

Hola, buenos días a todos tengo configurado un zimbra 8.8 y solo me recibe correo de aquellos host que tengo declarado en mynetwork el que no está declarado cuando llega un correo le da el siguiente error NOQUEUE: reject: RCPT from unknown 554 5.7.1.
Alguien tiene alguna idea porque sucede esto??.
Saludos
User avatar
pup_seba
Outstanding Member
Outstanding Member
Posts: 687
Joined: Sat Sep 13, 2014 2:43 am
Location: Tarragona - Spain
Contact:

Re: Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post by pup_seba »

El error que describes es raro...raro que pase si alguien no toca intencionalmente configuraciones.

Puede ser que hayas cambiado cosas relativas a la autenticación smtp, sasl, dominios permitidos, etc?

Has visto algo en los logs? Algún error tendrias que poder ver.
locotur
Posts: 6
Joined: Wed Aug 22, 2018 3:43 pm

Re: Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post by locotur »

Hola estas son todas las modificaciones que tienes.

1. Crear un archivo con el nombre rcpt_local_only dentro de la carpeta /opt/zimbra/conf/zmconfigd
# nano /opt/zimbra/conf/zmconfigd/rcpt_local_only
y agregarle las siguientes líneas:
check_sender_access texthash:/opt/zimbra/common/conf/dominio_CU
reject

2. Crear otro archivo con nombre send_local_only también dentro de la carpeta /opt/zimbra/conf/zmconfigd
# nano /opt/zimbra/conf/zmconfigd/send_local_only
con el siguiente contenido:
check_recipient_access texthash:/opt/zimbra/common/conf/dominio_CU
reject

3. Editar el archivo /opt/zimbra/conf/zmconfigd/smtpd_recipient_restrictions.cf
# nano /opt/zimbra/conf/zmconfigd/smtpd_recipient_restrictions.cf
insertar las siguientes líneas:
check_sender_access texthash:/opt/zimbra/common/conf/internet_users
check_sender_access texthash:/opt/zimbra/common/conf/restricted_senders
check_recipient_access texthash:/opt/zimbra/common/conf/internet_users
check_recipient_access texthash:/opt/zimbra/common/conf/restricted_rcpts

Debe quedar aproximadamente como sigue:

%%contains VAR:zimbraMtaRestriction check_client_access texthash:/opt/zimbra/conf/postfix_blacklist%%
%%contains VAR:zimbraServiceEnabled cbpolicyd^ check_policy_service inet:localhost:%%zimbraCBPolicydBindPort%%%%
reject_non_fqdn_recipient
check_sender_access texthash:/opt/zimbra/common/conf/internet_users
check_sender_access texthash:/opt/zimbra/common/conf/restricted_senders
check_recipient_access texthash:/opt/zimbra/common/conf/internet_users
check_recipient_access texthash:/opt/zimbra/common/conf/restricted_rcpts
permit_sasl_authenticated
permit_mynetworks
reject_unlisted_recipient
%%exact VAR:zimbraMtaRestriction reject_invalid_helo_hostname%%
%%exact VAR:zimbraMtaRestriction reject_non_fqdn_helo_hostname%%
%%exact VAR:zimbraMtaRestriction reject_non_fqdn_sender%%
%%exact VAR:zimbraMtaRestriction reject_unknown_client_hostname%%
%%exact VAR:zimbraMtaRestriction reject_unknown_reverse_client_hostname%%
%%exact VAR:zimbraMtaRestriction reject_unknown_helo_hostname%%
%%exact VAR:zimbraMtaRestriction reject_unknown_sender_domain%%
%%exact VAR:zimbraMtaRestriction reject_unverified_recipient%%
%%contains VAR:zimbraMtaRestriction check_recipient_access texthash:/opt/zimbra/conf/postfix_recipient_access%%
%%contains VAR:zimbraMtaRestriction check_client_access texthash:/opt/zimbra/conf/postfix_rbl_override%%
%%contains VAR:zimbraMtaRestriction check_reverse_client_hostname_access pcre:/opt/zimbra/conf/fqrdns.pcre%%
%%explode reject_rbl_client VAR:zimbraMtaRestrictionRBLs%%
%%explode reject_rhsbl_client VAR:zimbraMtaRestrictionRHSBLCs%%
%%explode reject_rhsbl_reverse_client VAR:zimbraMtaRestrictionRHSBLRCs%%
%%explode reject_rhsbl_sender VAR:zimbraMtaRestrictionRHSBLSs%%
%%contains VAR:zimbraMtaRestriction check_policy_service unix:private/policy%%
%%contains VAR:zimbraMtaRestriction check_recipient_access ldap:/opt/zimbra/conf/ldap-splitdomain.cf%%
%%exact VAR:zimbraMtaRestriction reject%%
permit

4. Crear el archivo /opt/zimbra/conf/zmconfigd/smtpd_restriction_clases.cf
# nano /opt/zimbra/conf/zmconfigd/smtpd_restriction_clases.cf
y se le adiciona lo siguiente:
rcpt_local_only
send_local_only
4.1 Para que todo eso funcione hay que declarar la clase smtpd_restriction_classes.cf y declarar las variables rcpt_local_only y send_local_only, para esto nos vamos al fichero:
nano /opt/zimbra/conf/zmconfigd.cf
agregamos
POSTCONF smtpd_restriction_classes FILE zmconfigd/smtpd_restriction_clases.cf
POSTCONF send_local_only FILE zmconfigd/send_local_only
POSTCONF rcpt_local_only FILE zmconfigd/rcpt_local_only


5. Crear los archivos con los usuarios o dominios que poseen restricciones en el envío y en la recepción, aquí poner todos los dominios, los usuarios especificados que poseen permisos para enviar y recibir estarán en otra lista.

# nano /opt/zimbra/common/conf/restricted_senders
xxx.cu send_local_only
ttt.xxx.cu send_local_only

# nano /opt/zimbra/common/conf/restricted_rcpts
xxx.cu rcpt_local_only
ttt.xxx.cu rcpt_local_only

6. Crear el archivo /opt/zimbra/common/conf/dominio_CU
# nano /opt/zimbra/common/conf/dominio_CU
y se le adiciona lo siguiente:
cu OK

7. Ahora es necesario ejecutar postmap para crear los archivos .texthash correspondientes (debe ponerse el camino completo /opt/zimbra/common/sbin/postmap), como aparece a continuación:
# /opt/zimbra/common/sbin/postmap /opt/zimbra/common/conf/restricted_senders
# /opt/zimbra/common/sbin/postmap /opt/zimbra/common/conf/restricted_rcpts
# /opt/zimbra/common/sbin/postmap /opt/zimbra/common/conf/dominio_CU

Final estas son las modificaciones que tiene.. Saludos y gracias por responder
User avatar
pup_seba
Outstanding Member
Outstanding Member
Posts: 687
Joined: Sat Sep 13, 2014 2:43 am
Location: Tarragona - Spain
Contact:

Re: Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post by pup_seba »

Vaya! Si que habéis hecho cosillas!!! :)

Con estas configuraciones qué intentabais hacer exactamente? Es evidente que estáis intentando hacer más restrictiva la forma en que trabaja el mta, pero me gustaría entender exactamente qué querías restringir.

Estoy con el móvil, pero hay cosas que en principio parecen poco ortodoxas... posiblemente por desconocimiento mío. Por ejemplo, usar texthash en lugar de lmdb en la 8.8, o crear un restrictions.cf cuando varias de esas restricciones se pueden hacer con zmprov.

Por tanto:
1) cuales son exactamente las mejoras que queréis implementar?
2) estos procedimientos que has puesto aquí, son propios, de zimbra o de otros sites (org de postfix, blogs de terceros, etc). En caso de ser de terceros, podrías compartir los links?
3) tienes la producción parada o es un server de pruebas?
locotur
Posts: 6
Joined: Wed Aug 22, 2018 3:43 pm

Re: Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post by locotur »

Estoy con el móvil, pero hay cosas que en principio parecen poco ortodoxas... posiblemente por desconocimiento mío. Por ejemplo, usar texthash en lugar de lmdb en la 8.8, o crear un restrictions.cf cuando varias de esas restricciones se pueden hacer con zmprov.

Por tanto:
1) cuales son exactamente las mejoras que queréis implementar?
2) estos procedimientos que has puesto aquí, son propios, de zimbra o de otros sites (org de postfix, blogs de terceros, etc). En caso de ser de terceros, podrías compartir los links?
3) tienes la producción parada o es un server de pruebas?

Aquí le respondo.
1- el texthash es sustituido por el hash en esta versión cuando creas un fichero y lo compilas con el postmap.
2- Lo que tengo hecho es una restricción por usuarios que pueden enviar a cualquier dominio de correo y otros que solo pueden enviar nacionales es decir a (.cu) pues para eso capturo las direcciones de los miembros de un grupo en el AD y la escribo a un fichero con un OK detrás y entonces son esas las que pueden enviar hacia cualquier lugar sin ningún tipo de restricción, todo esto lo hice ya hace mucho tiempo y fui armando mi configuración la cual funciona perfectamente y el ambiente esta en producción solo que me molesta que cuando yo quito de mynetwork las dir. ip de los servidores que me entregan correo, éste simplemente las rechaza, también debo decirle que este servidor pose más de un dominio de distintas empresas...
Ya le digo el funciona pero quisiera que todo fuera atravéz de consulta DNS y no agregando la red de quien me entrega en mynetwork.
Saludos
User avatar
pup_seba
Outstanding Member
Outstanding Member
Posts: 687
Joined: Sat Sep 13, 2014 2:43 am
Location: Tarragona - Spain
Contact:

Re: Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post by pup_seba »

Hay guías para lo que intentas conseguir, pero difieren un poco de cómo lo haces tu.

https://wiki.zimbra.com/wiki/Restrict_u ... ain_domain

También parece que la configuración del postfix es muy propensa a ser restrictiva.

En tu lugar, empezaria por 3 cosas.
1) Ver qué te dicen los logs, subiendo el nivel de verbosidad en caso que actualmente no te digan nada. Sin embargo, deberían darte errores de tipo 'unauthogized' ahora mismo sin tocar la verbosidad. Esta es la clave para ir a tiro seguro.
2) Relajaria las comprobaciones de seguridad que haces a nivel de mta. Checks de hostname, fqdn, rdns...parece que está todo en reject y aunque sea muy seguro, también hará que rechaces grsn parte del correo (culpa de quienes te lo envían y no tienen sus deberes hechos). Hacer esto a nivel de mta tiene sus ventajas pero suele ser más operativo dejar que pasen del mta y sea el antispam quien puntúe en función de esos criterios.
3) Intentaría ver en qué difiere lo que tenéis hecho de lo que sugieren las guías oficiales de Zimbra para ajustarlo. Todo y que, restringir el envío de correos a ciertos dominios es práctica habitual (normalmente varios clientes quieren wue ciertas cuentas solo puedan enviar correo interno), hacerlo no debería limitar la capacidad de tus mta de entregar el correo qur os envian de fuera.

Siento no tener respuesta, son varias configuraciones las que tenéis hechas y encontrar la que está dando problemas, si no se sabe cual es (como es mi caso), la única opción es ir mirando de una en una...aunque algo se debería ver en los logs...

Saludos,
AndresTarallo
Advanced member
Advanced member
Posts: 56
Joined: Fri Sep 12, 2014 11:53 pm
Location: Montevideo, Uruguay
Contact:

Re: Zimbra rechaza correos si el servidor que entrega no está en mynetwork

Post by AndresTarallo »

locotur wrote:Hola, buenos días a todos tengo configurado un zimbra 8.8 y solo me recibe correo de aquellos host que tengo declarado en mynetwork el que no está declarado cuando llega un correo le da el siguiente error NOQUEUE: reject: RCPT from unknown 554 5.7.1.
Alguien tiene alguna idea porque sucede esto??.
Saludos
Si aun no has resuelto esto:¿Podrias compartir parte de tu configuración de Zimbra? En particular necesitaríamos ver del MTA (postfix) SMTPD_sender_restrictions y smtpd_recipient_restrictions. Esto se saca por linea de comando.

También es útil que cuentes un poco mas detallado como esta configurado tu instalación.
Post Reply