Я установил gpg-mailgate из этот репозиторий на моем сервере, как указано в УСТАНОВИТЬ файл.
Частично это действительно работает. Как и следовало ожидать, при отправке электронной почты на учетную запись на моем сервере, для которой нет открытого ключа GPG, gpg-mailgate просто пересылает это электронное письмо. В заголовке есть статус gpg-mailgate, который говорит об отсутствии открытого ключа и, следовательно, сообщение не было зашифровано.
Я указываю адреса электронной почты и соответствующий открытый ключ в файле конфигурации и отправляю электронное письмо на эту учетную запись, и в соответствии с информацией заголовка, это работает. В нем говорится, что он использовал сохраненный открытый ключ для шифрования сообщения. Тем не менее, это просто удаляет тело письма. Электронные письма по-прежнему поступают на правильный адрес электронной почты на сервере, но без текста в теле.
Как заставить его работать правильно?
РЕДАКТИРОВАТЬ:
/etc/postfix/master.cf
:
smtp inet n - n - - smtpd
submission inet n - n - - smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
smtps inet n - n - - smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
pickup unix n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr unix n - n 300 1 qmgr
tlsmgr unix - - n 1000? 1 tlsmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
trace unix - - n - 0 bounce
verify unix - - n - 1 verify
flush unix n - n 1000? 0 flush
proxymap unix - - n - - proxymap
proxywrite unix - - n - 1 proxymap
smtp unix - - n - - smtp
relay unix - - n - - smtp
showq unix n - n - - showq
error unix - - n - - error
retry unix - - n - - error
discard unix - - n - - discard
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
anvil unix - - n - 1 anvil
scache unix - - n - 1 scache
gpg-mailgate unix - n n - - pipe
flags= user=nobody argv=/usr/local/bin/gpg-mailgate.py ${recipient}
127.0.0.1:10028 inet n - n - 10 smtpd
-o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_helo_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o smtpd_authorized_xforward_hosts=127.0.0.0/8
/etc/gpg-mailgate.conf
:
[default]
# whether gpg-mailgate should add a header after it has processed an email
# this may be useful for debugging purposes
add_header = yes
# whether we should only sign emails if they are explicitly defined in
# the key mappings below ([keymap] section)
# this means gpg-mailgate won't automatically detect PGP recipients
keymap_only = yes
[gpg]
# the directory where gpg-mailgate public keys are stored
# (see INSTALL for details)
keyhome = /var/gpg/.gnupg
[logging]
# For logging to syslog. 'file = syslog', otherwise use path to the file.
file = /tmp/gpg-mailgate.log
#verbose = yes
[relay]
# the relay settings to use for Postfix
# gpg-mailgate will submit email to this relay after it is done processing
# unless you alter the default Postfix configuration, you won't have to modify this
host = 127.0.0.1
port = 10028
[database]
# uncomment the settings below if you want
# to read keys from a gpg-mailgate-web database
#enabled = yes
#name = gpgmw
#host = localhost
#username = gpgmw
#password =
[keymap]
# You can find these by running the following command:
# gpg --list-keys --keyid-format long user@example.com
# Which will return output similar to:
# pub 1024D/AAAAAAAAAAAAAAAA 2007-10-22
# uid Joe User <user@example.com>
# sub 2048g/BBBBBBBBBBBBBBBB 2007-10-22
# You want the AAAAAAAAAAAAAAAA not BBBBBBBBBBBBBBBB.
#user@example.com = <gpg key id>
phil@phkr.de = 88A512E52095FF45
`/etc/postfix/main.cf (заменены мои доменные имена и ssl-пути для публикации):
queue_directory = /var/spool/postfix
command_directory = /usr/bin
daemon_directory = /usr/lib/postfix/bin
data_directory = /var/lib/postfix
mail_owner = postfix
myhostname = www.myhostname.de
mydomain = myhostname.de
mydestination = localhost
unknown_local_recipient_reject_code = 550
alias_maps = hash:/etc/postfix/aliases
alias_database = $alias_maps
recipient_delimiter = +
home_mailbox = Maildir/
debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/bin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /etc/postfix/sample
readme_directory = /usr/share/doc/postfix
inet_protocols = ipv4
virtual_mailbox_domains = mydomain1.de mydomain2.de …
virtual_mailbox_base = /mail
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_minimum_uid = 50
virtual_uid_maps = static:73
virtual_gid_maps = static:73
virtual_alias_maps = hash:/etc/postfix/virtual
mailbox_size_limit = 102400000
virtual_mailbox_limit = 0
# SASL SUPPORT FOR CLIENTS
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
broken_sasl_auth_clients = no
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, check_relay_domains
smtpd_tls_security_level=may
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = mycert
smtpd_tls_key_file = mykeyfile
smtpd_tls_loglevel = 1
content_filter = gpg-mailgate
Версии:
$ postconf -d | grep mail_version
mail_version = 3.0.1
$ python2 --version
Python 2.7.10
РЕДАКТИРОВАТЬ 2:
(1) При отправке электронной почты без включенного gpg-mailgate
/tmp/gpg-mailgate.log
:
Recipient (phil@phkr.de) not in domain list.
No encrypted recipients.
Sending email to: <phil@phkr.de>
(2) При отправке электронной почты с включенным gpg-mailgate
/tmp/gpg-mailgate.log
:
Encrypting email to: phil@phkr.de
Sending email to: <phil@phkr.de>
РЕДАКТИРОВАТЬ 3:
gpg-mailgate отключен;
Return-Path: <phil.kraemer@student.uni-siegen.de>
X-Original-To: phil@phkr.de
Delivered-To: phil@phkr.de
Received: from www.phkr.de (localhost.localdomain [127.0.0.1])
by www.phkr.de (Postfix) with ESMTP id 812B1160BFB
for <phil@phkr.de>; Wed, 24 Jun 2015 18:51:29 +0200 (CEST)
Received: from esa-public.zimt.uni-siegen.de (esa-public.zimt.uni-siegen.de
[141.99.10.66]) by www.phkr.de (Postfix) with ESMTP id 3FAA915FC4E
for <phil@phkr.de>; Wed, 24 Jun 2015 18:51:29 +0200 (CEST)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A2DYBABE34pV/0ULY41bh2K5B4pjAQEBAQEBgQuETFUgHRYLAgsDAgECAUsNCAEBiC+nLo9flnaTP4FDBZQFlAOQBiaBSQELAYImgzUBAQE
X-IronPort-AV: E=Sophos;i="5.13,673,1427752800"; d="scan'208,217";a="22305746"
Received: from mail2.ad.uni-siegen.de (HELO mail.uni-siegen.de)
([141.99.11.69])
by esa-private.zimt.uni-siegen.de with ESMTP/TLS/AES128-SHA;
24 Jun 2015 18:51:27 +0200
Received: from phil-macbookpro.local (37.201.192.53) by mail.uni-siegen.de
(141.99.11.69) with Microsoft SMTP Server (TLS) id 14.3.224.2; Wed, 24 Jun
2015 18:51:26 +0200
Message-ID: <558AE00E.5000607@student.uni-siegen.de>
Date: Wed, 24 Jun 2015 18:51:26 +0200
From: =?UTF-8?B?UGhpbCBLcsOkbWVy?= <phil.kraemer@student.uni-siegen.de>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10;
rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: "phil@phkr.de" <phil@phkr.de>
Subject: Test
Content-Type: multipart/alternative;
boundary="------------030808040405090507040509"
X-PMWin-Version: 3.1.2.0, Antivirus-Engine: 3.55.0, Antivirus-Data: 5.14G
X-GPG-Mailgate: Not encrypted, public key not found
--------------030808040405090507040509
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo
ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis
dis parturient montes, nascetur ridiculus mus. Donec quam felis,
ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa
quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget,
arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras
dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend
tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac,
enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus.
Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean
imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper
ultricies nisi. Nam eget dui. Etiam rhoncus. Maecenas tempus, tellus
eget condimentum rhoncus, sem quam semper libero, sit amet adipiscing
sem neque sed ipsum. Nam quam nunc, blandit vel, luctus pulvinar,
hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec
vitae sapien ut libero venenatis faucibus. Nullam quis ante. Etiam sit
amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris
sit amet nibh. Donec sodales sagittis magna. Sed consequat, leo eget
bibendum sodales, augue velit cursus nunc,
--------------030808040405090507040509
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 7bit
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque
penatibus et magnis dis parturient montes, nascetur ridiculus mus.
Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem.
Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut,
imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede
mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum
semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula,
porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem
ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra
nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet.
Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies
nisi. Nam eget dui.
Etiam rhoncus. Maecenas tempus, tellus eget condimentum rhoncus, sem
quam semper libero, sit amet adipiscing sem neque sed ipsum. Nam
quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem.
Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut
libero venenatis faucibus. Nullam quis ante. Etiam sit amet orci
eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit
amet nibh. Donec sodales sagittis magna. Sed consequat, leo eget
bibendum sodales, augue velit cursus nunc,
</body>
</html>
--------------030808040405090507040509--
gpg-mailgate включен:
Return-Path: <phil.kraemer@student.uni-siegen.de>
X-Original-To: phil@phkr.de
Delivered-To: phil@phkr.de
Received: from www.phkr.de (localhost.localdomain [127.0.0.1])
by www.phkr.de (Postfix) with ESMTP id A8008160BFB
for <phil@phkr.de>; Wed, 24 Jun 2015 18:54:06 +0200 (CEST)
Received: from esa-public.zimt.uni-siegen.de (esa-public.zimt.uni-siegen.de
[141.99.10.65]) by www.phkr.de (Postfix) with ESMTP id 53AB5160BF9
for <phil@phkr.de>; Wed, 24 Jun 2015 18:54:06 +0200 (CEST)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A2DYBAA/4IpV/0cLY41bh2K5B4pjAQEBAQEBgQuETFUgHRYLAgsDAgECAUsNCAEBiC+nJY9flnWTP4FDBZQFlAOQBiaBSQELAYImgzUBAQE
X-IronPort-AV: E=Sophos;i="5.13,673,1427752800"; d="scan'208,217";a="22900624"
Received: from mail4.ad.uni-siegen.de (HELO mail.uni-siegen.de)
([141.99.11.71])
by esa-private.zimt.uni-siegen.de with ESMTP/TLS/AES128-SHA;
24 Jun 2015 18:54:05 +0200
Received: from phil-macbookpro.local (37.201.192.53) by mail.uni-siegen.de
(141.99.11.71) with Microsoft SMTP Server (TLS) id 14.3.224.2; Wed, 24 Jun
2015 18:54:05 +0200
Message-ID: <558AE0AC.1000302@student.uni-siegen.de>
Date: Wed, 24 Jun 2015 18:54:04 +0200
From: =?UTF-8?B?UGhpbCBLcsOkbWVy?= <phil.kraemer@student.uni-siegen.de>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10;
rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: "phil@phkr.de" <phil@phkr.de>
Subject: Test
Content-Type: multipart/alternative;
boundary="------------000505080606000302060009"
X-PMWin-Version: 3.1.2.0, Antivirus-Engine: 3.55.0, Antivirus-Data: 5.14G
X-GPG-Mailgate: Encrypted by GPG Mailgate
--------------000505080606000302060009
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
--------------000505080606000302060009
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 7bit
--------------000505080606000302060009--