postfix authenticate 禁用 smtp 端口 25,但 587

postfix authenticate 禁用 smtp 端口 25,但 587

我正在尝试让 postfix 不在端口 25 上对用户进行身份验证,而只在 587 上对用户进行身份验证,并使用 STARTTLS。我尝试过许多不同的配置,但到目前为止都没有成功。

主文件:

    ...
    smtpd_sasl_auth_enable =是
    smtpd_sasl_authenticated_header = 是
    smtpd_sasl_local_domain = $myhostname
    smtpd_sasl_security_options = noanonymous
    smtpd_sasl_type=dovecot
    broken_sasl_auth_clients = 是
    smtpd_sasl_path = private/auth
    allow_mail_to_commands = 别名
    allow_mail_to_files = 别名

    smtpd_data_restrictions = rejection_unauth_pipelining
    smtpd_helo_required = 是

    smtpd_sender_restrictions = permit_sasl_authenticated

    smtpd_recipient_restrictions=
      拒绝非 FQDN 发送者,
      拒绝非fqdn_helo_主机名,
      拒绝未知收件人域名,
      拒绝非 FQDN 收件人,
      拒绝无效主机名,
      允许通过 SASL 进行身份验证,
      拒绝未授权目的地

    smtpd_use_tls = 是
    smtp_use_tls = 是
    #smtpd_tls_security_level = 可能
    #smtp_tls_security_level = 加密

    smtpd_tls_auth_only = 是
    smtpd_tls_mandatory_protocols = !SSLv3, !SSLv2
    smtp_tls_note_starttls_offer = 是
    smtpd_tls_key_file = /etc/ssl/postfix/smtpd.pem
    smtpd_tls_cert_file = /etc/ssl/postfix/smtpd.pem
    smtpd_tls_CAfile = /etc/ssl/postfix/smtpd.pem
    smtpd_tls_session_cache_timeout = 3600s
    smtpd_tls_loglevel = 1
    smtpd_tls_received_header = 是
    tls_random_source = dev:/dev/urandom
    ...

掌握:

    # 服务类型 private unpriv chroot wakeup maxproc 命令 + 参数
    # (是) (是) (是) (从不) (100)
    # ==========================================================================
    smtp inet n-n--smtpd
    # -o smtp_sasl_auth_enable=是
    提交 inet n - n - - smtpd
    # -o content_filter=垃圾邮件过滤器
      -o smtpd_tls_security_level =加密
    # 用户 = spamd argv = / usr / local / bin / spamc -f -e / usr / local / libexec / dovecot / deliver -f $ {发送者} -d $ {收件人}
    # -o smtpd_enforce_tls=yes
    # -o syslog_name=postfix/submission
      -o smtpd_sasl_auth_enable=是
    # -o smtpd_reject_unlisted_recipient=否
    # -o smtpd_client_restrictions=$mua_client_restrictions
      -o smtpd_client_restrictions=permit_sasl_authenticated,拒绝
    # -o smtpd_helo_restrictions=$mua_helo_restrictions
    # -o smtpd_sender_restrictions=$mua_sender_restrictions
    # -o smtpd_recipient_restrictions=permit_sasl_authenticated,拒绝
    # -o smtpd_relay_restrictions=permit_sasl_authenticated,拒绝
    # -o milter_macro_daemon_name=起始
    #smtps inet n - n - - smtpd
    # -o syslog_name=postfix/smtps
    # -o smtpd_tls_security_level =加密
    # -o smtpd_tls_wrappermode=是
    # -o smtpd_sasl_auth_enable=是
    # -o smtpd_client_restrictions=permit_sasl_authenticated,拒绝
    # -o smtpd_reject_unlisted_recipient=否
    # -o smtpd_client_restrictions=$mua_client_restrictions
    # -o smtpd_helo_restrictions=$mua_helo_restrictions
    # -o smtpd_sender_restrictions=$mua_sender_restrictions
    # -o smtpd_recipient_restrictions=
    # -o smtpd_relay_restrictions=permit_sasl_authenticated,拒绝
    # -o milter_macro_daemon_name=起始
    #628 inet n-n--qmqpd
    拾音器 unix n - n 60 1 拾音器
    ...

也许,我错过了什么。谢谢

答案1

将其添加到您的master.cf

submission inet n       -       -       -       -       smtpd
  -o smtpd_sasl_auth_enable=yes
  ...

smtpd_sasl_auth_enable = yes并从您的main.cf默认设置中删除no

答案2

请在 master.conf 上进行以下更改。注释以下行。smtp inet n - n - - smtpd

添加以下行 587 inet n - n - - smtpd

netstat -tulpan | grep -i master tcp 0 0 127.0.0.1:587 0.0.0.0:* LISTEN 7168/master

答案3

在 /etc/postfix/main.cf 中您将添加/更改

smtpd_tls_security_level = encrypt

这将强制使用 TLS,以便 Postfix SMTP 服务器宣布 STARTTLS 并且不接受没有 TLS 加密的邮件

然后,在您的 /etc/postfix/master.cf 中,您将通过覆盖参数来覆盖端口 587(提交端口):

submission inet n       -       n       -       -       smtpd
  -o smtpd_tls_security_level=encrypt

这要求所有提交(端口 587)连接都使用 TLS。

相关内容