前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7.2部署邮件服务器(sendmail)

CentOS7.2部署邮件服务器(sendmail)

作者头像
指剑
发布2022-07-15 14:59:38
1.4K0
发布2022-07-15 14:59:38
举报
文章被收录于专栏:指剑的分享指剑的分享

实验要求:为了能够实际部署一个的电子邮件系统,需要使用到下面的软件:1)Sendmail:实现邮件的接收和中转,即SMTP;2)Dovecot:实现邮件的收取,即POP3和IMAP;3)Foxmail:客户端收发邮件的工具。硬件上需要两台主机:一台Linux主机,同时安装邮件服务器软件Sendmail、Dovecot和DNS服务器软件bind;一台Windows 7主机(192.168.100.12)作为电子邮件用户端,安装软件Foxmail。 注意事项:此次仅作为实验进行参考,所以关闭SELinux和firewalld,使得步骤更加精简 由于此次实验为最小化的centos,所以并无某些服务组件,提前在此处提出,并安装

#yum -y install vim net-tools telnet

安装并开启sendmail和Dovecot服务

1、安装sendmail服务以及相关组件 #yum -y install sendmail* m4

在这里插入图片描述
在这里插入图片描述

postfix的产生是为了替代传统的sendmail.相较于sendmail,postfix在速度。性能和稳定性上都更胜一筹,由于linux中自带了postfix,为了postfix和sendmail两者间不产生冲突,需要切换MTA(mail transter agent,即邮件传输代理),禁用postfix,执行如下命令 #alternatives --config mta //请按 2 显示内容如下 There are 2 programs which provide ‘mta’. //共有 2 个提供“mta”的程序。

代码语言:javascript
复制
  Selection    Command
   1           /usr/sbin/sendmail.postfix
*+ 2           /usr/sbin/sendmail.sendmail
在这里插入图片描述
在这里插入图片描述

开启sendmail服务,设置开机自启,并禁用postfix服务 #systemctl start sendmail #systemctl enable sendmail #systemctl mask postfix

在这里插入图片描述
在这里插入图片描述

2、安装dovecot服务,启动,并设置开机自启 #yum -y install dovecot #systemctl start dovecot #systemctl enable dovecot

在这里插入图片描述
在这里插入图片描述

配置SMTP邮件服务器Sendmail

实验要求:在部署一台Sendmail服务器,为公司网络内部的客户端计算机提供邮件收发服务,具体参数要求如下:DNS域名为fl.com;DNS服务器IP地址为192.168.100.252;Sendmail服务器IP地址为192.168.100.20;Sendmail服务器MX记录为mail.cqcetli.net;公司网络为192.168.100.0/24;能够给公司全体员工群发邮件。

设置邮件服务器IP(本机ip:192.168.100.20)以及,DNS服务器IP 192.168.100.21 添加DNS服务器IP地址: 先安装net-tools #yum -y install net-tools #ifconfig eth0:1 192.168.100.21/24

在这里插入图片描述
在这里插入图片描述

安装DNS服务器 #yum -y install bind*

编辑DNS服务器配置文件 #vi /etc/named.conf listen-on port 53 { 192.168.100.21; }; allow-query { any; };

在这里插入图片描述
在这里插入图片描述

编辑DNS正向解析文件 #vi /etc/named.rfc1912.zones 在末尾添加 zone “fl.com” IN { //域自定义 type master; file “fl.com.zone”;//域解析文件名自定义,需要和后面的解析文件相对应 allow-update { none; }; };

#cd /var/named #cp -p named.localhost fl.com.zone #vi fl.com.zone //格式请以截图为准,由于排版模式,以下代码排版出现问题

$TTL 1D @ IN SOA dns.fl.com. root.fl.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum @ IN NS dns.fl.com. dns IN A 192.168.100.21 mail IN A 192.168.100.20 @ IN MX 10 mail.fl.com.

在这里插入图片描述
在这里插入图片描述

重启DNS服务器

在这里插入图片描述
在这里插入图片描述

编辑DNS文件 #vi /etc/resolv.conf 添加如下内容: nameserver 192.168.100.21

在这里插入图片描述
在这里插入图片描述

验证邮件交换器设置: #host -t mx fl.com

在这里插入图片描述
在这里插入图片描述

测试DNS解析 #nslookup -q=mx fl.com

在这里插入图片描述
在这里插入图片描述

#nslookup dns.fl.com

在这里插入图片描述
在这里插入图片描述

