GPG-MAIL-TUBE(1) GNU Privacy Guard 2.6 GPG-MAIL-TUBE(1)
NAME
@para{}gpg-mail-tube — Encrypt rfc822 formatted mail in a pipelineSYNOPSIS
@para{}gpg-mail-tube [ options ] recipients
DESCRIPTION
gpg-mail-tube takes RFC-822 formatted mail on stdin and turns it into a PGP/MIME encrypted mail which is then written to stdout.
The recipients must be plain mail addresses (e.g. foo@example.org) and should in general list the To and Cc addresses contained in the mail.
OPTIONS
gpg-mail-tube understands these options:
- --verbose -v Enable extra informational output.
- --quiet -q Try to be as quiet as possible.
- --log-file file Write log output to file. Use socket:// to log to a socket.
- --no-stderr Suppresses all output to stderr. This is useful for callers which don't distinguish stdout and stderr. To get diagnostics the option --log-file can be used.
- --header name=value Add the mail header "name: value" to the output.
- --setenv name=value Put the given environment string into the environment of this process and of the called gpg. This option is required if there is no other way to set the environemt.
- --as-attach -a Do not write a PGP/MIME mail but emit a simple body along with an attachment containing the encrypted body of the input mail. If the input was a plain text message a simple encrypted file will be attached. If the input was a multipart MIME message the encrypted file is of type message/rfc822.
- --gpg gpgcmd Use the specified command gpgcmd instead of gpg.
- --vsd Use the gpg from a GnuPG VS-DesktopĀ® AppImage. The AppImage is started if it is not running. A symlink named ~/.gnupg-vsd/gnupg-vs-desktop.AppImage needs to link to the actually to be used AppImage.
- --version Print version of the program and exit.
- --help Display a brief help page and exit.
EXAMPLES
The following options can be used in a local transport rule of the Exim MTA which assumes that that check_local_user has been used in the router.
transport_filter = /usr/local/bin/gpg-mail-tube --setenv HOME=${home} \ --no-stderr -- $pipe_addresses
For a remote transport the use of size_addition and an explicit setting of the user and its home directory might be required. To avoid permission problems it is often better to use a service like userv to run the command under a different user. This can be done by using this transport_filter:
transport_filter = /usr/bin/userv -- foo gpg-mail-tube $pipe_addresses
With foo being the account name used by GnuPG. In that user's home directory you will install a file ~/.userv/rc with this content:
if ( glob service gpg-mail-tube & glob calling-user Debian-exim & glob service-user foo ) reset errors-to-syslog no-suppress-args execute /usr/local/bin/gpg-mail-tube \ -v --no-stderr \ --log-file /home/foo/logs/mail-tube.log \ --setenv HOME=/home/foo -- quit fi
Take care to have the trailing double dashes and adjust the log-file as needed. The errors-to-syslog statement makes sure that errors pertaining to the userv system (e.g. script errors) are directed to the syslog (facility is "user", level is "error"). If needed replace Debian-exim by the name of the user under which Exim is running.
DIAGNOSTICS
The program returns 0 on a successful encryption or a non-zero value on error. Note that on error some output might have already been written to stdout.
SEE ALSO
gpg(1),
The full documentation for this tool is maintained as a Texinfo manual. If GnuPG and the info program are properly installed at your site, the command
info gnupg
should give you access to the complete manual including a menu structure and an index.