一、邮件服务简介

1、电子邮件服务是Interne上最基本的服务之一,进入互联网的用户不需要任何纸张就可以方便地使用电子邮件来收发邮件

2、Internet上的电子邮件服务都是基于客户/服务器模式的

3、客户端通常使用电子邮件软件(如Outlook Express、Foxmail等)来收发邮件

4、邮件系统的组成:

(1)MUA:在客户端执行的软件,用来接受用户的指令,将用户的信件传送至信件传输代理

(2)MTA:用在邮件服务器端执行的软件,它也是主要的邮件服务器,可以在服务器间传输电子邮件

(3)MDA:通常与MTA 一同运行,主要的功能就是将MTA 所接收的信件,依照信件的流向(送到哪里去)来将该信件放置到本机账户下的邮箱(Mailbox)或者是再经由MTA将该信件送到下一个MTA


二、实验目的

  本实验在Linux的DNS配置3-多域实验的基础上,新增两台MUA,并对三台DNS Server进行相应设置,使得两台MUA能够相互收发邮件


三、实验拓扑

从左至右虚拟机分别命名为:client.alice.com、mail.alice.com、gw、mail.bob.com、client.bob.com


四、实验步骤

(1)搭建如图所示的网络环境(参考:Linux基础网络搭建实验

  • client.alice.com可以Ping通client.bob.com:

  • mail.alice.com可以Ping通mail.bob.com:

(2)完成多域的配置(参考:Linux的DNS配置3-多域

  • 在alice上解析bob的邮件记录:

  • 在bob上解析alice的邮件记录:

(3)在mail.alice.com上:

1)修改postfix的主配置文件

[root@lyy 桌面]# gedit /etc/postfix/main.cf 
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level =
home_mailbox = Maildir/
html_directory = no
inet_interfaces = all
inet_protocols = ipv4
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mydomain = alice.com
myhostname = mail.alice.com
mynetworks = 127.0.0.0/8
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6./README_FILES
relay_domains = $mydestination, bob.com
sample_directory = /usr/share/doc/postfix-2.6./samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtpd_client_restrictions = permit_sasl_authenticated
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
unknown_local_recipient_reject_code =

注意:红色字体为需要修改的部分,蓝色字体为需要添加的部分!

2)如何修改

  • 点击“收搜”——“查找”(Ctrl+F)

  • 输入要修改的关键字如“home_mailbox”

  • 一直按回车键直到找到需要修改的部分,进行相应修改

  • 按照此方法,将需要修改的部分一一修改

如不想进行修改,可以直接下载已经修改好的文件,传入到/etc/postfix中将原有文件进行替换

文件地址:http://pan.baidu.com/s/1o8RY6Oa

3)检查配置文件是否修改正确

[root@lyy 桌面]# postconf -n

注意:保证配置文件修改正确,否则邮件服务会出现各种问题!

4)修改或替换完成后,启动postfix服务

[root@lyy 桌面]# service postfix start

5)创建用户user1

[root@lyy 桌面]# useradd user1
[root@lyy 桌面]# passwd user1

(我的密码为:123456)

6)获得sasl的认证

  • 将/etc/sysconfig/saslauthd文件中的MECH=pam改为 MECH=shadow
[root@lyy 桌面]# gedit /etc/sysconfig/saslauthd 

  • 启动saslauthd
[root@lyy 桌面]# service saslauthd start
  • 解除SELinux的限制(需要等待20s左右)
[root@lyy 桌面]# setsebool -P allow_saslauthd_read_shadow 
  • 验证是否能够使用系统上的账号密码来进行认证
[root@lyy 桌面]# testsaslauthd -u user1 -p 123456(你的密码)

7)安装dovecot服务

[root@lyy 桌面]# yum install dovecot -y

8)配置dovecot服务(需要修改4个文件)

[root@lyy 桌面]# gedit /etc/dovecot/dovecot.conf

[root@lyy 桌面]# gedit /etc/dovecot/conf.d/-auth.conf 

[root@lyy 桌面]# gedit /etc/dovecot/conf.d/-mail.conf 

[root@lyy 桌面]# gedit /etc/dovecot/conf.d/-master.conf 

9)启动dovecot服务

[root@lyy 桌面]# service dovecot start

10)防火墙开放110和25号端口

[root@lyy 桌面]# iptables -I INPUT -p tcp -m multiport --dports , -j ACCEPT
[root@lyy 桌面]# iptables -I INPUT -p udp -m multiport --dports , -j ACCEPT

(4)在mail.bob.com上:

1)修改postfix的主配置文件(方法同alice)

2)检查postfix的配置文件是否修改正确

[root@lyy 桌面]# postconf -n

3)修改或替换完成后,启动postfix服务

[root@lyy 桌面]# service postfix start

4)创建用户user2

5)获得sasl的认证(操作参考alice)

6)安装dovecot服务

7)配置dovecot服务(操作同alice)

8)启动dovecot服务

