私はローカルマシンから生成されたすべてのメールをSMTP経由でmailgun中継に中継するようにpostfixを設定しようとしています。私はUbuntuサーバーからメールガンリレーを正常に使用したことがありますが、FIPSモードで実行されているCentos 7サーバーに移行しています。以下にエラーログがあります。少し整理してください。私は各コンピュータがmailgunに個別に接続するように選択した十分に小さいネットワークを持っています(これはループバックのみ、127.0.0.0/8の制限です)、コンピュータにsmtpを許可するポートを開くファイアウォールはありません。
FIPSモード(およびMD5を無効にする)が問題の原因であると仮定していますが、これを克服する方法がわからないか、tls_fprintがsha256やsha512などのサポートされているいくつかのハッシュを使用できるかどうかわかりません。しかし、Relay = noneはリレーホストを設定したため少し心配ですが、おそらくsmtpプロセスが失敗するためでしょうか?
どんな助けでも大変感謝します!
セッション後 -n:
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
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
html_directory = no
inet_interfaces = loopback-only
inet_protocols = ipv4
local_recipient_maps =
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination =
mynetworks = 127.0.0.0/8
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES
relayhost = [smtp.mailgun.org]:587
sample_directory = /usr/share/doc/postfix-2.10.1/samples
sender_canonical_classes = envelope_sender, header_sender
sender_canonical_maps = regexp:/etc/postfix/sender_canonical_maps
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtp_generic_maps = hash:/etc/postfix/generic
smtp_header_checks = regexp:/etc/postfix/header_check
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_mandatory_ciphers = high
smtp_tls_note_starttls_offer = yes
smtp_tls_security_level = encrypt
smtpd_tls_security_level = encrypt
unknown_local_recipient_reject_code = 550
/var/log/メールログ:
Apr 28 20:04:15 HOSTNAME postfix/pickup[85556]: SOME_ID_NUMBER: uid=0 from=<root>
Apr 28 20:04:15 HOSTNAME postfix/cleanup[85583]: SOME_ID_NUMBER: message-id=<20180429000415.SOME_ID_NUMBER@FQDN>
Apr 28 20:04:15 HOSTNAME postfix/qmgr[85557]: SOME_ID_NUMBER: from=<root@FQDN>, size=2261, nrcpt=1 (queue active)
Apr 28 20:04:16 HOSTNAME postfix/smtp[85585]: fatal: tls_fprint: error computing md5 message digest
Apr 28 20:04:17 HOSTNAME postfix/qmgr[85557]: warning: private/smtp socket: malformed response
Apr 28 20:04:17 HOSTNAME postfix/qmgr[85557]: warning: transport smtp failure -- see a previous warning/fatal/panic logfile record for the problem description
Apr 28 20:04:17 HOSTNAME postfix/master[85555]: warning: process /usr/libexec/postfix/smtp pid 85585 exit status 1
Apr 28 20:04:17 HOSTNAME postfix/master[85555]: warning: /usr/libexec/postfix/smtp: bad command startup -- throttling
Apr 28 20:04:17 HOSTNAME postfix/error[85587]: SOME_ID_NUMBER: to=<[email protected]>, relay=none, delay=1.7, delays=0.05/1.6/0/0.02, dsn=4.3.0, status=deferred (unknown mail transport error)
答え1
master.cfのsmtpやtlsmgrプロセスのデバッグなど、何時間も問題を特定しようとした後、md5を無効にするFIPSが実際に問題であることを確認できました。 master.cfに以下を追加することで問題が解決しました。
smtp_tls_fingerprint_digest=sha256
sha1とsha512の設定も機能します。 postfix ドキュメントでは、sha1 または md5 (md5 がデフォルト) 以外の値に設定することについて警告します。ドキュメントから:
While additional digest algorithms are often available with OpenSSL's libcrypto, only those used by libssl in SSL cipher suites are available to Postfix. For now this means just md5 or sha1.
しかし、私のニーズに応じてsha256が正常に動作しているようです。
答え2
リレーホストのみを設定するには、/etc/postfix/postfix.confのデフォルトエントリを目的のリレーホストに変更する必要があります。このリンクがあなたに役立つことを願っています
https://serverfault.com/questions/878841/cant-relay-on-postfix-accessing-it-from-external-ip