本系列文章主要介绍linux下主流的开源邮件系统postfix的搭建过程,构建一个通过postfix虚拟用户管理的完整的邮件系统,

该系统包括以下组件:

邮件收发端postfix,dovecot,

邮件管理端:extmail,extman

安全认证:cyrus-sasl

防病毒,防垃圾

本文主要介绍postfix邮件系统搭建之前的准备工作,包括:

1.域名解析

2.linux系统优化配置

3.LAMP环境的搭建

4.sasl安全认证软件安装

废话不多,直接进入正题

1.域名解析

我的服务器和域名都是在http://www.aliyun.com上面进行购买的,当前环境下,阿里云对这两项服务的提供还是很不错的,值得推荐。

主要需要的配置是:A记录和MX记录。

以下是我的阿里云解析记录,提供参考:

红框内的是我需要使用的记录,其他的是一般可供配置的解析,在此只是演示一下,大家具体根据实际情况进行配置即可。

Tips:

MX(Mail Exchanger)记录
邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。这样的服务器可以有多个,通过MX优先级确定接受转发的顺序,数字越小优先级越高。
例如,当Internet上的某用户要发一封信给 user@mydomain.com 时,该用户的邮件系统通过DNS查找mydomain.com这个域名的MX记录,如果MX记录存在, 用户计算机就将邮件发送到MX记录所指定的邮件服务器上。

2.linux系统优化配置

2.1.检查系统版本

本次安装采用CentOS-6.8-x86_64系统,其他6.x版本的服务器相同,7.x的暂不适用

cat /etc/redhat-release
uname -r

2.2.创建并进入工作目录

mkdir -p /server/tools
cd /server/tools

2.3.修改主机名,配置hosts解析,均配置为mail.zuiyoujie.com

hostname mail.zuiyoujie.com
vim /etc/sysconfig/network
-->HOSTNAME=mailsrv.zuiyoujie.com vim /etc/hosts
-->127.0.0.1  mail.zuiyoujie.com

2.4.关闭防火墙,selinux

chkconfig iptables off
chkconfig ip6tables off
chkconfig --list ip6tables
chkconfig --list iptables sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/selinux/config
cat /etc/selinux/config |grep SELINUX=disabled
setenforce
getenforce

2.5.设置时间同步

/usr/sbin/ntpdate ntp1.aliyun.com
echo "# made by tssc for sync time in $(date +%F)">> /var/spool/cron/root
echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1' >>/var/spool/cron/root
crontab -l

2.6.配置CentOS6.0下的yum源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.bak
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
yum install net-tools wget vim lrzsz tree dos2unix -y

2.7.安装开发库和开发工具(gcc-c++)

yum groupinstall 'Development Libraries' 'Development Tools' -y

3.LAMP环境的搭建

3.1. 由于后续会安装extmail和extman的图形日志,需要安装一些基本的图形工具

yum install -y \
httpd mysql mysql-server mysql-devel php php-mysql openssl-devel \
gd gd-devel perl-GD libmcrypt libmcrypt-devel \
freetype freetype-devel glib zlib zlib-devel \
libjpeg libjpeg-devel libpng libpng-devel \
libart_lgpl libart_lgpl-devel libxml2 libxml2-devel \
libtool-ltdl libtool-ltdl-devel db4 db4-devel \
perl-DBD-MySQL perl-Unix-Syslog perl-CGI perl-File-Tail \
cairo cairo-devel expect tcl tcl-devel \
fontconfig pixman pango pango-devel rrdtool*

# 注意:

上面的安装包中可能没有perl-Unix-Syslog和perl-GD包,可以使用以下链接下载安装:

rpm -ivh ftp://rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/perl-Unix-Syslog-1.1-1.el6.rf.x86_64.rpm
rpm -ivh ftp://rpmfind.net/linux/dag/redhat/el6/en/x86_64/extras/RPMS/perl-GD-2.45-1.el6.rfx.x86_64.rpm

3.2.配置启动数据库

service mysqld start
chkconfig mysqld on
chkconfig --list mysqld
mysql --version
netstat -anptl

安装启动完成数据库,可以登录一下进行测试

4.安装cyrus-sasl认证服务

4.1.cyrus-sasl(Simple Authentication Security Layer)简单认证安全层, SASL主要是用于SMTP认证。saslauthd是其守护进程。

yum -y install cyrus-sasl-*

# 安装完毕查看版本号

[root@mail ~]# /usr/sbin/saslauthd -v
saslauthd 2.1.
authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap

4.2.配置cyrus-sasl,确认以下配置项,使用系统用户验证

vim /etc/sysconfig/saslauthd

# 修改并确认以下配置:

SOCKETDIR=/var/run/saslauthd
MECH=shadow

4.3.启动saslauthd服务,进行测试

chkconfig saslauthd on
chkconfig --list saslauthd
service saslauthd start

# 创建系统用户验证saslauthd服务的有效性

useradd zhaoshuai && echo  | passwd --stdin zhaoshuai
testsaslauthd -u zhaoshuai -p

