使用Centos 5.4,使用Postfix.我可以做一个
mail foo@gmail.com 
subject: blah
 test
.
Cc:

并且msg被发送到gmail,但它驻留在垃圾邮件文件夹中,这是预期的.

我的目标是能够生成电子邮件消息,并让它们出现在常规收件箱中!据我了解Postfix / Gmail,可以将Postfix配置为使用端口587通过经过身份验证的/有效用户发送/中继邮件,这将不再将邮件视为垃圾邮件.

我已经尝试了一些基于网络上不同网站/文章的参数,没有运气.一些文章,实际上似乎与其他文章冲突!我也查看了关于stacflow的帖子,但我仍然遗漏了一些东西……还与IRC(Centos / Postfix)上的一些人交谈,但仍有疑问……

所以,我再次转向Serverfault!

如果有人设法完成此任务,您是否介意发布您的main.cf,sasl-passwd以及您用来实现此功能的任何其他conf文件!如果我可以查看您的配置文件,我可以希望看到我搞砸了,并弄清楚如何纠正问题.

感谢您阅读本文以及您提供的任何帮助/指示!

ps,如果有一个堆栈流贴片说明了我可能错过了,请随时向我指出!

-Tom

虽然我没有尝试使用提交端口(587)通过提供商进行中继,但它应该是可能的.要启用Postfix中继,您需要设置具有经过身份验证的凭据的文件,并对/etc/postfix/main.cf配置文件进行一些修改.

第一个是身份验证凭据.为此我只需使用/ etc / postfix / sasl_passwd,我使用模板添加相应的行:

smtp.provider.com    smtp_user:smtp_passwd

您需要确保此文件受到保护,因此我建议root:root权限和0600权限.然后,您需要运行以下命令以root身份创建哈希映射版本.

postmap hash:/etc/postfix/sasl_passwd

有了这个,请将注意力转到/etc/postfix/main.cf,您可能会发现已设置的某些值,因此您需要相应地更改它们,但重要的细节如下:

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtp_tls_security_level = may

这些将使Postfix能够在发送邮件时使用sasl_passwd文件进行身份验证.然后,您需要告诉Postfix它应该使用提供程序通过添加配置来发送邮件

relayhost = smtp.provider.com:port

默认情况下,如果您没有指定,Postfix会假定端口25,这在过去对我有用.根据您请求的设置,您需要指定587作为端口.有了这个说我不确定你是否需要将sasl_passwd条目修改为smtp.provider.com:587而不是简单的smtp.provider.com,因为我之前没有尝试在非默认端口上执行此操作所以你必须自己尝试一下.

仅这些配置步骤就是处理我通过中央邮件服务器维护的多个服务器上的邮件转发.

更新以包含完整的工作示例

事实证明我配置了我的Ubuntu(基于Debian的)笔记本电脑在我的电子邮件提供商(不是Gmail)上使用端口587,因为我的DSL提供商阻止出站端口25流量.我更新了使用我的某个Gmail帐户来发送邮件.我需要做的唯一改变

我正在隐藏私有数据,但以其他方式粘贴Postfix的工作配置.

首先我们有/etc/postfix/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 (Ubuntu)
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

# 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
smtp_tls_security_level = may

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = solitare,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
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =

接下来我们有/ etc / postfix / sasl_passwd:

smtp.gmail.com:587  myusername@gmail.com:mypassword

然后我运行了以下SMTP会话:

jbouse@solitare:~$telnet localhost 25
Trying 127.0.0.1...
Connected to solitare.
Escape character is '^]'.
220 example.com ESMTP Postfix (Ubuntu)
helo localhost
250 example.com
mail from: jbouse@example.com
250 2.1.0 Ok
rcpt to: myotherusername@gmail.com
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
To: myotherusername@gmail.com
From: jbouse@example.com
Subject: Testing Postfix smarthost via Gmail
this is just a test
.
250 2.0.0 Ok: queued as 6269B280191
quit
221 2.0.0 Bye
Connection closed by foreign host.

然后我登录myotherusername Gmail帐户并阅读以下消息:

Return-Path: <myotherusername@gmail.com>
Received: from example.com (mydslproviderhostname.net [x.x.x.229])
        by mx.google.com with ESMTPS id 6sm401663ywd.11.2010.03.04.19.19.58
        (version=TLSv1/SSLv3 cipher=RC4-MD5);
        Thu,04 Mar 2010 19:19:58 -0800 (PST)
Sender: "Jeremy Bouse" <myotherusername@gmail.com>
Received: from localhost (solitare [127.0.0.1])
    by example.com (Postfix) with SMTP id 6269B280191
    for <myotherusername@gmail.com>; Thu,4 Mar 2010 22:17:39 -0500 (EST)
To: myotherusername@gmail.com
From: jbouse@example.com
Subject: Testing Postfix smarthost via Gmail
Message-Id: <20100305031745.6269B280191@example.com>
Date: Thu,4 Mar 2010 22:17:39 -0500 (EST)

this is just a test

