問題:ウェブサイトのユーザーが電子メールに送信されるメッセージを送信できる連絡フォームを作成します。php と Postfix を使用します。Postfix の使用/理解に問題がありますか? 設定が間違っているはずです。外部メール サーバー ( )mail()
に電子メールが表示されません。echo "hello, world" | mail [email protected]
設定:非専用Raspberry Pi 3B+で、登録ドメイン名なしのポート転送(ダイナミックDNS)を介してPostfixを実行します。実際のインターネットホスト名を持たないホスト上のPostfixREADME.htmlの他のセクション...ここでは何が当てはまるのかわかりません。メールを受信するためにPostfixは必要ありませんか?注:Postfixのセットアップ中に、文字通りFQDNとして入力しました。mail.example.com
私の知る限りでは、それはsmtp.gmail.com
Postfix経由の外部MTA? それが私が従おうとしたチュートリアルです...それで、そこに説明されている SASL ファイルを持っています。セットアップに関しては、他にはあまり何もしていません。telnet smtp.gmail.com 25
とを使用すると、telnet smtp.gmail.com 587
両方ともタイムアウトになります。
設定:
main.cf
:
# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Raspbian)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mail.example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, mail.example.com, raspberrypi, localhost.localdomain, localhost
relayhost = [smtp.gmail.com]:587
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
# Enable SASL auth
smtp_sasl_auth_enable = yes
# Disallow methods that allow anonymous authentication
smtp_sasl_security_options = noanonymous
# Directory of sasl_passwd
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
# Enable STARTTLS encryption
smtp_use_tls = yes
# Directory of ca-certs
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
また:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 9.9 (stretch)
Release: 9.9
Codename: stretch
$ sudo netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:587 0.0.0.0:* LISTEN 31792/sendmail: MTA
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 31792/sendmail: MTA
参考文献:Raspberry Piをsendmail
ここ(使用するつもりはありませんsendmail
が、設定を検討すると役立つかもしれません)。
以前の回答では、「Gmail を使用してメールを送信するための postfix の設定有望そうです。ほとんどのパブリック メール システム (Gmail、Outlook など) では、SMTP リレーが許可されていないか、セキュリティを構成する必要があります。セキュリティがなければ、スパマーがメール サーバーを完全に圧倒するでしょう。
さらなるご意見があれば、ぜひお聞かせください。