zoukankan      html  css  js  c++  java
  • 构建内部邮件服务器(DNS+sendmail)

    环境:centos 6.6

    DNS+sendmail服务器同属于一台机器

    服务器IP 地址:192.168.2.82

    客户端IP地址:192.168.2.39

     

    准备工作:

    1、修改/etc/hosts文件  2、修改/etc/sysconfig/network文件 3、hostname更改

     

    部署步骤:

    一、搭建DNS服务器

    yum install bind* -y

    编辑域名主配置文件:

    vi /etc/named.conf

    options {

            listen-on port 53 { 192.168.2.82; };

            listen-on-v6 port 53 { ::1; };

            directory       "/var/named";

            dump-file       "/var/named/data/cache_dump.db";

            statistics-file "/var/named/data/named_stats.txt";

            memstatistics-file "/var/named/data/named_mem_stats.txt";

            allow-query     { any; };

            recursion yes;

            dnssec-enable yes;

            dnssec-validation yes;

            dnssec-lookaside auto;

            /* Path to ISC DLV key */

            bindkeys-file "/etc/named.iscdlv.key";

            managed-keys-directory "/var/named/dynamic";

    };

    logging {

            channel default_debug {

                    file "data/named.run";

                    severity dynamic;

            };

    };

    zone "." IN {

            type hint;

            file "named.ca";

    };

    zone "ered.com" IN {                

            type master;              

            file "ered.com_zone";       

                   

    };

    zone "2.168.192.in-addr.arpa" IN {       

            type master;

            file "192.168.2.zone";        

           

    };

    include "/etc/named.rfc1912.zones";

    include "/etc/named.root.key";

    编辑域名正向解析记录:

    vi /var/named/ered.com_zone

    $TTL 1D

    @       IN SOA  www.ered.com. root (

                                            2014102101      ; serial

                                            1D      ; refresh

                                            1H      ; retry

                                            1W      ; expire

                                            3H )    ; minimum

    @               IN      NS      www.ered.com.          

    www             IN      A       192.168.2.82       

    mail              IN      A       192.168.2.82 

    pop3             IN      CNAME   mail

    smtp             IN      CNAME   mail 

    @               IN      MX 10   mail 

    编辑域名反向解析记录:

    vi /var/named/192.168.2.zone

    $TTL 1D                       

    @       IN SOA  www.ered.com. root (

                                            2014102101      ; serial

                                            1D      ; refresh

                                            1H      ; retry

                                            1W      ; expire

                                            3H )    ; minimum

    @               IN      NS      www.ered.com.

    82              IN      PTR     www.ered.com.

    82              IN      PTR     mail.ered.com.

    修改DNS域名解析文件  

    vi /etc/resolv.conf

    search ered.com

    nameserver 192.168.2.82

    启动域名服务:

    service named start

    客户端验证:(登录客户端主机192.168.2.39)

     

    二、搭建sendmail服务器

    所需软件包如下:

    Sendmail服务软件包:

    sendmail-8.14.4-9.el6.i686:sendmail服务的主程序包,必须安装该软件包。

    sendmail-cf-8.14.4-9.el6.noarch:sendmail宏文件包  
    sendmail-devel-8.14.4-9.el6.i686:sendmail服务器开发工具软件包  
    sendmail-doc-8.14.4-9.el6.noarch:sendmail服务器的说明文档  
    m4-1.4.13-5.el6.i686:宏处理过虑软件包  
    dovecot-2.0.9-19.el6_7.2.i686:接收邮件软件包,安装时需要注意安装顺序

    Sendmail相关配置文档:

    sendmail.cf:sendmail核心配置文件,位于/etc/mail/sendmail/sendmail.cf

    sendmail.mc:sendmail提供sendmail文件模板,通过编辑此文件后再使用m4工具将结果导入sendmail.cf完成配置sendmail核心配置文件,降低配置复杂度,位于/etc/mail/sendmail.mc

    local-host-name:定义收发邮件服务器的域名和主机别名,位于/etc/mail/local-host-name

    access.db:用来设置sendmail服务器为哪些主机进行转发邮件,位于/etc/mail/access.db

    aliases.db:用来定义邮箱别名,位于/etc/mail/aliases.db

    virtusertable.db:用来设置虚拟账户,位于/etc/mail/virtusertable.db

    安装sendmail:


     
    yum install sendmail sendmail-cf sendmail-devel sendmail-doc -y

    配置sendmail主配置文件:

    vi /etc/mail/sendmail.mc

    TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

    define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl


     

    DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

    LOCAL_DOMAIN(`ered.com')dnl

    配置/etc/mail/local-host-names文件:

    vi /etc/mail/local-host-names

    ered.com

    mail.ered.com

    使用m4命令生成sendmail.cf文件:

    m4 /etc/mail/sendmail.mc>/etc/mail/sendmail.cf

    配置/etc/mail/access文件:

    Connect:192.168.2                       RELAY

    ered.com                                RELAY

    使用命令生成access.db:

    makemap hash /etc/mail/access.db < /etc/mail/access

    启动sendmail服务:

    service sendmail start

    到这里sendmail服务器基本配置完成后,Mail Server就可以完成邮件发送工作,如果需要使用POP3和IMAP协议接收邮件还需要安装dovecot软件包。

    三、安装dovecot:

    yum install dovecot -y

    配置dovecot配置文件:

    vi /etc/dovecot/dovecot.conf

    protocols = imap  pop3  lmtp

    login_trusted_networks = 0.0.0.0/0

    配置/etc/dovecot/conf.d/10-mail.conf文件:

    mail_location = mbox:~/mail:INBOX=/var/mail/%u

    启动dovecot:

    service dovecot start

    四、检查sasl包是否安装到系统上,默认已经安装到系统上了(sasl是用来客户端验证用户的,所以必须安装的

    rpm –qa|grep sasl*

    启动saslauthd服务:

    service saslauthd start

    五、所有服务设置为默认的开机启动

    chkconfig –-level 35 named on

    chkconfig –-level 35 sendmail on

    chkconfig –-level 35 dovecot on

    chkconfig –-level 35 saslauthd on

    六、创建邮箱用户

    useradd user1&&passwd user1

    useradd user2&&passwd user2

    分别切换到user1和user2的账号下,创建目录文件:

    su user1

    mkdir -p ~/mail/.imap/INBOX

    su user2

    mkdir -p ~/mail/.imap/INBOX

     

     

    6、用户发送接收邮件验证:

     

    接着同样的方法添加user2。

     

     

     

    验证:

    User1发送邮件给user2:

    查看user2 是否收到:

    7、配置群发功能

    配置/etc/aliases文件

    vi /etc/aliases

    jishu: user1,user2

     

    使用newaliases命令生成:

    Newaliases

     

    8、验证群发邮件

    查看user1和user2邮箱是否都收到了邮件:

     

     

  • 相关阅读:
    python实现布隆过滤器及原理解析
    gin框架源码解析
    阿里云docker操作问题记录
    Qt编写数据可视化大屏界面电子看板系统
    CSS3-3D制作案例分析实战
    前端可视化项目流程,涉及three.js(webGL),3DMax技术,持续更新
    前端可视化项目流程,涉及three.js(webGL),3DMax技术,持续更新
    jquery拖拽排序,针对后台列表table进行拖拽排序(Echart不刷新页面,多语言切换下的地图数据重新加载,api请求数据加载
    Java 设置Excel条件格式(高亮条件值、应用单元格值/公式/数据条等类型)C# 创建Excel气泡图
    Java 如何在PPT中设置形状组合、取消组合、编辑组合形状
  • 原文地址:https://www.cnblogs.com/luckyjinping/p/5015890.html
Copyright © 2011-2022 走看看