现在已经显示我作为系统管理员的13年没有浪费我从我的笔记本电脑通过Gmail发送电子邮件,而无需生成其他人会告诉你的自签名x.509证书. /etc/postfix/main.cf的关键添加是smtp_tls_security_level设置,可以告诉Postfix如果它支持TLS,则在连接到另一个MTA时可以发出STARTTLS命令.如果您忘记了smtp_tls_security_level设置,您可能会在/var/log/mail.log中看到以下行中的条目:

Mar  4 22:10:58 solitare postfix/smtp[19873]: 20E07280191: to=<myotherusername@gmail.com>,relay=smtp.gmail.com[74.125.47.109]:587,delay=38,delays=38/0.03/0.08/0.01,dsn=5.7.0,status=bounced (host smtp.gmail.com[74.125.47.109] said: 530 5.7.0 Must issue a STARTTLS command first. 20sm399188ywh.48 (in reply to MAIL FROM command))

但是如果设置得当,你应该看到以下内容:

Mar  4 22:20:00 solitare postfix/smtp[20313]: 6269B280191: to=<myotherusername@gmail.com>,delay=141,delays=110/29/0.36/1.9,dsn=2.0.0,status=sent (250 2.0.0 OK 1267759200 6sm401663ywd.11)

centos – 配置Postfix通过端口587发送/中继电子邮件Gmail(smtp.gmail.com)的更多相关文章

  1. ios – 如何检查CNContact swift中的联系人来源?

    在联系人应用程序中,有像“iCloud”,“yahoo”,“gmail”这样的组.在swift中,是否可以仅从gmail源获取联系人?

  2. iOS – 友好的NSDate格式

    我需要在我的应用程序中显示帖子的日期给用户,现在我用这种格式:“5月25日星期五”.如何格式化NSDate以阅读“2小时前”的内容?使其更加用户友好.解决方法NSDateFormatter不能做这样的事情;你将需要建立自己的规则.我想像:所以这是打印’x分钟前’或’x小时前’从日期起24小时,通常是一天.

  3. iOS中的深层链接在Gmail中被删除

    我正在尝试发送一个电子邮件,深入链接到我的iOS应用程序,使用myapp://格式从电子邮件中打开它.在任何iOS邮件客户端中,但不在Gmail应用程序中都可以使用它将其删除,仅留下文本.除了创建一个从浏览器重定向到应用程序的网络链接之外,有没有人有解决方案/替代方案?

  4. Xcode 4 / iOS – 使用SMTP从我的应用程序发送电子邮件

    我一直在寻找一个框架,只需让我从我的应用程序内发送一封电子邮件.我已经尝试过MailCore,Pantomime和SKPSMTP,没有运气.我不能让他们在Xcode中编译,所以我推测他们已经过时了.有什么办法可以做到吗?谢谢.解决方法您可以轻松地从iOS设备发送电子邮件.不需要实现SMTP和所有.在iOS中使用内置电子邮件功能的最佳方法是让您访问通讯录!为了完整起见,如果用户按取消或发送,我必须写这个选择器来关闭电子邮件窗口–快乐编码…

  5. 记一次云计算测试实验-openstack-icehouse-安装swift

    -----------------------controller:---------------------------------sourceadmin-openrc.shkeystoneuser-create--name=swift--pass=000000--email=swift@localhostkeystoneuser-role-add--user=swift--tenant=ser

  6. 尝试使用swift mailer,gmail smtp,php发送邮件

    这里是我的代码:在运行时出现此错误…

  7. android – 如何在Intent ACTION_SEND中将超链接传递给Gmail?

    可能是这个问题已经被问到或者是另一个问题的重复,但是我的搜索没有得到任何解决方案.以下是我对我的问题所遵循的链接:Link1Link2实际上,我的问题与使用ACTION_SEND在Android默认意图中共享HTML文本有关.当我尝试创建具有不同值的URL的超链接时,它显示一个简单的值文本.这不是可点击的链接.我是这样做的:对于body2:当我使用Gmail共享文本时,电子邮件中的超链接文本将作为

  8. 如何在android中设置多个SMTP服务器?

    我的问题是如何设置多个SMTP服务器在Android中发送邮件,如:雅虎,hotmail,gmail,rediff任何类型的域名将在发送邮件时起作用.任何人都可以建议任何网站或任何想法吗?请帮帮我,谢谢你.解决方法以下是GMail,Yahoo!的测试设置.和Hotmail.使用适用于Android的JavaxMail端口进行测试.

  9. android – 使用Dart进行远程调试

    这个问题的动机是,我花了大约两个小时来找出我做错了什么.如何在我的Android手机或模拟器上远程调试我的Dart-Webapp?

  10. android – 是否有任何好的短代码示例只是读取一个新的Gmail邮件?

    我一直在尝试编写一个定期解析gmail消息内容的应用程序.我已经阅读了JavaMail常见问题解答,我已经查看了JavaMail下载包中的一些示例,但无法使其工作.下面的代码当前导致以下gmail错误:Hostisunresolved:imaps.gmail.com:993我也试过imap.gmail.com:143但得到:Hostisunresolved:imap.gmail.com:143任何

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部