Uso SMTP remoto a través de nullmailer y requiere establecer el campo De con el nombre específico, pero cron lo configuró como root@my.sweet.server.com.
¿Cómo podría cambiarlo a algo como me@ya.ru?
Uso SMTP remoto a través de nullmailer y requiere establecer el campo De con el nombre específico, pero cron lo configuró como root@my.sweet.server.com.
¿Cómo podría cambiarlo a algo como me@ya.ru?
Respuestas:
No creo que pueda cambiar la dirección DE (alguien debería agregar una opción MAILFROM).
Sin embargo, puede hacer algo como esto para lograr un resultado similar:
* * * * * /path/to/script 2>&1 | mail -s "Output of /path/to/script" toaddress@example.com -- -r "fromaddress@example.com" -F"Full Name of sender"
Toda la salida se canaliza al comando de correo, por lo que la variable MAILTO no se usa en absoluto.
Debería establecerse la dirección a, pero es posible que pueda usar la variable $ MAILTO. El - configura el resto de las opciones como opciones de envío de correo para que pueda usar las opciones -r y -F.
-s es el tema
-r es la dirección de respuesta
-F es el nombre completo del remitente (hace que se vea bien en los clientes de correo electrónico)
Las versiones modernas de cron aceptan "MAILFROM = ..." en el formato crontab. Te sugiero que pruebes "man 5 crontab". Si menciona MAILFROM, su versión debería ser compatible. La frase a buscar está hacia el final del párrafo que trata sobre MAILTO, y debería ser algo como esto:
If MAILFROM is defined (and non-empty), it will be used as the envelope sender address, otherwise, ''root'' will be used.
MAILFROM
en man 5 crontab
.
cronie
para reemplazar cron
en Debian / Ubuntu. Ta-daa: MAILFROM
existe:
/ etc / mailname contiene la parte del nombre de dominio de la dirección FROM. Si / etc / mailname contiene 'somecompany.com', el cron que se ejecuta para root tendría un remitente como root@somecompany.com
Puede establecer el nullmailer desde la dirección a través de variables de entorno o línea de comandos. Los argumentos de la línea de comando son -f
y -F
para la dirección del remitente y el nombre completo, respectivamente.
Por lo general, puede establecer variables de entorno en el crontab.
NULLMAILER_USER=webmaster
NULLMAILER_HOST=host.example.com
NULLMAILER_NAME="Mr Cron"
5 0 * * * /usr/local/bin/daily.sh
Para mí, la forma más fácil de cambiar la dirección de origen en un sistema es crear un ~/.mailrc
archivo con contenido como este:
set name="My Full Name"
set from="myrealemail@example.com"
Cualquiera de los mail
comandos que se ejecutan como mi usuario ahora usa esta configuración.
Vea esta pregunta si usa Exim:
exim: reescribe el encabezado "From" al sobre "FROM"
Debería establecer la dirección "De" para el propietario del cronjob. Puede reemplazarlo $header_from:
con su dirección personalizada si desea codificarlo por otra cosa.
Otra alternativa simple es usar mutt,
cree un .muttrc en el directorio de inicio del usuario que ejecuta cron con lo siguiente
set realname = "Joe User" set from = "user @ host" set use_from = yes
Ejecute una secuencia de comandos con el comando mutt o canalice el comando cron para mutt y enviar correo electrónico.
Antes de que mutt envíe y envíe un correo electrónico, establecerá el encabezado From del archivo .muttrc.
se envía por correo desde el usuario @ dominio: el usuario es el nombre de inicio de sesión con el que se ejecuta el cron, por lo que tendría que crear un usuario 'yo' y ejecutar el trabajo cron como ese usuario.
Luego, para cambiar el dominio, hay diferentes posibilidades: podría ser que necesite cambiar la entrada del archivo de hosts (o, como en mi máquina, cuando estaba configurando esto, un cuadro de ubuntu), cambiar / etc / mailname - para ser el dominio del que quieres que provenga.