我有一个在亚马逊远程服务器上安装的Ubuntu服务器。
我试图允许远程连接发送电子邮件每个用户/密码由Ubuntu系统configuration。 意味着我系统中的每个用户都可以使用自己的凭据发送电子邮件
首先我打开了亚马逊防火墙的端口25。
然后我configuration了以下文件:
master.cf在后缀
我添加了以下几行:
submission inet n - - - - smtpd -o syslog_name=postfix/submission -o smtpd_tls_wrappermode=no -o smtpd_tls_security_level=encrypt -o smtpd_sasl_auth_enable=yes -o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject -o milter_macro_daemon_name=ORIGINATING -o smtpd_sasl_type=dovecot -o smtpd_sasl_path=private/auth
然后我configurationdovecot,但在/etc/dovecot/conf.d/10-auth.conf中添加以下行
disable_plaintext_auth = no service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } ssl=required ssl_cert = </etc/ssl/certs/mailcert.pem ssl_key = </etc/ssl/private/mail.key
这是我的main.cf在post:
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) biff = no append_dot_mydomain = no readme_directory = no 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. myhostname = ip-172-31-42-234.us-west-2.compute.internal alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = tux-in.com, ip-172-31-42-234.us-west-2.compute.internal, localhost.us-west-2.compute.internal, localhost, myalcoholist.com, myalcohollist.com virtual_alias_domains = myalcoholist.com myalcohollist.com tux-in.com virtual_alias_maps = hash:/etc/postfix/virtual smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname broken_sasl_auth_clients = yes relayhost = 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 home_mailbox = Maildir/ mailbox_command = local_recipient_maps = proxy:unix:passwd.byname $alias_maps
好吧..迄今为止好…我已经安装了鸽舍,所以我有一个imap和pop3服务器,我可以succesfuly检索电子邮件。
现在我想configuration我的电子邮件客户端在我的osx桌面连接到亚马逊的smtp服务器,并发送电子邮件。
我遇到的问题是,我无法从外面连接到smtp服务器。 当我尝试远程login时,连接超时。 我能够从本地服务器telnet到端口25上的127.0.0.1。我检查和inet接口configuration为所有,我打开了亚马逊防火墙上的端口25,所以唯一想到的是,为某些原因postfix本身阻止外部连接。
如果postfix阻止外部连接,所以我错过了configuration中的东西。
我有点迷失在这里..任何有关这个问题的信息将不胜感激。
提交是TCP / 587 smtp是TCP / 25
听起来像是一个防火墙问题,您可能需要从aws支持请求端口25打开。 testing您是否可以telnet到587,并将带有身份validation的电子邮件发送到本地邮箱。
如果您通过587的中继主机发送邮件,并且通过第三方垃圾邮件filter在2525这样的替代端口上检索,您仍然可以收到电子邮件。