# 若出现以下内容表示成功

[root@mail ~]# testsaslauthd -u zhaoshuai -p
: OK "Success."

完成以上这些就可以进行postfix服务器的安装了,我将在下一篇进行详细叙述。

完毕,呵呵呵

postfix邮件服务器搭建01-准备篇的更多相关文章

  1. postfix邮件服务器搭建03-webmail安装篇

    本文接着上文的安装进行,介绍另一个WebMail功能更加人性化的roundcube.当然也可以对已有的postfix邮件系统进行功能完善 1.下载安装roundcube cd /server/tool ...

  2. postfix邮件服务器搭建02-安装篇

    本文接着上文的环境,进行postfix邮件发信端和dovecot邮件收信端的部署,之后部署基于浏览器的extmail图形管理端,使管理员可以通过网页对邮件虚拟用户进行管理,对邮件服务器进行管控 1.p ...

  3. postfix邮件服务器搭建04-终结篇

    本来是计划对postfix做一个全系列的安装文档的,不过在查某个知识点的时候,偶然找到一个已经写好的postfix全系列文章,在全部看完之后惊为天人,我认为:总体上会比我要写的要好,所以我准备借用一下 ...

  4. 烂泥:Postfix邮件服务器搭建之虚拟用户配置

    virtual_gid_maps = static: virtual_transport = dovecot dovecot_destination_recipient_limit = 1 注意:po ...

  5. 烂泥:Postfix邮件服务器搭建之准备工作

    说实话,Postfix邮件服务器的搭建是一件很麻烦的事情,需要各种软件之间的配置和调试.在写这篇文章之前,我也是搭建测试了不下于10次才算把整个流程给走通,今天刚好有时间把整个搭建过程记录下来. 在正 ...

  6. 烂泥:Postfix邮件服务器搭建之软件安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb Postfix邮件服务器的搭建需要使用到几个软件,分别是cyrus-sasl.postf ...

  7. Postfix 邮件服务器搭建

    搭建服务环境: Centos 6 配置域名hosts: mail.demonC6.com 1.清理系统自带的邮件软件 # rpm -qa | grep sendmail* # rpm -e sendm ...

  8. Postfix邮件服务器搭建及配置

    一.邮件服务器(Mail Server)的传输协议 1.简单邮件传输协议(SMTP):Simple Mail Transger Protocol 2.扩展的简单邮件传输协议(ESMTP):Extend ...

  9. CentOS6.4下邮件服务器搭建

    CentOS6.4下邮件服务器搭建   linux下邮件服务器的搭建大致分为三个步骤 准备工作(真实的生产环境下需要) 发送服务器安装及配置 (Postfix) 接收服务器安装及配置(dovecot) ...

随机推荐

  1. 入手sm961

    测速: 发现这个测速软件不同版本测试还不一样 下面是我的intel750的,用最新版本测试软件测的 淘宝买了一个散热片

  2. Linux 下部署Django项目

    Linux 下部署Django项目   说明:本文所使用的环境为CentOS 6+Python2.7+Django1.11 安装Django.Nginx和uWSGI 1.确定已经安装了2.7版本的Py ...

  3. C# Winform实现手机号码归属地查询工具

    摘要:本文介绍使用C#开发基于Winform的手机号码归属地查询工具,并提供详细的示例代码供参考. 一.需求描述 输入正确的手机号码,查询该号码的归属地和其他相关信息. 二.需求分析 1.实现手机号码 ...

  4. apollo各协议支持的客户端

    apollo 源自 activemq,以快速.可靠著称,支持多协议:STOMP, AMQP, MQTT, Openwire, SSL, and WebSockets,下面就STOMP, AMQP, M ...

  5. 【转】爬取豆瓣电影top250提取电影分类进行数据分析

    一.爬取网页,获取需要内容 我们今天要爬取的是豆瓣电影top250页面如下所示: 我们需要的是里面的电影分类,通过查看源代码观察可以分析出我们需要的东西.直接进入主题吧! 知道我们需要的内容在哪里了, ...

  6. 构建hadoop集群时遇到的问题

    在构建hadoop集群时,出现过主节点中的namenode或datanode启动不成功的问题.在日志文件中往往会显示namenode和datanode中clusterID不相同的问题,这个问题往往都是 ...

  7. 关于 Token,你应该知道的十件事

    转自:http://ju.outofmemory.cn/entry/134189 原文是一篇很好的讲述 Token 在 Web 应用中使用的文章,而这是我和 Special 合作翻译的译文. 1. T ...

  8. spring mvc: 参数方法名称解析器(用参数来解析控制器下的方法)MultiActionController/ParameterMethodNameResolver/ControllerClassNameHandlerMapping

    spring mvc: 参数方法名称解析器(用参数来解析控制器下的方法)MultiActionController/ParameterMethodNameResolver/ControllerClas ...

  9. 数据挖掘之Python调用R包、函数、脚本

    Python中集成R :参考博客http://blog.csdn.net/weidelight/article/details/44946785

  10. HDU5521-最短路-建图

    Meeting Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total ...