zoukankan      html  css  js  c++  java
  • linux搭建邮件服务器

    环境:

      系统:centos7.6

      内网ip:172.16.0.3

    ---------------------------------------------初始配置-------------------------------------------------------------

    1.修改主机名

    将主机名更改为邮件服务器域名mail.test.com

    vi /etc/hostname
    

    2.关闭防火墙并禁止开机启动

    systemctl stop firewalld
    systemctl disable firewalld
    

    3.关闭selinux,将未注释的SELINUX行的值改为disabled

    vi /etc/sysconfig/selinux
    

    ---------------------------------------------搭建DNS环境域名解析,用于解析postfix地址-------------------------------------------------------------

    4.安装DNS服务器

    yum install -y bind 
    

    5.修改配置文件

    修改DNS主配置文件

    vi /etc/named.conf 
    listen-on port 53 { 172.16.0.3; };
    
    allow-query     { any; }; 
    

    修改子配置文件

    vi /etc/named.rfc1912.zones

    在最后添加一个正向和一个反向解析区域

    zone "test.com" IN {
            type master;
            file "test.com.zone";
    };
    
    zone "0.16.172.in-addr.arpa" {
            type master;
            file "test.com.local";
    };
    

    进入DNS服务器区域配置文件目录,复制模板区域配置文件为指定区域配置文件。注:一定要保留源文件权限,如果未保留,须将属组改为named。 

    cd /var/named/ 
    cp -p named.localhost test.com.zone
    cp -p named.localhost test.com.local 

    编辑正向区域配置文件,修改并添加以下行

    vi test.com.zone
    
            NS      @
            A       172.16.0.3
            MX 10   mail.test.com
    mail    A       172.16.0.3
            AAAA    ::1
    

    编辑反向区域配置文件,修改并添加以下行

    vi test.com.local 
    
            NS      @
            A       172.16.0.3
            MX 10   mail.test.com
            3     PTR     mail.test.com
            AAAA    ::1
    

    重新启动DNS域名解析服务器

    systemctl restart named
    

    安装nslookup命令测试dns能否解析成功

    yum install -y bind-utils
    

    给本机的DNS增加一个指向自己的dns服务器

    vi /etc/resolv.conf 
    
    nameserver 172.16.0.3
    

    解析邮件服务器地址,显示如下则表示成功

    nslookup mail.test.com
    
    Server:		183.60.83.19
    Address:	183.60.83.19#53
    
    Non-authoritative answer:
    Name:	mail.test.com
    Address: 69.172.200.109
    

    ---------------------------------------------安装postfix服务器并进行配置------------------------------------------------------------- 

    检查系统是否已经安装了postfix服务器

    rpm -q postfix
    

    如果没有安装,安装了就跳过

    yum install postfix -y
    

    编辑postfix的配置文件,查找并修改对应配置项

    vi /etc/postfix/main.cf
    

    主要需要修改一下这些配置项

    myhostname = mail.test.com                                                      //本机主机名
    mydomain = test.com                                                                 //服务器域名
    myorigin = $mydomain                                                               //初始域名
    inet_interfaces = all                                                                   //监听接口
    inet_protocols = all                                                                   //监听网络版本,可以不改
    mydestination = $myhostname, $mydomain                           //目标域
    home_mailbox = Maildir/                                                         //邮件目录,在用户家目录下
    

    检查配置文件是否有语法错误

    postfix check
    

    查看postfix非默认配置

    postconf -n

    重新启动postfix服务器

    systemctl restart postfix
    

    ---------------------------------------------邮件服务器简单发信测试-------------------------------------------------------------

    添加邮件账号组

    groupadd mailusers
    

    添加邮箱账号

    useradd -g mailusers -s /sbin/nologin jack
    passwd jack
    useradd -g mailusers -s /sbin/nologin tom
    passwd tom 
    

    安装远程登录插件,用于登录25端口测试

    yum install -y telnet 
    

    远程登录25端口,如报错连接不上,重启postfix

    telnet mail.test.com 25
    

    如果输出以下内容表示登录成功

    Trying ::1...
    Connected to mail.test.com.
    Escape character is '^]'.
    220 mail.test.com ESMTP Postfix
    

    输入以下内容用于测试

    [root@mail ~]# telnet mail.test.com 25
    Trying ::1...
    Connected to mail.test.com.
    Escape character is '^]'.
    220 mail.test.com ESMTP Postfix
    helo mail.test.com
    250 mail.test.com
    mail from:jack@test.com
    250 2.1.0 Ok
    rcpt to:tom@test.com
    250 2.1.5 Ok
    data
    354 End data with <CR><LF>.<CR><LF>
    i am jack!!
    .
    250 2.0.0 Ok: queued as A64EF604C7
    quit
    221 2.0.0 Bye
    Connection closed by foreign host.
    

    以上内容解析

    helo mail.aa.com                           //声明本机的主机名
    
    mail from:jack@aa.com                     //声明发件人地址
    
    rcpt to:tom@aa.com                      //声明收件人地址
    
    data                                  //写正文
    
    i am jack!!
    
    .                                   //以.结尾
    
    quit                                 // 退出
    

    查看tom接收的邮件目录下的邮件

    ls /home/tom/Maildir/new/ 
    

    查看tom接收的邮件内容

    cat /home/tom/Maildir/new/1586512307.Vfd01I101059M375553.mail.test.com
    

    这个只能超级管理员查看接收的邮件内容

      

      

  • 相关阅读:
    vim——打开多个文件、同时显示多个文件、在文件之间切换(转)
    内核任务调度与数据结构
    chrome浏览器iframe兼容性问题,隐藏起来再显示滚动条消失?
    九、迭代器、生成器、函数递归调用与二分法
    八、函数、闭包、装饰器
    七、函数
    六、字符编码、文件
    五、列表、元组、字典、集合详解
    四、字符串及其内置方法
    三、内存管理、数据类型、基本运算符、流程控制
  • 原文地址:https://www.cnblogs.com/navysummer/p/12674977.html
Copyright © 2011-2022 走看看