9)防火墙开放110和25号端口

(5)在client.alice.com上:

1)设置DNS服务器

[root@lyy yum.repos.d]# gedit /etc/resolv.conf 

2)安装邮件客户端thunderbird

[root@lyy yum.repos.d]# yum install thunderbird -y

3)添加用户user1

  • 点击“应用程序”——“Internet”——“Thunderbird Mail”——“跳过并使用已有的电子邮件”

  • 输入user1的相关信息,点击“继续”

  • 找到用户相关设置项,点击“完成”

  • 用户user1添加完成

(6)在client.bob.com上:

1)设置DNS服务器

2)安装邮件客户端thunderbird

3)添加用户user2(方法同user1)


五、结果测试

(1)用user1给user2写邮件

(2)在user2上获取并回复邮件

(3)在user1上查看user1的回复

发现能够使用user1和user2相互通信,实验成功!


【版权所有,转载请注明原文出处:http://www.cnblogs.com/liaoyuanyang/p/6942447.html 】

Linux的邮件服务器配置的更多相关文章

  1. linux 内核邮件列表

    第一节 - 一般性问题 1. 为什么有些时候使用“GNU/Linux"而另一些时候使用“Linux”? 答:在这个FAQ中,我们尝试使用“linux”或者“linux kernel”来表示内 ...

  2. linux sendmail 邮件服务器架设(fedora 8)

    linux sendmail 邮件服务器架设(fedora 8) 2009-01-22 17:27 3316人阅读 评论(2) 收藏 举报 邮件服务器linuxprotocolscaching测试lo ...

  3. Linux显示邮件状态等信息

    Linux显示邮件状态等信息 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ finger -l Login: youhaidong Name: youhaid ...

  4. Linux mail 邮件发送

    Linux mail 邮件介绍 在Linux系统下我们可以通过”mail“命令,发送邮件,在运维中通常我们它来实现邮件告警. 安装 (方案1) 一.安装邮件服务 yum install -y send ...

  5. [Linux]Linux下Apache服务器配置

    Linux下Apache服务器配置 相关包: httpd-2.2.3-29.e15.i386.rpm                 //主程序包 httpd-devel-2.2.3-29.e15.i ...

  6. Linux下Apache服务器配置

    Linux下Apache服务器配置 相关包: httpd-2.2.3-29.e15.i386.rpm                 //主程序包 httpd-devel-2.2.3-29.e15.i ...

  7. mantis基本配置及邮件服务器配置

    邮件服务器配置 在c:\php-5.0.3\php.ini文件中查找smtp,将localhost改为你的发件服务器,如SMTP = smtp.163.com   在php.ini文件中查找sendm ...

  8. linux配置邮件客户端

    linux配置邮件客户端 1. 申请一个163邮箱,并配置客户端授权密码 l 开启POP3/SMTP/IMAP l 设置客户端授权密码 ###此密码不能跟邮箱密码相同,此密码用来在linux邮件客户端 ...

  9. REHL5.5 linux的postfix的邮件服务器配置 (笔记)

    一.发送邮件服务器(smtp服务器) 1.系统安装时已经有postfix. 2.修改配置 1)vi main.cf //你可以先备份一下配置文件 myhostname = INMSC2//修改为你的主 ...

随机推荐

  1. ServletRegistrationBean的源码摘要

    感觉ServletRegistrationBean在Springboot中是一个可以看懂的类,好像作用就相当于@Controoller注解, package org.springframework.b ...

  2. 剑指offer——python【第59题】按之子形顺序打印二叉树

    题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. 解题思路 这道题其实是分层打印二叉树的进阶版 ...

  3. page0902未完成

    /** * @author:(LiberHome) * @date:Created in 2019/3/1 23:14 * @description: * @version:$ */ import j ...

  4. cpu读取指令时读取的长度

    CPU读取指令时,如果单字节指令,一次访存即可完成读取操作:如果是多字节指令,会根据第一次读取指令的操作码与寻址标志位,判断指令的后续长度,进而完成整个指令的读取,同时指令指针IP会自动进行修改,指向 ...

  5. Java根据链接生成二维码

    Java根据链接生成二维码 相关 jar 包: core-3.1.0.jar 源码及 jar 包下载:http://files.cnblogs.com/files/liaolongjun/qrcode ...

  6. es7 async/await使用

    先创建一个promise对象,里面执行一个异步函数 function fetchUser() { return new Promise((resolve, reject) => { fetch( ...

  7. init();

    <script language="javascript" type="text/javascript">window.onload = funct ...

  8. Weex开发中的应用小笔记

    内容: 获取输入或其他操作使得值一直改变并在一段不改变的时间后执行下一步操作(输入搜索关键字并执行搜索) https://vuejs.org/v2/guide/computed.html?spm=a2 ...

  9. nginx的proxy_redirect

    proxy_redirect 语法:proxy_redirect [ default|off|redirect replacement ]; 默认:proxy_redirect default; 配置 ...

  10. 2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...