ssmtp, sendmail

send a message using smtp

ssmtp [ flags ] [ address ]

/usr/lib/sendmail [ flags ] [ address ]

send-only sendmail emulator for machines which normally pick their mail up from a centralized mailhub (via pop, imap, nfs mounts or other means). Provides the functionality required for humans and programs to send mail via the standard or /usr/bin/mail user agents.

accepts a mail stream on standard input with recipients specified on the command line and synchronously forwards the message to the mail transfer agent of a mailhub for the mailhub MTA to process.
Failed messages are placed in dead.letter in the sender's home directory.

Config files allow specifying the address to receive mail from root, daemon, etc.; a default mailhub; a default domain to be used in From: lines; and per-user From: addresses and mailhub names.

Does not provide the functionality of sendmail: intended where other programs are the primary means of mail delivery. Usefull with pop/imap, for machines whose sendmails are too difficult (or various) to configure, etc.

Does not do aliasing, which must be done either in the user agent or on the mailhub. Nor does it honor .forwards, which have to be done on the recieving host. It especially does not deliver to pipelines.

Most sendmail options are irrelevent to sSMTP. unsupported are fatal errors. Those marked simulated are not errors, but the result is for the program to exit

-au username username for SMTP authentication. (see config)
-ap password password for SMTP authentication.
-am mechanism mechanism for SMTP authentication. (Only LOGIN and CRAM-MD5)
-C file Use alternate configuration file.
-F fullname Set the full name of the sender.
-f name Sets the name of the from person. only if no From: line is specified within the header
-r name Same as -f.
-d X Set debugging value to X.
-v verbose mode.
-4 Forces IPv4 addresses only.
-6 Forces IPv6 addresses only.
-V version
-ba (unsupported) ARPANET mode.
All input lines must end with a LINEFEED, and all messages will be generated with a CR-LF at the end. Also, the From: and Sender: fields are examined for the name of the sender.
-bd (unsupported) Run as a daemon.
-bi (ignored) Initialise the alias database.
-bm (default) Deliver mail in the usual way.
-bp (simulated) Print a summary of the mail queue.
-bs (unsupported) Read SMTP commands from stdin.
-bt (unsupported) Run in address test mode.
-bv (unsupported) Verify names only.
-bz (unsupported) Create the configuration freeze file.
-E (ignored) Don't trust userid of sender.
-h (ignored) Set the hop count to N.
-m (ignored) Ignore originator in alias.
-Mid (ignored) Attempt to deliver the queued message with message-id id.
-N dsn (ignored) Set delivery status notification conditions to dsn.
-n (default) Do not do aliasing.
-oAfile (ignored) Use alternate alias file.
-oc (ignored) Delay expensive connections.
-od (ignored) Set the delivery mode to interactive/synchronous, background or queue (Always interactive).
-oD (ignored) Run newaliases if required.
-oe (ignored) Set error processing to mail, write, print or quit. (Always print).
-oFmode (ignored) The mode to use when creating temporary files.
-of (ignored) Save UNIX-system-style From lines at the front of messages.
-ogN (ignored) Set group ID to use when calling mailers.
-oHfile (ignored) Set SMTP help file.
-oi (default) Do not take dots on a line by themselves as a message terminator.
-oLn (ignored) The log level.
-om (default) Send to me (the sender) also if in an alias.
-oo (unsupported) If set, this message may have old style headers.
-oQ queuedir (ignored) Select the directory in which to queue messages.
-or timeout (ignored) The timeout on reads.
-oS file (ignored) Save statistics in the named file.
-os (ignored) Always instantiate the queue.
-oT time (ignored) Set timeout on messages.
-ot stz,dtz (ignored) Set the name of the time zone.
-ou N (ignored) Set the default user id for mailers.
-q[time] (simulated) Process the queue.
-R string (ignored) Process queue for recipient.
-R return (ignored) Set the amount of the message to be returned if the message bounces.
-t (not supported). Read message, searching for recipients. To:, Cc:, and Bcc: lines will be scanned for people to send to. Any addresses in the argument list will be suppressed


A reverse alias gives the From: address placed on a user's outgoing messages and (optionally) the mailhub these messages will be sent through. Example: Messages root sends will be identified as from and sent through


/etc/ssmtp/revaliases - reverse aliases file

AuthUser user name to use for SMTP AUTH. The default is blank, in which case SMTP AUTH is not used. sent without
AuthPass password to use for SMTP AUTH.
AuthMethod authorization method to use. If unset, plain text is used. May also be set to "cram-md5".
Root user that gets all mail for userids less than 1000. If blank, address rewriting is disabled.
Mailhub host to send mail to, in the form host port | IP_addr port [: port]. default 25.
RewriteDomain The domain from which mail seems to come. for user authentication.
Hostname full qualified name of the host. If not specified, the host is queried for its hostname.
FromLineOverride whether From header may override the default domain. default "no".
UseTLS uses TLS to talk to the SMTP server. The default is "no".
UseSTARTTLS does a EHLO/STARTTLS before starting SSL negotiation. See RFC 2487.
TLSCert f file of an RSA certificate to use for TLS,
SEE ALSO RFC821, RFC822, ssmtp.conf(5). sSMTP does not support exception lists to the -t option (never seen it used). sSMTP will fail if the mailhub is unreachable.