怎样在Linux下架设邮件服务器Sendmail

怎样在Linux下架设邮件服务器Sendmail,第1张

一安装Sendmail 完全安装Red Hat Linux 90时,Sendmail就会自动内置,版本号为8128-4。如果你不确定Linux是否已经安装有sendmail,可以输入以下命令查看: [root@ahpeng root] rpm–qa grep sendmail 如果确定没有安装,请在图形界面下依次选择单击“主菜单-系统设置-添加删除应用程序”,然后在打开的“软件包管理”窗口里选中“邮件服务器”选项,点“更新”后按照提示安装即可。 另一种办法是:直接插入Linux第1张安装光盘,选择/RedHat/RPMS目录下的sendmail-8128-4i386rpm安装包,之后运行[root@ahpeng RPMS] # rpm -ivh sendmail-8128-4i386rpm即可开始安装,再用此方法在第3张安装光盘的同目录下依次安装sendmail-cf8128-4i386rpm、sendmail-doc 8128-4i386rpm。 二启动Sendmail服务系统 笔者建议使用带参数的Sendmail命令控制邮件服务器的运行: [root@ahpeng root]# sendmail -bd –q12h -b:设定Sendmail服务运行于后台。 -d:指定Sendmail以Daemon(守护进程)方式运行。 -q:设定当Sendmail无法成功发送邮件时,就将邮件保存在队列里,并指定保存时间。上面的12h表示保留12小时。 此外,要检测Sendmail服务器是否正常运行,可以使用命令行: [root@ahpeng root]#/etc/rcd/initd/sendmail status。 三配置Sendmail sendmailcf的配置语法比较难懂,一般资料上都是采用m4宏处理程序来生成所需的sendmailcf文件(使用m4编译工具一般不容易出错,还可避免某些带有安全漏洞的宏对服务器造成的破坏)。其配置文件位于/etc/mail/sendmailcf,在创建的过程中还需要一个模板文件,Linux自带有一个模板文件,位于/etc/mail/sendmailmc。故可以直接通过修改sendmailmc模板来达到定制sendmailcf文件的目的,而不必去死啃哪些难理解的配置命令。配置步骤为: 第一步:用模板文件sendmailmc生成sendmailcf配置文件,并导出到/etc/mail/目录下,使用命令行:m4 /etc/mail/sendmailmc >/etc/mail/sendmailcf 第二步:再用[root@ahpeng root] /etc/rcd/initd/sendmail restart命令行重启sendmail。 至此,邮件服务系统配置完成,已经正常工作。接下来就是创建具体的帐户了。

效果截图

Sendmail :sendmail 是最古老的 MTA(Mail Transfer Agent,电子邮件系统)之一,最早它诞生的时候,Internet 还没有被标准化,当时主机之间使用的是 UUCP 技术来交换邮件。它被设计得比较灵活,便于配置和运行于各种类型的机器。
Qmail :qmail 是新生一代的 MTA 代表,它以速度快、体积小、易配置安装等特性而著称。作者 DJBernstein 是一个数学教授,富有传奇色彩。他于 1995 年开发 qmail,1996 年发布 070 版,并使用了多种当时比较先进的 技术,包括 Maildir,与 sendmail 单个 binary 不同的模块化设计,权限分离,以及使用了大量由他编写的配套工具,如 daemontool,ucsip-tcp 等。qmai迅速成为了 Internet 上最有名的  MTA,使用者众。
postfix :postfix如今已经独树一帜,流水线、模块化的设计,兼顾了效率和功能。灵活的配置和扩展,使得配置 postfix 变得富有趣味。其主要的特点是速度快、稳定,而且配置/功能非常强大,并和 sendmail 类似,提供了与外部程序对接的 API/protocol。尤其是配置部分,postfix 另一个优势是至今依然保持活跃的开发工作,而且稳步发展,适合高流量大负载的系统,扩充能力较强。本实验也是基于 postfix 服务器软件来实现。

邮件服务器基本的工作原理
MUA(Mail User Agent):向外发送邮件,以及提供用户浏览与编写邮件的功能。
MTA(Mail Transfer Agent):(可以理解为 smtpd 服务器)帮忙将用户的邮件传递出去或接收进来。
MDA(Mail Delivery Agent):将接收下来的邮件存放到对应用户邮筒当中的程序。通过分析 MTA 所收到邮件的表头或内容,来判断此邮件是属于哪个用户,然后决定将此邮件投递给哪个用户的邮筒里。
MRA(Mail Retrieval Agent):通过 MRA 服务器提供的邮政服务协议(POP)来接收自己的邮件。

邮件中继:
SMTPD 要支持邮件路由功能,需要打开 Open Relay 开放式中继。
SMTPD 是根据收件人判断邮件是否需要中继,而且只给指定的客户端中继。

