如何配置postfix邮件服务器
2个回答
2018-07-30 · 知道合伙人软件行家
关注
展开全部
首先你应该了解的是邮件收发的过程,使用的各种协议。因为我的空间不知道怎么的,图片都显示不了了。所以这里就只能大概的给各位讲讲了,要看图亏袜睁片的可以到我的相册去看。首先我们的客户端也就是我们的好袭桌面电脑会装一个邮件客户端软件,比如outlook express,thunderbird,mutt等等,这些客户端软件可以使我们能编辑我们要发送的邮件,已经通过这个客户端软件和我们的邮件服务器相连接。这时候我们的客户端就叫做MUA(mail user agent)。然后我们编辑好要发送的邮件之后,就要传送到我们的邮件服务器上,而不是直接发送给我们的目的人。我们的邮件服务器上会装邮件服务器的软件,用来接收,处理,转发我们的客户端发来的邮件。邮件服务器就叫做MTA(mail transfer agent)这里我们当然是以linux主机做邮件服务器了,服务器上面运行的是SMTP协议软件,当然我们的邮件服务器上有很多用户账号啦,这些账号就是我们的客户端要申请的合法账号,就像你在yahoo上申请的邮箱账号一样,一个账号对应一个邮箱空间,这些都是在我们的邮件服务器上做好了设置了。我们的客户端,第一步要取得邮件服务器上的合法账号,已取得在上面的邮件收发资格。第二步通过邮件客户端软件运行POP3协议来连接我们的邮件服务器,我们的邮件服务器也通过POP3协议来接受客户端的连接。然后我们的客户端通过邮客户端软件将编辑好的邮件传送到收件人啦,这时候邮件服务器会检查邮件的收件人,如果收件人也在本机上,那么我们的邮件服务器就直接将这封邮件发送给收件人所在的邮箱咯。如果收件人不在本机上呢,那么邮件服务器就要根据设置将邮件通过SMTP协议转发到指定的下一台邮件服务器(那个下一台邮件服务器是管理员设置好的,不是随便转发的),转发到下一台邮件服务器后,那台服务器检查收件人,如果收件人是本机上的合法邮件账号,就收下,然后送到他的邮箱里。然后我们的收件人也是通过邮件客户端软件,使用POP3协议和他的邮件服务器取得连接,然后登陆他的邮箱,发现有一封邮件来了,他就收下查看咯。呵呵,大体过程就是这样的。具体细节大家可自行查阅相关资料。所以我们收发邮件不是说,我要发给谁就直接能发给他的,是要经过邮件服务器慢慢周转的。好了不多说了,因为真的图片显示不了,没办法图文并茂了。下面销岁给出Linux下的postfix服务器的配置,前提是你的DNS服务器已经做好了mail的解析,不然是收不到信的。
推荐于2016-06-28 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517184
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
在安装邮件服务器之前先了解几个名词,以后会用到:
MUA:用户代理端,即用户使用的写信、收信客户端软件
MTA:邮件传送闭高轮端,即常说的邮件服务器,用于转发、收取用户邮件。
MDA:邮件代理端,相当于MUA和轿信MTA的中间人,可用于过滤垃圾邮件。
POP:邮局协议,用于MUA连接服务器收取用户邮件,通信端口110。
IMOP:互联网应用协议,功能较POP多,通信端口143。
SMTP:简单邮件传送协议,MUA连接MTA或MTA连接MTA发送邮件使用此协议,通信端口25。
本次配置MTA以Postfix为例,较sendmail简单、安全,且兼容于sendmail。
Postfi安装:
yum install postfix
yum remove sendmail
/etc/init.d/postfix start
Postfix主配置设定:
cat /etc/postfix/main.cf
myhostname = mail.haiyun.me #Mail服务器域名,EHLO名称。
mydomain = www.haiyun.me #
myorigin = $mydomain #发信地址,此设置显示为@www.haiyun.me。
inet_interfaces = all #如对外提供MTA服务设置为监听所有网卡,默认只监听本地。
inet_protocols = all #支持协议,可选IPV4/IPV6。
mydestination = $mydomain $myhostname #本地邮件念贺域名,直接接收
mynetworks_style = subnet #允许转发的来源网段,可选subnet子网,class网段,host本机
mynetworks = 192.168.1.0/24,127.0.0.0/8 #允许转发的来源IP,设置后忽略mynetworks_style参数
relay_domains = $mydestination #允许转发的目标域
smtpd_banner = $myhostname ESMTP "Mail Server" #自定服务器信息
现Postfix允许接收或发送邮件的条件:
接收邮件:
目的地为$inet_interfaces的邮件;
目的地为$mydestination或$vitual_alias_maps的邮件。
转发邮件:
来源客户端符合$mynetworks的邮件;
来源或目的为$relay_domains的邮件。
配置邮件别名:
cat /etc/aliases
test:root,test@www.haiyun.me
别名:收件地址1,收件地址2
更新别名数据库:
newaliases
配置邮件转发:
cat ~/.forward
test@www.haiyun.me,test2@www.haiyun.me
设置SMTP密码验证,为防止MTA被滥用在postfix有配置信任网段,如在外网可使用smtp密码验证方式。
以系统用户密码方式认证,先启动saslauthd服务协助postfix进行系统密码验证:
/etc/init.d/saslauthd start
chkconfig saslauthd on
yum install cyrus-sasl-plain cyrus-sasl-md5 cyrus-sasl
确定SMTPD配置文件有以下内容:
cat /usr/lib/sasl2/smtpd.conf
pwcheck_method: saslauthd #saslauthd协助smtp进行密码验证
配置Postfix使用SASL验证,编辑main.cf配置文件添加:
smtpd_sasl_auth_enable = yes #开启SMTP验证
smtpd_sasl_security_options = noanonymous #不允许匿名用户
smtpd_recipient_restrictions = #接收者限制规则,按顺序执行
permit_mynetworks, #mynetworks用户通过,匹配结束
permit_sasl_authenticated, #sasl验证用户通过,匹配结束
reject_unknown_sender_domain, #拒绝无效的发送邮件域名
reject_unauth_destination #拒绝收件人非mydestination、relay_domains或virtual_alias_maps定义域邮件
测试SMTP验证是否生效:
telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 mail.domain.com ESMTP Postfix
ehlo localhost
250-mail.domain.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN #显示此信息代表验证正常
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
配置IMAP及POP:
yum -y install dovecot
编辑dovecot配置文件:
vim /etc/dovecot/dovecot.conf
protocols = imap pop3 #监听协议
login_trusted_networks = 127.0.0.1 #允许登录接收邮件的IP段
设置邮件目录:
cat /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox:~/mail:INBOX=/var/mail/%u
新建Mail账号:
useradd -g mail -s /sbin/nologin user
启动dovecot服务:
/etc/init.d/dovecot start
MUA:用户代理端,即用户使用的写信、收信客户端软件
MTA:邮件传送闭高轮端,即常说的邮件服务器,用于转发、收取用户邮件。
MDA:邮件代理端,相当于MUA和轿信MTA的中间人,可用于过滤垃圾邮件。
POP:邮局协议,用于MUA连接服务器收取用户邮件,通信端口110。
IMOP:互联网应用协议,功能较POP多,通信端口143。
SMTP:简单邮件传送协议,MUA连接MTA或MTA连接MTA发送邮件使用此协议,通信端口25。
本次配置MTA以Postfix为例,较sendmail简单、安全,且兼容于sendmail。
Postfi安装:
yum install postfix
yum remove sendmail
/etc/init.d/postfix start
Postfix主配置设定:
cat /etc/postfix/main.cf
myhostname = mail.haiyun.me #Mail服务器域名,EHLO名称。
mydomain = www.haiyun.me #
myorigin = $mydomain #发信地址,此设置显示为@www.haiyun.me。
inet_interfaces = all #如对外提供MTA服务设置为监听所有网卡,默认只监听本地。
inet_protocols = all #支持协议,可选IPV4/IPV6。
mydestination = $mydomain $myhostname #本地邮件念贺域名,直接接收
mynetworks_style = subnet #允许转发的来源网段,可选subnet子网,class网段,host本机
mynetworks = 192.168.1.0/24,127.0.0.0/8 #允许转发的来源IP,设置后忽略mynetworks_style参数
relay_domains = $mydestination #允许转发的目标域
smtpd_banner = $myhostname ESMTP "Mail Server" #自定服务器信息
现Postfix允许接收或发送邮件的条件:
接收邮件:
目的地为$inet_interfaces的邮件;
目的地为$mydestination或$vitual_alias_maps的邮件。
转发邮件:
来源客户端符合$mynetworks的邮件;
来源或目的为$relay_domains的邮件。
配置邮件别名:
cat /etc/aliases
test:root,test@www.haiyun.me
别名:收件地址1,收件地址2
更新别名数据库:
newaliases
配置邮件转发:
cat ~/.forward
test@www.haiyun.me,test2@www.haiyun.me
设置SMTP密码验证,为防止MTA被滥用在postfix有配置信任网段,如在外网可使用smtp密码验证方式。
以系统用户密码方式认证,先启动saslauthd服务协助postfix进行系统密码验证:
/etc/init.d/saslauthd start
chkconfig saslauthd on
yum install cyrus-sasl-plain cyrus-sasl-md5 cyrus-sasl
确定SMTPD配置文件有以下内容:
cat /usr/lib/sasl2/smtpd.conf
pwcheck_method: saslauthd #saslauthd协助smtp进行密码验证
配置Postfix使用SASL验证,编辑main.cf配置文件添加:
smtpd_sasl_auth_enable = yes #开启SMTP验证
smtpd_sasl_security_options = noanonymous #不允许匿名用户
smtpd_recipient_restrictions = #接收者限制规则,按顺序执行
permit_mynetworks, #mynetworks用户通过,匹配结束
permit_sasl_authenticated, #sasl验证用户通过,匹配结束
reject_unknown_sender_domain, #拒绝无效的发送邮件域名
reject_unauth_destination #拒绝收件人非mydestination、relay_domains或virtual_alias_maps定义域邮件
测试SMTP验证是否生效:
telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 mail.domain.com ESMTP Postfix
ehlo localhost
250-mail.domain.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN #显示此信息代表验证正常
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
配置IMAP及POP:
yum -y install dovecot
编辑dovecot配置文件:
vim /etc/dovecot/dovecot.conf
protocols = imap pop3 #监听协议
login_trusted_networks = 127.0.0.1 #允许登录接收邮件的IP段
设置邮件目录:
cat /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox:~/mail:INBOX=/var/mail/%u
新建Mail账号:
useradd -g mail -s /sbin/nologin user
启动dovecot服务:
/etc/init.d/dovecot start
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |