postfix

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postfix相关的知识,希望对你有一定的参考价值。

MTA:邮件传输代理

   smtp服务器,如sendmail:单体结构,会用到suid,有安全隐患。配置文件语法(m4)

   qmail:效率超强

   postfix:模块化设计,安全,跟sendmail兼容性好。

   exim

   exchange:windows

sasl:

   cyrus-sasl

   courier-authlib

MDA:邮件投递代理

   procmail

   maildrop

MRA:邮件检索代理(pop3,imap4)

   dovecot

   cyrus-imap

MUA:thunderbird:linux

   outlook

   foxmail

   mutt(文本)

webmail:

   openwebmail

   squirrelmail:redhat

   extmail


postfix+sasl|courier-authlib+mysql

dovecot+mysql

extmail(extman)+httpd


./configure报错

yum install *devel-

cp /usr/local/mysql/lib/libmysqlclient.so.20  /usr/lib64


main.cf

参数 = 值

参数必须行首,顶格写。以空白字符开头的行,被认为是上一行的延续。


postconf:postfix的配置工具

    -d:默认配置

    -n:修改了的配置

    -m:支持的查找表类型,(postfix去哪查找用户名密码的)

    -A:支持sasl的客户端插件类型

    -e parameter=value:更改某参数,并保存到main.cf中。


smtp---->smtpd:

    1.hello

    2.mail from 发件人

    3.rcpt to  收件人

    4.data

    5  .  邮件发送结束


smtp状态码

1xx:说明信息

2xx:正确类信息

3xx:上一步操作尚未完成

4xx:暂时性错误

5xx:永久性错误


邮件别名

[email protected]   [email protected]:发送给a的转发给aa

/etc/aliases--->hash--->/etc/aliasesdb:使用命令newaliases


smtp协议原语

 helo

 ehlo

 mail from

 

进行基本配置,测试启动postfix

myhostname=mail.a.org

myorigion=a.org

mydomain=a.org

mydestination=$myhostname,localhost.$mydomain,localhost,mydomain

mynetworks=192.168.1.0/24,127.0.0.0/8


chown -R postfix:postfix /var/lib/postfix

chown    root:root  /var/spool/postfix

chown -R postfix  /var/spool/postfix/*

chown -R postfix:postdrop /var/spool/postfix/mail

                              /public

chown -R root /var/spool/postfix/pid


myorigion:用来指明发件人所在域名,即做发件地址伪装。

mydestination:用来指明postfix接收邮件时,收件人所在域名。即我的postfix要接受哪个域名的邮件

myhostname:用来指定运行postfix邮件系统的主机的主机名,默认值为本地机器名。

mydomain:用来指定我的域名

mynetworks:用来指定我所在网络的网络地址,postfix用其来区分是本地还是远程用户

inet_interface:用来指定postfix监听的网络接口


注意:

   参数和注释不能处于同一行

   参数值不可以加引号

   修改参数值后执行postfix reload,令其生效。如更改inet_interface,执行postfix restart

   如果一个参数的值有多个,可以将他们放在不同的行中,只需要在其后的每一行前加1空格字符

     postfix会把第一个字符为空格或tab的文本行视为上一行的延续。


为postfix开启用户别名支持

1、alias_maps=hash:/etc/aliases

2、在/etc/aliases文件中定义新的别名项。格式为冒号隔开的两个字段,前一个为初始目标邮件地址,   后一个为实际发往的邮件地址:[email protected]:[email protected]

3、将/etc/aliases转为hash格式:postalias /etc/aliaes

4、postfix重新reload,测试。


dovecot

支持pop3(110)和imap4(143)

两种邮箱格式

1、mbox:一个文件存储所有邮件

2、maildir:一个文件存储一封邮件,所有邮件存储在一个目录中。

/etc/dovecot.conf

验证:

telnet x.x.x.x 110

USER xxx

PASS xxx

LIST

RETR


编译安装dovecot

1、/etc/ssl/certs/dovecot.pem

  /etc/ssl/private/dovecot.pem

2、./configure --prefix=/usr/local/dovecot  --with-mysql  --with-ssl=openssl 

        --with-ssldir=/etc/ssl

3、创建2个用户和组:dovecot dovenull

4、cp example/conf  /usr/local/dovecot/etc

5、修改10-mail.conf

  mail_privileged_group = mail  */var/spool/mail文件的数组一致

  mail_location = /var/spool/mail


rpm包安装

  /etc/dovecot/conf.d/10-mail.conf   *mail_location = ~/:INBOX=/var/spool/mail/%u

 /etc/dovecot/dovecot.conf   *protocol = pop3 imap



以上是关于postfix的主要内容,如果未能解决你的问题,请参考以下文章

Centos 下搭建postfix和Dovecot的邮箱服务系统