
Necesito proporcionar el nombre de un servidor de retransmisión a mi archivo de configuración de sendmail. Sin embargo, este nombre de servidor se puede configurar a través de otro sistema/aplicación.
En caso de un cambio, necesito cambiar el nombre del servidor en este archivo y reiniciar sendmail.
Además, no tengo la opción de compilar el archivo sendmail.mc cada vez que cambia.
¿Es posible pedirle a sendmail que lea/incluya otro archivo para el nombre del servidor? ¿Este archivo contendrá el nombre del servidor que se ha configurado en el sistema?
algo como: include("./severname.conf");
donde servername.conf tendrá el nombre del servidor al que se debe realizar la retransmisión.
¿Es posible?
Respuesta1
El host inteligente es macro, $S
por lo que necesita una secuencia de comandos como este:
cd /etc/mail
cp sendmail.cf sendmail.cf.old
sed -e 's/^DSold.host.name/DSnew.host.name/' sendmail.cf.old > sendmail.cf
y luego reinicie sendmail.
Respuesta2
Puede utilizar la ruta predeterminada en mailertable en lugar del host inteligente; consulteFUNCIÓN (mesa de envío por correo). Será consultado/utilizadoanteshost inteligente => anulará el host inteligente.
entrada de archivo de envío por correo para la ruta predeterminada ("punto único" como clave):
. relay:smart-host.example.net
Sendmail usa la versión del archivo compilada usando makemap
el programa. No sendmail
es necesario reiniciar el demonio después de la recompilación por parte de makemap
.
Cómo probarlo:
sendmail -C/etc/mail/sendmail-test.cf -d60.5 -bv [email protected]
-C file
- usar un archivo de configuración alternativo
-d60.5
- activar las búsquedas de mapas de seguimiento (incluido el mapa que se puede enviar por correo)