• <dl id='hvnng'></dl>

  • <i id='hvnng'><div id='hvnng'><ins id='hvnng'></ins></div></i>

        <i id='hvnng'></i>

      1. <ins id='hvnng'></ins>
        <span id='hvnng'></span>

          <acronym id='hvnng'><em id='hvnng'></em><td id='hvnng'><div id='hvnng'></div></td></acronym><address id='hvnng'><big id='hvnng'><big id='hvnng'></big><legend id='hvnng'></legend></big></address>

          <code id='hvnng'><strong id='hvnng'></strong></code>
          <fieldset id='hvnng'></fieldset>

          1. <tr id='hvnng'><strong id='hvnng'></strong><small id='hvnng'></small><button id='hvnng'></button><li id='hvnng'><noscript id='hvnng'><big id='hvnng'></big><dt id='hvnng'></dt></noscript></li></tr><ol id='hvnng'><table id='hvnng'><blockquote id='hvnng'><tbody id='hvnng'></tbody></blockquote></table></ol><u id='hvnng'></u><kbd id='hvnng'><kbd id='hvnng'></kbd></kbd>
          2. Linux系统下安装配置postfix邮件服务器教程

            • 时间:
            • 浏览:4
            • 来源:124软件资讯网

                一  ,安装postfix  ,cyrus-sasl  ,cyrus-imapd

                若是yum提醒找不到软件包  ,请换一下源 ,请参考centos 6推荐使用epel源

                代码如下:

                [root@localhost ~]# yum install postfix

                [root@localhost ~]# yum install cyrus*

                二 ,删除了sendmail

                代码如下:

                [root@localhost ~]# rpm -e sendmail

                或者

                代码如下:

                [root@localhost ~]# yum remove sendmail

                三  ,更改默认邮件传输署理(MTA)

                代码如下:

                [root@localhost sasl2]# alternatives --config mta

                共有 1 个法式提供“mta” 。

                选择 下令

                -----------------------------------------------

                *+ 1 /usr/sbin/sendmail.postfix

                按 Enter 来生存当前选择[+]  ,或键入选择号码:1

                上面的只有一个postfix  ,sendmail已经被我删了  。可以通过下面下令来检察 。

                代码如下:

                [root@localhost ~]# alternatives --display mta

                四  ,postfix  ,cyrus-sasl ,cyrus-imapd相关设置

                1,postfix主设置文件main.cf

                代码如下:

                [root@localhost postfix]# vim /etc/postfix/main.cf

                myhostname = localhost //76行  ,将等号后面的部门改写为本机主机名

                mydomain = 51yip.com //82行  ,设置域名

                myorigin = $mydomain //97行 ,把$myhostname改为$mydomain

                inet_interfaces = all //112行  ,把后面的localhost改成all

                mydestination = $myhostname, localhost.$mydomain, localhost,$mydomain //163行  ,把前面的注释拿掉  ,并加一下$mydomain

                mynetworks = 192.168.0.0/24, 127.0.0.0/8 //263行 ,设置内网和当地IP

                local_recipient_maps = //209行  ,把前面的注释拿掉 。

                smtpd_banner = $myhostname ESMTP unknow //568行  ,把前面的注释拿掉  ,然后把$mail_name ($mail_version)改成unknow

              < p>//在main.cf文件的底部加上以下内容

                smtpd_sasl_auth_enable = yes //使用SMTP认证

                broken_sasl_auth_clients = yes //让不支持RFC2554的smtpclient也可以跟postfix做交互  。

                smtpd_sasl_local_domain = $myhostname // 指定SMTP认证的当地域名

                smtpd_sasl_security_options = noanonymous //作废匿名上岸方式

                smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination //设定邮件中有关收件人部门的限制

                smtpd_sasl_security_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination //设置允许规模

                message_size_limit = 15728640 //邮件巨细

                mailbox_transport=lmtp:unix:/var/lib/imap/socket/lmtp //设置毗连cyrus-imapd的路径

                若是不加local_recipient_maps这个设置  ,收邮件收不到 ,下面是qq的退信 。

                收件人邮件地址(tank@51yip.com)不存在 ,邮件无法送达  。host mail.51yip.com[122.225.***.***] said: 550 5.1.1: Recipient address rejected: User unknown in local recipient table (in reply to RCPT TO command)

                2,cyrus-sasl设置

                代码如下:

                [root@localhost postfix]# vim /etc/sasl2/smtpd.conf //在文件尾部加上以下内容

                log_level: 3 //记载log的模式

                saslauthd_path:/var/run/saslauthd/mux //设置一下smtp寻找cyrus-sasl的路径 ,在这里要提一下的32位的机械和64位的机械smtpd.conf的路径是纷歧样的 。

              < p>//这是centos 5.5 32位机械上smtpd的设置文件

                [root@linux sasl2]# ls |grep conf

                Sendmail.conf

                smtpd.conf

                [root@linux sasl2]# pwd

                /usr/lib/sasl2

                //这是centos 6.0 64位机械上smtpd的设置文件,其他地方没有smtpd的设置文件

                [root@localhost postfix]# ls /etc/sasl2/ |grep smtpd

                smtpd.conf

                网上有不少关于postfix安装文章  ,设置的时间并没有明确提出是32位机械  ,照旧64位机械  。以是在这里标明一下  。

                3,设置cyrus-imapd

                cyrus-imapd的主要设置文件有下面三个

                代码如下:

                /etc/sysconfig/cyrus-imapd

              < p>/etc/cyrus.conf

              < p>/etc/imapd.conf

                这里是默认的设置 ,也就是说上面三个文件我是没有动过的 。在这里提醒一下imapd.conf在这个文件内里 ,你可以设置治理账号

                  ,设置邮件存放目录  ,设置密码毗连方式等 。

                五  ,启动postfix ,cyrus-sasl  ,cyrus-imapd

                启动cyrus-imapd服务  ,就可以同时提供pop和imap服务 ,若是你已安装了dovecot服务就可以删除掉  ,cyrus-imapd和dovecot二者选其一就行了  ,二都可以提供pop和imap服务  ,不外cyrus-imapd可以为每个用户建立一个信息  ,而且信箱具有条理结构,比力好治理  。建议用cyrus-imapd  。

                代码如下:

                [root@linux sasl2]# /etc/init.d/postfix start

                [root@linux sasl2]# /etc/init.d/saslauthd start

                [root@linux sasl2]# /etc/init.d/cyrus-imapd start

                检察一下历程  ,

                代码如下:

                //smtp监听是25端口

                [root@linux u]# netstat -tpnl |grep smtpd

                tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 6319/smtpd

                代码如下:

                //110(POP3)和143(IMAP)端口,下面都已经有了

                [root@linux u]# netstat -tpnl |grep cyrus

                tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 23593/cyrus-master

                tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN 23593/cyrus-master

                tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 23593/cyrus-master

                tcp 0 0 0.0.0.0:2000 0.0.0.0:* LISTEN 23593/cyrus-master

                tcp 0 0 :::993 :::* LISTEN 23593/cyrus-master

                tcp 0 0 :::995 :::* LISTEN 23593/cyrus-master

                tcp 0 0 :::110 :::* LISTEN 23593/cyrus-master

                tcp 0 0 :::143 :::* LISTEN 23593/cyrus-master

                tcp 0 0 :::2000 :::* LISTEN 23593/cyrus-master

                启动是没有问题的  。

                六  ,测试cyrus-sasl

                代码如下:

                [root@linux t]# passwd cyrus //设置cyrus的密码

                [root@linux sasl2]# testsaslauthd -u cyrus -p '******' //系统用户和密码

                0: OK "Success."

                若是显示是上面的内容说是smtp是没有什么问题

                七  ,cyrus-imapd生产邮件治理员账号,并添加测试账号

                安装完cyrus-imapd后会发生一个治理账号是cyrus  ,所属用户组是mail

                代码如下:

                [root@linux sasl2]# id cyrus //imapd.conf内里默认的治理员账号就是cyrus

                uid=76(cyrus) gid=12(mail) groups=12(mail),76(saslauth)

                在认证admin账号时  ,我发现32位系统和64位系统有一点差别 ,二种系统我都设置过  ,设置都是一样的 ,

                可是泛起的效果纷歧样  ,看下图

                32位机械cyrus治理员用户认证

                64位机械cyrus治理员用户认证

                从上图可以看出  ,32位的系统是不用加上--auth plain,64位的要 ,若是不加的话  ,基础进不去  。

                进去后 ,我们来添加一下测试账号

                代码如下:

                [root@linux sasl2]# cyradm -u cyrus localhost

                IMAP Password:

                localhost> cm tank

                localhost> lm

                tank (\HasNoChildren)

                localhost> quit

                这样我们可以在/var/spool/imap中看到  ,天生的目录  ,32位机械和64位机械天生的目录是纷歧样的

                代码如下:

                //这是64位系统天生的目录

                [root@localhost u]# ls

                user^tank

                [root@localhost u]# pwd

                /var/spool/imap/u

                //这是32位系统天生的目录

                [root@linux t]# ls

                tank

                [root@linux t]# pwd

                /var/spool/imap/t

                八  ,测试收发邮件

                测试前添加一下DNS  ,

                1  ,mail.51yip.com A 默认 122.225.***.***

                2 ,mail.51yip.com A 联通 60.12.***.***

                3  ,@ MX 默认 mail.51yip.com

                第1和第2 ,是添加二条A记载  ,第三行 ,设置了一下MX记载 ,这个万万不要忘了  ,否则你的域名是不通的  。

                要领有许多  ,我们可以使用telnet来测试  ,不外用telnet来测试收发邮件比力贫苦  ,用linux自带的

                mail下令就利便多了

                代码如下:

                [root@localhost u]# mail -s '看一下' 95219454@qq.com < /etc/imapd.conf