Bien, ahora funciona. Dejaré este informe para la posteridad.
Al utilizar mail
desde la línea de comandos, postfix
tiene que ser configurado correctamente. No parece que obtenga la configuración de su servidor smtp de Mail.app (tal vez lo hacía, pero ya no). Tienes que configurarlo tú mismo. La documentación pertinente se puede encontrar aquí: http://www.postfix.org/SOHO_README.html#fantasy
Estos ajustes funcionan:
# Set external SMTP relay host here, IP or hostname accepted along with a port
relayhost = smtp.myispserver.com:465
# Set username and password
smtp_sasl_password_maps = static:myusername:mypassword
# Enable auth
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
# Turn on tls encryption
smtp_tls_security_level = encrypt
header_size_limit = 4096000
# For port 465
smtp_tls_wrappermode = yes
smtp_tls_security_level = encrypt
# For rewriting mymacusername@mymacname.home to myusername@myisp.com
smtp_generic_maps = hash:/etc/postfix/generic
Si el puerto saliente 25 está bloqueado, utilice 465 o 587. Mi sospecha de que el servidor smtp se negaba a aceptar conexiones con encabezados "From: " incorrecto, estaba en lo cierto. La respuesta fue: Dirección del remitente rechazada: Dominio no encontrado (en respuesta al comando RCPT TO). Utilice smtp_generic_maps para reescribir.
Compruebe los registros de smtp y smtpd con:
log stream --predicate '(process == "smtpd") || (process == "smtp")' --info