首页 > 代码库 > 编译安装postfix及使用sasl对客户端认证

编译安装postfix及使用sasl对客户端认证

编译安装postfix

    在之前的文章我增提到过,目前linux常用的MTA软件有sendmail,qmail,exim,postfix。虽然目前使用最多的MTA是sendmail,但是sendmail实现的功能远没有postfix功能强大,而且postfix兼容sendmail,执行效率比sendmail更高,也更安全,postfix采用模块化设计。因此,由于具有众多的优点,postfix越来越流行。因此,此章主要是介绍如何使用postfix来搭建一台服务器,并使用sasl来为客户端提供认证功能。


使用postfix搭建邮件服务器步骤如下:

一、安装postfix前需要准备的事项:

1、我想大家都发过邮件的,在发送邮件的时候,我们一般指定收件人的格式是这样的:user@domain,

因此,当客户在发送一封邮件时,首先会到DNS服务器中查找该domain内的MX记录,并由MX记录找到这个domain内的邮件服务器(也就是该MX主机的A记录)。因此在安装前,需要配置好DNS的相关参数,在这里我不在详述如何来配置这些,只需要在该domain配置好MX,A,PTR记录(邮件服务器支持反向解析)即可。假设这里的domain为xsl.com,邮件服务器为mail.xsl.com,对于的A记录为192.168.108.251


2、安装以下开发所用到的rpm包组:

Development Libraries

Development Tools

Legacy Software Development

X Software Development


3、安装所需的rpm包,这包括以下这些:

httpd, mysql, mysql-server, mysql-devel, openssl-devel, dovecot, perl-DBD-MySQL, tcl, tcl-devel, libart_lgpl, libart_lgpl-devel, libtool-ltdl, libtool-ltdl-devel, expect


4、关闭sendmail(默认系统的邮件服务器软件是sendmail,且是开启的),并将它随系统开机自动启动的功能关闭

#service sendmail stop

#chkconfig sendmail off



二、安装mysql-5.5.28

1、准备数据存放的文件系统


新建一个逻辑卷,并将其挂载至特定目录即可。这里不再给出过程。


这里假设其逻辑卷的挂载目录为/mydata,而后需要创建/mydata/data目录做为mysql数据的存放目录。


2、新建用户以安全方式运行进程:


# groupadd -r mysql

# useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql

# chown -R mysql:mysql /mydata/data


3、安装并初始化mysql-5.5.28

#tar xf mysql-5.5.28-linux2.6-i686.tar.gz -C /usr/local

#cd  /usr/local

#ln -sv mysql-5.5.28-linux2.6-i686  mysql

#cd mysql

#chown -R  mysql:mysql  .

#scripts/mysql_install_db --user=mysql --datadir=/mydata/data   

(#以mysql的身份来初始化数据库并指定数据的存放位置)

#chown  -R  root   .  #(将mysql目录的属主改为root,防止mysql进程被攻破,将具有mysql的一切权限)


4、为mysql通过配置文件

#cd  /usr/local/mysql

#cp support-files/my-large.cnf  /etc/my.cnf

说明:这个目录下有多个配置文件,需要根据自己的内存来选择

这些配置文件有(在/usr/local/mysql/support-files目录下),my-small.cnf、my-medium.cnf、my-large.cnf、my-huge.cnf等等。我这里选择的是my-large.cnf作为我的配置文件

并且编辑/etc/my.cnf,找到[mysqld]的这一段落,修改thread_concurrency的值为你的CPU个数乘以2,比如这里使用如下行:
thread_concurrency = 2

另外还需要添加如下行指定mysql数据文件的存放位置:
datadir = /mydata/data

 

在这里说明一下。mysql的配置文件有多个,因此mysql在加载配置文件的顺序是:

/etc/my.cnf---->/etc/mysql/my.cnf--->$BASEDIR/my.cnf--->~/.my.cnf


5、为mysql通过Sysv服务脚本

#cd /usr/local/mysql

#cp support-files/mysql.server  /etc/rc.d/init.d/mysqld

#chmod +x  /etc/rc.d/init.d/mysqld


6、添加至服务列表

chkconfig  --add  mysqld

如果想让mysqld开机自动启动,可以使用chkconfig  mysqld   on命令来实现

 

通过上述6步就完成mysql的安装了,并且也可以进行测试了。


为了使用mysql的安装符合系统使用规范,并将其开发组件导出给系统使用,这里还需要进行如下步骤:
7、输出mysql的man手册至man命令的查找路径:

编辑/etc/man.config,添加如下行即可:
MANPATH  /usr/local/mysql/man

 

8、输出mysql的头文件至系统头文件路径/usr/include:

这可以通过简单的创建链接实现:
# ln -sv /usr/local/mysql/include  /usr/include/mysql


9、输出mysql的库文件给系统库查找路径:

# echo ‘/usr/local/mysql/lib‘ > /etc/ld.so.conf.d/mysql.conf

而后让系统重新载入系统库:
# ldconfig


9、修改PATH环境变量,让系统可以直接使用mysql的相关命令

可以在/etc/profile.d/目录下创建以*.sh结尾的文件

#vim  /etc/profile.d/mysqld.sh

#添加如下行:

export  PATH=$PATH:/usr/local/mysql/bin

这样mysql就可以直接使用它的相关命令了,不需要输入绝对路径来使用

本文出自 “linux学习之路” 博客,谢绝转载!

编译安装postfix及使用sasl对客户端认证