Comandos de depuración virtusertable para el usuario root.

Comandos de depuración virtusertable para el usuario root.

Estoy en Solaris 5.11 ejecutando sendmail. Los nombres de usuario locales tienen el formato <letras><números> (por ejemplo, hn06511). En el pasado usábamos alias para señalar <nombredeusuario>@dominioantiguo.com.

<nombre de usuario> <nombre de usuario>@dominioantiguo.com

Ahora hay un nuevo esquema de dirección de correo electrónico y un nuevo dominio. Ahora las direcciones de correo electrónico tienen el formato <nombre>.<apellido>@nuevodominio.com.

Entonces cambié los alias para que sean:

<nombre de usuario> <nombre>.<apellido>@nuevodominio.com

Esto funciona, sin embargo, <nombredeusuario>@dominioantiguo.com ya no funciona. Para colmo de males, hay muchos scripts con direcciones de correo electrónico codificadas al estilo antiguo.

Entonces quiero cambiar <nombre de usuario>@dominioantiguo.com -> <nombre><apellido>@dominionuevo.com. Pensé que podría usar virtusertables para lograr esto, así que hice una virtusertable que contiene:

@dominioantiguo.com %1

Supuestamente eso debería tomar <cualquiera>@olddomain.com y enrutarlo solo al nombre de usuario (%1). Esperaba que los alias que he definido se tradujeran <nombre de usuario> -> <nombre>.<apellido>@nuevodominio.com. Pero hasta donde puedo ver, sendmail está ignorando completamente esta tabla de virtuser e intentando la entrega a <nombredeusuario>@olddomain.com y, por supuesto, falla.

AFAICT Formateé virtusertable correctamente y ejecuté makemap (¿debería usar dbm o hash? He visto ambos). AFAICT, puse la FUNCIÓN adecuada, realicé la creación y me aseguré de que el sendmail.cf generado esté en el lugar adecuado. He visto FUNCIÓN expresada como ambas

FUNCIÓN ( virtusertable',dbm -o /etc/mail/virtusertable')

y

FUNCIÓN ( virtusertable',hash -o /etc/mail/virtusertable')

Pero ninguno de los dos funciona.

¿Qué tipo de depuración u otra información puedo proporcionar y probar?

Gracias de antemano.

Respuesta1

Comandos de depuración virtusertable para el usuario root.

Busque la @oldomain.comentrada en virtusertable

echo '/map virtusertable [email protected]' | sendmail -bt

Compruebe si sendmail busca en virtusertable direcciones de correo electrónico de olddomain.com

echo '3,0 [email protected]' | sendmail -d60.5 -bt

-d60.5rastrea las búsquedas de mapas (también búsquedas virtusertable).


Más sugerencias:

  1. m4espera otra cita

    FEATURE(virtusertable,`hash /etc/mail/virtusertable')
    
  2. No haga que virtusertable sea opcional. Retirar -ode la FEATURElínea.
    Con -osendmail se ignora la virtusertable faltante.

  3. Sendmail utiliza una versión compilada de virtusertable. Úselo makemappara compilar virtusertable.

  4. virtusertable se consulta solo para dominios de correo electrónico locales ( $=w) y $={VirtHost}dominios.

    Utilice el siguiente comando como root para obtener ambas listas de dominios

    echo '$=w' | sendmail -bt
    echo '$={VirtHost}' | sendmail -bt
    

información relacionada