修改sendmail.mc并重新生成sendmail.cf,修改/etc/mail/sendmail.mc, 将DAEMON_OPTIONS(Port=smtp,Addr=127.0.0.1, Name=MTA') dnl和 LOCAL_DOMAIN(localhost.localdomain’)dnl指定邮件服务器的侦听地址范围以及邮件服务器所在的本地域,也可以设置为0.0.0.0表示侦听所有IP地址。 #vi /etc/mail/sendmail.mc

在这里插入图片描述
在这里插入图片描述

第118行和157行 请注意,这里的192.168.100.20为你的邮件服务器IP,也就是本机IP,并非DNS服务器IP

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

将文件写入

代码语言:javascript
复制
m4  /etc/mail/sendmail.mc  >  /etc/mail/sendmail.cf
在这里插入图片描述
在这里插入图片描述

修改access文件设置邮件中继 #vi /etc/mail/access

在这里插入图片描述
在这里插入图片描述

添加如下内容 fl.com RELAY mail.fl.com RELAY 192.168.100.0/24 RELAY

在这里插入图片描述
在这里插入图片描述

将文件写入access.db

在这里插入图片描述
在这里插入图片描述

修改local-host-names文件 vi /etc/mail/local-host-names

在这里插入图片描述
在这里插入图片描述

添加如下内容: fl.com mail.fl.com

在这里插入图片描述
在这里插入图片描述

修改host文件 #vi /etc/hosts

在这里插入图片描述
在这里插入图片描述

添加如下内容: 192.168.100.20 base mail.fl.com

在这里插入图片描述
在这里插入图片描述

修改/etc/aliases设置群发别名 #vi /etc/aliases 添加如下内容:可在配置文件末尾添加 test:fl,fly //此处test为用户组,fl和fly为用户

在这里插入图片描述
在这里插入图片描述

再执行 #newaliases

在这里插入图片描述
在这里插入图片描述

重启sendmail服务进行生效

在这里插入图片描述
在这里插入图片描述

创建邮件用户,此处使用密码为 000000 #groupadd test #useradd fl -g test -s /sbin/nologin #useradd fly -g test -s /sbin/nologin #passwd fl #passwd fly

在这里插入图片描述
在这里插入图片描述

测试发送Sendmail邮件 先安装telnet命令 #yum -y install telnet #telnet 192.168.100.20 25 键入如下内容: #helo mail.fl.com #mail from:"test"root@fl.com //设置邮件主题是test,发件人是root@fl.com #rcpt to:fly@fl.com //设置收件人地址是fl@fl.com #data //data表示开始写邮件的内容。 #This is a test mail. //邮件内容的正文。 #. //这里的点号表示邮件正文结束。

在这里插入图片描述
在这里插入图片描述

#mailq //检查所传送的电子邮件是否送出或滞留在邮件服务器中。

在这里插入图片描述
在这里插入图片描述

修改Dovecot程序主配置文件 #vi /etc/dovecot/dovecot.conf 第24行,30行,33行,48行 protocols = imap pop3 lmtp //支持的邮局协议,第24行 listen = 192.168.100.20, :: //设置dovecot监听的邮件服务器IP地址,默认为所有地址,第30行。 base_dir = /var/run/dovecot/ //设置存储dovecot运行时数据的目录,第33行。 login_trusted_networks = 192.168.100.0/24 //允许登录的网段地址,0.0.0.0/0为全部允许,第48行。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置邮件的格式与存储路径 #vi /etc/dovecot/conf.d/10-mail.conf 第25行,去掉前面注释,并顶格

在这里插入图片描述
在这里插入图片描述

/var/mail/文件夹下的文件默认权限为0660,需要修改为0600

chmod 0600 /var/mail/*

在这里插入图片描述
在这里插入图片描述

systemctl restart dovecot //重启dovecot服务

在这里插入图片描述
在这里插入图片描述

配置邮件客户端并收发邮件 使用Linux邮件客户端 1、修改/etc/resolv.conf,添加配置行“nameserver 192.168.100.21”,指定DNS服务器为192.168.100.21

在这里插入图片描述
在这里插入图片描述

安装 mailx #yum -y install mailx

编辑mail配置文件 #vi /etc/mail.rc

添加如下内容 set from=fl@fl.com set smtp=mail.fl.com set smtp-auth-user=fl@fl.com set smtp-auth-password=000000

在这里插入图片描述
在这里插入图片描述

使用mail命令给用户发送邮件 #mail fly@fl.com Subject: hello //输入邮件主题。 test @@@@@@@ EOT //按CTR+D键退出内容编辑。

此处会直接提示发信失败,似乎是一个bug,又或者是我哪里出问题,查阅了国内外对此问题的描述,并未给出正面解决方案,如果有解决的,请在文章末尾留言回复

请直接跳到windows发信部分,发信之后,再进行下一步:mail命令接受邮件

使用mail命令接收邮件,请先执行windows收发邮件测试

#mail -u fly

代码语言:javascript
复制
Heirloom Mail version 12.5 7/5/10.  Type ? for help.
"/var/mail/fly": 2 messages 1 new
    1 "fl-testmail"root@fl  Fri Jun 21 20:18  14/513   
>N  2 fly@fl.com            Fri Jun 21 20:37  42/1525  "群发测试"
& t 1              //请输入 t 1 查看第一条。t 2查看第二条“42/1525”表示邮件的行号和字符数。“N”表示新邮件。
Message  1:
From "fl-testmail"root@fl.com  Fri Jun 21 20:18:03 2019
Return-Path: <"fl-testmail"root@fl.com>
Date: Fri, 21 Jun 2019 20:16:14 -0400
From: "fl-testmail"root@fl.com
X-IMAPbase: 1561163143 0000000001
X-UID: 1                                                 
Status: RO

this is a test mail from fly

& t 2
Message  2:
From fly@fl.com  Fri Jun 21 20:37:00 2019
Return-Path: <fly@fl.com>
Date: Fri, 21 Jun 2019 23:37:00 +0800
From: "fly@fl.com" <fly@fl.com>
To: test <test@fl.com>
Cc: test <test@fl.com>
Subject: 群发测试
X-Priority: 3
X-Has-Attach: no
X-Mailer: Foxmail 7.2.11.303[cn]
Content-Type: multipart/alternative;
        boundary="----=_001_NextPart785125888636_=----"
Status: R

Content-Type: text/plain;
        charset="GB2312"


this is a group test from fly


fly@fl.com
在这里插入图片描述
在这里插入图片描述

配置Windows邮件客户端并收发邮件

Windows 7 需要添加一张和linux处于同一网段的网卡,并确定Winodws 7 虚拟主机和Linux虚拟主机之间能够互通

在这里插入图片描述
在这里插入图片描述

进入foxmail官网下载foxmail https://www.foxmail.com/

在这里插入图片描述
在这里插入图片描述

安装fixmail

在这里插入图片描述
在这里插入图片描述

双击打开,选择其他邮箱

在这里插入图片描述
在这里插入图片描述

选择手动设置

在这里插入图片描述
在这里插入图片描述

设置相关选项

在这里插入图片描述
在这里插入图片描述

编辑WIN7和Linux使用相同的一张网卡的具体配置VM1,这里的win7系统使用IP地址192.168.100.12,此处的IP地址自行设置,不要冲突就行 设置完之后请进行linux和windows的ping测试,以确保2者网络互通 若不通,请更换windows7的IP地址 建议在设置之后,请在windows7上面使用nslookup命令对Linux的DNS服务器进行测试

nslookup mail.fl.com 以确保你的Windows 7 虚拟机能够解析到 mail服务器

在这里插入图片描述
在这里插入图片描述

点击创建

在这里插入图片描述
在这里插入图片描述

可以重复以上步骤登陆第二个账号fl@fl.com

邮件群发测试 以fly@fl.com向test@fl.com发送一封群发测试邮件 再使用fl@fl.com测试接收邮件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-06-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装并开启sendmail和Dovecot服务
  • 配置SMTP邮件服务器Sendmail
  • chmod 0600 /var/mail/*
  • systemctl restart dovecot //重启dovecot服务
    • 此处会直接提示发信失败,似乎是一个bug,又或者是我哪里出问题,查阅了国内外对此问题的描述,并未给出正面解决方案,如果有解决的,请在文章末尾留言回复
    • 请直接跳到windows发信部分,发信之后,再进行下一步:mail命令接受邮件
      • 使用mail命令接收邮件,请先执行windows收发邮件测试
        • 配置Windows邮件客户端并收发邮件
          • 可以重复以上步骤登陆第二个账号fl@fl.com
          相关产品与服务
          轻量应用服务器
          轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门软件打包实现一键构建应用,提供极简上云体验。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档