20201103部署postfix和devecot

使用postfix和dovecot 部署邮件系统

1 介绍

    1. 常见的邮件协议
      1. 简单邮件传输协议(simple mail transfer protocol  smtp) 用于发送和中转邮件,端口是25/tcp
      2. 邮局协议版本3 (post office protocol 3 pop3) 用于将邮件存储到本地 占用端口 110/tcp
      3. Internet 消息访问协议版本4 (internet message access protocol 4 imap4)在本机访问邮件,占用端口143/tcp
    2. 电子邮件传输过程

20201103部署postfix和devecot

Mail user agent   mail transfer agent 

Mail delivery agent 邮件投递代理 可以在对方无法接受的时候临时保存邮件

    1. 生产部署需要注意的四个方面
      1. 添加反垃圾和反病毒模块
      2. 邮件加密
      3. 邮件审核,对关键字进行过滤
      4. 做好防范分布式拒绝服务,确保稳定性
  1. 部署

20201103部署postfix和devecot

邮件发送流程,邮件格式一般为:用户名@主机名(域名)比如[email protected]

    1. 配置主机名称,确保发送邮件不相互干扰

Vim /etc/hostname

redhat8.lipengchao.com

    1. 配置防火墙开放端口
    2. 为电子邮件提供域名解析
    3. 安装配置postfix
      1. 安装:[[email protected] lipengchao]# yum install postfix
      2.  防火墙可以禁用来测试,后期还是需要在防火墙放行
      3.  配置postfix服务

这个家伙的文件比较有意思,main和master.cf都存在,

mail.cf:是postfix主要的配置文件。
Install.cf:包含安装过程中安装程序产生的postfix初始化设置。
master.cf:是postfixmaster进程的配置文件,该文件中的每一行都是用来配置postfix的组件进程的运行方式。
postfix-script:包装了一些postfix命令,以便我们在linux环境中安全地执行这些postfix命令

可能会判断错误,其实是/etc/postfix/main.cf 配置文件内常用的几个参数是

20201103部署postfix和devecot我们接下来修改一下,行数只是参考,主要看注释是否是这个位置

96 myhostname = redhat8.lipengchao.com   # 服务器主机名称

104 mydomain = lipengchao.com           # 邮件域名称

120 myorigin = $mydomain      # 来源 直接解开即可

137 inet_interfaces = all  # 那些地址可以提供服务,默认是本机,如果需要也可以修改成all

185 mydestination = $myhostname, localhost.$mydomain, localhost   # 可以接收邮件的主机和域名

更改了main.cf文件的内容,则必须运行postfix reload命令使其生效。或者重启服务

2.5  [[email protected] lipengchao]# systemctl startus postfix

[[email protected] lipengchao]# systemctl enable postfix

 

================ 安装配置bind-chroot 功能就是将此服务的权限定义在dns服务里,不允许出去,这样会更安全,当然不是必须,这里只配置正解析文件

3.1 yum install bind-chroot

3.2 主配置文件是 vim /etc/named.conf  守护进程也是named

listen-on port 53 { 127.0.0.1; }; 定义多个网卡中的一个或者使用any任何一个都可以,端口53

allow-query { localhost; }; 谁可以使用我们的dns 默认是本机,如果不限制使用any即可

3.3 修改vim /etc/named.rfc1912.zones 里面默认会有一些模板,可以用也可以删除掉自己写

zone "lipengchao.com" IN {

type master;   # 表示主服务器

file "lipengchao.com.zone";  # 域名解析配置文件

allow-update{none;};  # 是否允许从服务器过来更新,有从服务器放开即可

};

3.4 补齐上面需要的配置文件

定义解析文件:cp /var/named/named.localhost /var/named/lipengchao.com.zone 然后编辑,这里的邮箱后面没有增加. 底下的服务器地址也需要增加.否则是有问题的20201103部署postfix和devecot

3.5设置完之后,重启服务起不来,然后重启服务器起不来,经过排查之后发现是因为修改了/etc/hostname的原因,修改回localhost.localdomain即可,但是重启服务起不来,我们还需要解决,上课的时候忽然听到权限的问题,几个配置文件都修改

[[email protected] lipengchao]# chown named:named /var/named/lipengchao.com.zone

[[email protected] lipengchao]# chmod 664 /var/named/lipengchao.com.zone 

[[email protected] lipengchao]# chown named:named /etc/named* 

然后启动,启动正常

20201103部署postfix和devecot20201103部署postfix和devecot

3.6 防火墙放行,服务启动增加到开机启动

[[email protected] ~]# firewall-cmd --permanent --add-service=dns

===========================================

  1. 安装配置dovecot
    1. yum install devecot  
    2. vim /etc/dovecot/dovecot.conf

protocols = imap pop3 lmtp   # 设置协议

disable_plaintext_auth=no    # 暂时没有加密系统,所以关闭禁止明文认证

login_trusted_networks = 192.168.88.0/200 设置受信任的网段,如果不修改就是全部都可以使用

    1. 配置邮件格式与存储路径:

vim /etc/dovecot/conf.d/10-mail.conf

路径默认设置好的,我们解开注释

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

    1. 切换到指定用户,然后新建存放的目录

[[email protected] ~]$ su – lipengchao

[[email protected] ~]$ mkdir -p mail/.imap/INBOX  # 这里没看懂为啥是新建这个目录,这和上面定义的不符合

[[email protected] lipengchao]# systemctl restart dovecot

[[email protected] lipengchao]# systemctl enable dovecot

  1. 然后就可以和正常使用一样来操作测试了

6 设置用户别名信箱

别名就是可以为自己的邮箱设置一个完全虚拟的地址,从而隐藏自己真实的邮箱地址,而且我们可以收到发来的邮件,我们通过查看cat /etc/aliases文件可以看到很多,比如:

ftp:        root 就会将发送给ftp的邮件展示给root来看,但是发出去的时候还是会显示ftp这样的功能,如果我们需要的时候,则可以在此文件中进行新增对应关系,然后执行newaliases来刷新关系,所以严格来说我们看到的许多邮箱可能都是一个人

 

以后实际部署可以参考 https://www.cnblogs.com/zhchngzng/p/3591498.html

1. postfix 实现邮件发送服务器的角色。

2. dovecot 作为邮件接收服务器的角色。

3. extmail 实现利用web界面收发信件。

4. extman 用户注册同个extman的页面

5. mysql数据库,存放用户的账户信息

6. cyrus-sasl courier-authlib 实现用户的身份验证

20201103部署postfix和devecot