注:当 DNS 上存在多个 MX 记录的主机这时就是根据 DNS 的邮件级判断了。DNS 上定义的值越小,其优先级越高。辅助交换器接受到邮件并不能保存邮件。而是这个辅助交换器会等到主邮件交换器空闲的时候把代替它接受下来的邮件在转给主邮件交换器。所以任何邮件处理都是主邮件交换器处理的。所以我们实际情况下,如果有 2 台服务器做邮件交换器,性能比较高的应该为主的。

安装配置过程中,postfix 通过 Internet 发送和接收 email,并存储在用户邮箱里。同时客户也可以通过 IMAP 或者 POP3 恢复他们的邮件。其中的客户认证是通过  Courier Authdaemon 模块的。下图表示出了这个过程:

出现安装界面时,首先按下 <tab> 键切换到确定,然后按下回车。

安装 postfix 的时候会问你安装的服务器类型,对于我们的需要,我们选择默认的 Internet Site,这是最符合我们的服务器类型,然后按下回车确认。

使用 vim 编辑配置文件:

大概在第 31 行,编辑 myhostname,修改为 myhostname = shiyanloucom。
然后我们把 alias_map 参数修改为 alias_maps = hash:/etc/postfix/virtual,之后会讲解 virtual 里面填写什么。
之后设置 mynetworks 段落,它定义可以使用这台服务器的主机,我们这里就用默认的本地地址。你也可设置为其他地址。
编辑完成后按下 Esc 键,输入 :wq 保存退出。

此命令创建了一个用户 master,其中 -d 和 -m 选项用来为登录名 master 产生一个主目录 /usr/master(/usr 为默认的用户主目录所在的父目录)。

我们编写之前设置的  virtual文件,这些邮箱地址是用来传送邮件的。

在这个文件里,我们将设置一个表,对应相关的邮件地址。

完成后保存关闭文件。
我们可以通过调用下面这个命令来实现我们的映射:

接着我们重启 postfix,完成我们的修改:

我们可以用 shiyanlou 这个账号给 master 这个账号发一封邮件。首先我们需要安装一个命令行收发邮件的软件 mailutils 。

写一封邮件

输入如下内容:

其中 -s 参数是指邮件的标题,< 后面是将要发送的邮件内容从 hellotxt 中重定向。这个命令如果正确执行不会有输出。
然后我们切换到 master 用户,查看我们的邮件。

按下回车建可以查看邮件内容,输入 quit 即可退出邮箱。

Linux 邮件服务器原理介绍,编译安装 Postfix 实现本地的邮件服务
Ubuntu 服务器指南-邮件服务-Postfix
how-to-run-your-own-mail-server-with-mail-in-a-box-on-ubuntu-14-04

1配置postfix

a   /etc/postfix/maincf

    配置mydomian(域名),myhostname,myorigin,inet_interfaces=all(其他关闭),mynetworks-style,mydestination,mynetworks,relay_domains,home_mailbox

   配置主机名和域名 mydomain myhostname

  设置由本机寄出的邮件所使用的域名或主机名称 myorigin

  设置postfix服务监听的网络接口 inet_interfaces

  设置可接受邮件的主机名称和域名 mydestination

  设置可以转发哪些网络的邮件 mynetworks

  设置可以转发哪些网域的邮件 relay_domains = sinacn

b验证:

telnet localhost 25

mail from:sun@baiducom(发件人任意)

rcpt to:user1@mail1991syjcom(收件人创建的名字和设置好的域名)

data(输入信息)

(结束输入)

quit(离开)

2配置dovecot

yum install -y dovecot

a配置文件:a  vim /etc/dovecot/dovecotconf  (protocols = imap pop3)

                b  vim /etc/dovecot/confd/10-authconf                          

                               (disable_plaintext_auth = no)

                c vim /etc/dovecot/confd/10-mailconf

   (mail_location = maildir:~/Maildir)地址要和postfix服务器配置文件中的home_mailbox地址一致

              d vim /etc/dovecot/confd/10-sslconf

                                (ssl = yes)

              e vim /etc/pamd/dovecot  (查看pam认证文件)

b验证:

[root@CentOS6 ~]# telnet localhost 110

Trying ::1

Connected to localhost

Escape character is '^]'

+OK Dovecot ready

user user1

+OK

pass 123

+OK Logged in

list

+OK 4 messages:

1 472

2 458

3 464

4 464

retr 3

+OK 464 octets

Return-Path: <sadsz2@asdcom>

X-Original-To: syj@mail1991syjcom

Delivered-To: syj@mail1991syjcom

3邮件客户端的配置

a 关闭防火墙,selinux

b 设置收发邮件服务器

我这里是用的foxmail 看我的截图

这样就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13457188.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-10
下一篇 2023-08-10

发表评论

登录后才能评论

评论列表(0条)

保存