




已阅读5页,还剩47页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
CentOS5.3+Nginx0.7.57+Postfix+Extmail邮件系统安装配置说明:关于邮件配置这几篇文章,主要参考的是作者sery博客,里边还有一些作者的内容.本篇配置,大部分软件版本与原作者的都不相同.同时,里边更新了一些新的内容,如WEBServer 采用nginx,系统版本采用CentOS5.3.这几篇命名为原创不是作者的本意,为了避免误解,现更改为转载.但,整篇配置确是作者一步步配置.在原作者的配置上也发现了一些新的问题.本人会继续开源软件的研究和实践. 系统平台:CentOS5.31 nginxweb server2 Mysql 用数据库存储用户信息3 Phpphp(fastcgi)4 Authlib 与sasl一起做验证5 Sasl 验证方法6 Postfix smtp邮件发送服务主程序7 Courier-imappop3 邮件接收主程序8 Pcre 安装Imap需要perl正则表达式9 Maildrop邮件投递代理,邮件转发到用户邮箱10. clamav杀毒软件11. amavisd-new邮件病毒扫描12. Mail-SpamAssassin防垃圾邮件 CentOS5.3系统安装包,一定要选的6个包。1、system tools2、administration tools3、development tools4、development libraries5、network servers (5.1为network services)6. base (5.1没有单独列出)相关软件下载地址: /courier/courier-authlib-0.62.2.tar.bz2 /pub/cyrus-mail/cyrus-sasl-2.1.22.tar.gz /sourceforge/pcre/pcre-7.8.tar.gz /source/official/postfix-2.5.6.tar.gz /sourceforge/courier/courier-imap-4.4.1.tar.bz2 /sourceforge/courier/maildrop-2.0.4.tar.bz2 /release/fontconfig-2.6.0.tar.gz /sources/DST/xpm/xpm-3.4k.tar.gz 以下是具体安装步骤:一.PHP(FastCGI)环境 一.PHP(FastCGI)环境 1.MySQL安装 版本:mysql-5.0.41.tar.gz 安装过程: 安装开始# groupadd mysql # useradd -g mysql mysql#./configure -prefix=/usr/local/mysql -with-extra-charsets=gb2312,gbk -with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock -with-mysqld-ldflags=-all-static -with-client-ldflags=-all-static -sysconfdir=/etc -enable-assembler# make & make install# scripts/mysql_install_db -user=mysql /数据库安装# bin/mysqld_safe -user=mysql & /起动mysqld安装结束echo /usr/local/mysql/lib/mysql /etc/ld.so.conf /postfix编译里会用到基本操作:1. 起动/关闭MySQL/usr/local/mysql/bin/mysqld_safe &/usr/local/mysql/bin/mysqladmin -u root p shutdown2. 设置密码mysqladmin -u root password new-password 3. 添加 /usr/local/webserver/mysql5/bin 到环境变量 vi /etc/profile export PATH=$PATH:/usr/local/mysql/bin2. GD相关安装 1. 版本libpng-1.2.29.tar.gz#shell tar zxvf libpng-1.2.29.tar.gzshell cd libpng-1.2.29shell ./configureshell makeshell make install# 2.版本jpegsrc.v6b.tar.gz#shell tar zxvf jpegsrc.v6b.tar.gzshell cd jpeg-6b/*由于jpeg的安装脚本中,没有创建文件夹,因此我们得手动给他创建好文件夹*/Shell mkdir p /usr/local/jpeg/binShell mkdir /usr/local/jpeg/libShell mkdir /usr/local/jpeg/includeShell mkdir /usr/local/jpeg/manShell mkdir /usr/local/jpeg/man1Shell mkdir /usr/local/jpeg/man/man1/*生成共享*/Shell ./configure -prefix=/usr/local/jpeg -enable-shared -enable-staticShell make & make install # 3. 版本freetype-2.3.7.tar.gz#shell tar zxvf freetype-2.3.7.tar.gzshell cd freetype-2.3.7shell ./configure /不指定目录,方便以下RRDTool安装shell make & make install#4版本 fontconfig-2.6.0.tar.gz #Shell tar zxvf fontconfig-2.6.0.tar.gz & cd font*Shell ./configure -prefix=/usr/local/fontconfig -with-freetype-config=/usr/local/bin/freetype-configShell make & make install #5. 版本 gd-2.0.35.tar.gzGD库安装以前先把以上几个安装上,这个安装是有一定顺序的。#Shell tar zxvf gd-2.0.35.tar.gzShell cd gd-2.0.35Shell ./configure -prefix=/usr/local/gd -with-png -with-jpeg=/usr/local/jpeg -with-freetype-with-fontconfig=/usr/local/fontconfigShell make & make install#* Configuration summary for gd 2.0.34: Support for PNG library: yes Support for JPEG library: yes Support for Freetype 2.x library: yes Support for Fontconfig library: yes Support for Xpm library: no Support for pthreads: yesfaq:1 cd . & /bin/sh /usr/local/src/gd-2.0.35/config/missing -run aclocal-1.9 -I configaclocal:configure.ac:64: warning: macro AM_ICONV not found in library cd . & /bin/sh /usr/local/src/gd-2.0.35/config/missing -run automake-1.9 -foreign cd . & /bin/sh /usr/local/src/gd-2.0.35/config/missing -run autoconfconfigure.ac:64: error: possibly undefined macro: AM_ICONV If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation.make: * configure Error 1解决:重新make 一下,如果不行,可以安装下边的包安装gettext包安装方式: shell yum install gettext 或通过手动下载gettext包3.PHP(FastCGI)模式安装 php版本:5.2.6 #gzip -cd php-5.2.9-fpm-0.5.10.diff.gz | patch -d php- 5.2.9 -p1步骤: #./configure -prefix=/usr/local/phpcgi -with-config-file-path=/usr/local/phpcgi/etc -with-mysql=/usr/local/mysql -with-gd=/usr/local/gd -with-jpeg-dir=/usr/local/jpeg -with-png-dir=/usr/local/lib -with-freetype-dir=/usr/local/lib -enable-mbstring -enable-mbregex -enable-bcmath -enable-sockets -with-xsl -with-curl -with-curlwrappers -enable-fastcgi -enable-force-cgi-redirect -enable-discard-path -with-openssl -enable-fpm# make & make install#cp php.ini-recommended /usr/local/phpcgi/etc/php.ini# /usr/local/phpcgi/etc/php-fpm.conf /usr/local/phpcgi/logs/php-fpm.pid /usr/local/phpcgi/logs/php-fpm.log notice 10 1m 5s yes default :9000 -1 0666 /usr/sbin/sendmail -t -i 1 vmail vmail static 25 10 5 25 0s 0s logs/slow.log 51200 0 yes 500 $HOSTNAME /usr/local/bin:/usr/bin:/bin /tmp /tmp /tmp $OSTYPE $MACHTYPE 2 起动php-cgi进程:/usr/local/phpcgi/sbin/php-fpm start4.NGINX安装 nginx版本:0.7.57步骤: # ./configure -user=vmail -group=vmail -prefix=/usr/local/nginx -with-http_stub_status_module -with-http_ssl_module# make & make install# more /usr/local/nginx/conf/fcgi.conf#fastcgi.conffastcgi_param GATEWAY_INTERFACE CGI/1.1;fastcgi_param SERVER_SOFTWARE nginx;fastcgi_param QUERY_STRING $query_string;fastcgi_param REQUEST_METHOD $request_method;fastcgi_param CONTENT_TYPE $content_type;fastcgi_param CONTENT_LENGTH $content_length;fastcgi_param SCRIPT_NAME $fastcgi_script_name;fastcgi_param REQUEST_URI $request_uri;fastcgi_param DOCUMENT_ROOT $document_root;fastcgi_param SERVER_PROTOCOL $server_protocol;fastcgi_param REMOTE_ADDR $remote_addr;fastcgi_param REMOTE_PORT $remote_port;fastcgi_param SERVER_ADDR $server_addr;fastcgi_param SERVER_PORT $server_port;fastcgi_param SERVER_NAME $server_name;再继续安装前先清理一下系统自带的一些软件Sendmail相关包rpm q sendmailsendmail-8.13.8-2.el5-清除:rpm -e sendmail -nodepsSasl相关包列出 rpm -qa|grep saslcyrus-sasl-2.1.22-4cyrus-sasl-devel-2.1.22-4cyrus-sasl-plain-2.1.22-4cyrus-sasl-lib-2.1.22-4-清除:rpm -e -nodeps cyrus-sasl cyrus-sasl-devel cyrus-sasl-plain cyrus-sasl-lib然后是创建以下用户及组用户名组名作用备注mysqlmysql数据库mysql运行用户以上已创建vmailvmailnginx服务运行用户以上已创建vmailvmailPostfix虚拟邮件帐号所使用的用户及组uid,gid:1001,1001postfixPostfixPostfix主程序使用的帐号和组Uid,gid:1000,1000PostdropPostfix setgid_groupsetgid_group=postdrop1002amavisamavis邮件扫描clamavClamav病毒扫描ln -s /usr/src/kernels/2.6.18-128.el5-i686 /usr/src/linux /避免以下安装编译出现问题一安装courier-authlib安装过程: 安装开始 Shell tar jxvf courier-authlib-0.62.2.tar.bz2 Shell cd courier-authlib-0.62.2 Shell./configure -with-mailuser=vmail -with-mailgroup=vmail -with-mysql-libs=/usr/local/mysql/lib/mysql -with-mysql-includes=/usr/local/mysql/include/mysql -prefix=/usr/local/authlib -without-stdheaderdir Shell make & make install Shell make install-configure安装结束-一般情况下,anthlib的安装应该是容易完成的。 配置:配置authlib.在目录/usr/local/authlib/etc/authlib中,修改文件authdaemonrc及authmysqlrc。vim /usr/local/authlib/etc/authlib/authdaemonrcvi /usr/local/authlib/etc/authlib/authdaemonrc authmodulelist=authmysqlauthmodulelistorig=authmysqlDEBUG_LOGIN=2修改上面3项,其他的项保持不变。这个修改前2行表示用mysql认证模块;把DEBUG_LOGIN的值有默认的“0”改成“2”的用意是运行postfix时有更多的信息输出,通过生成的日志以帮助排错。vi /usr/local/authlib/etc/authlib/authmysqlrc MYSQL_SERVER localhostMYSQL_USERNAME extmailMYSQL_PASSWORD extmailMYSQL_DATABASE extmailMYSQL_SOCKET /usr/local/mysql/tmp/mysql.sockMYSQL_PORT 3306MYSQL_USER_TABLE mailboxMYSQL_CRYPT_PWFIELD password /这里需要注意#MYSQL_CLEAR_PWFIELD passwordDEFAULT_DOMAIN MYSQL_UID_FIELD 1001MYSQL_GID_FIELD 1001MYSQL_LOGIN_FIELD usernameMYSQL_HOME_FIELD /var/mailbox/MYSQL_NAME_FIELD nameMYSQL_MAILDIR_FIELD maildirMYSQL_QUOTA_FIELD concat(quota,S)MYSQL_WHERE_CLAUSE active=1特别注意MYSQL_UID_FIELD和MYSQL_GID_FIELD字段的值,这里是1001,也可以是其它的,但一定要与vmail用户及组相一致(id vmail可以得出这2者的值)后续工作还有,所以现在还不能测试。-二安装SASLcyrus-sasl-2.1.22.tar.gz 安装过程: 安装开始Shell tar zxvf cyrus-sasl-2.1.22.tar.gzShell cd cyrus-sasl-2.1.22Shell ./configure -disable-anon -disable-gssapi /授权-disable-sample-disable-digest /授权-enable-plain-enable-login -enable-sql -with-mysql=/usr/local/mysql-with-mysql-includes=/usr/local/mysql/include/mysql -with-mysql-libs=/usr/local/mysql/lib/mysql-with-authdaemond=/usr/local/authlib/var/spool/authdaemon/socketShell makeShell make install安装结束配置:ln-s/usr/local/lib/sasl2/usr/lib/sasl2 /sasl的安装目录是/usr/local/lib/sasl /安装结束后有Warning警告echo “/usr/local/lib” ld.so.conf /否则postfix 编译里会找不到libsasl2.so.2 创建文件/usr/local/lib/sasl2/smtpd.conf,并加入如下内容:pwcheck_method: authdaemondmech_list: PLAIN LOGINlog_level: 3authdaemond_path: /usr/local/authlib/var/spool/authdaemon/socket Sasl2需要使用文件/usr/local/authlib/var/spool/authdaemon/socket,但默认情况下,其属性是744,需要把它加上执行权限,以便文件属组(主)而外的其它用户可以执行。运行命令chmod +x /usr/local/authlib/var/spool/authdaemon即可,如果不这样处理,smtp验证无一例外会失败的。创建运行时需要的目录并调试启动# mkdir -pv /var/state/saslauthd# /usr/local/sbin/saslauthd -v /看看版本是不是2.1.22saslauthd 2.1.22authentication mechanisms: getpwent pam rimap shadow# /usr/local/sbin/saslauthd -a shadow pam -d /正常不会报错 启动并测试# /usr/local/sbin/saslauthd -a shadow pam # /usr/local/sbin/testsaslauthd -u root -p password /正常显示0: OK Success成功 (Password改成机器登录账号root 的密码,这里不是账号不是指的MySQL账号密码。否则会提示: 0: NO authentication failed,同时,注意这里测试不用开启authdaemond(authlib) 加入开机自启动Echo “/usr/local/sbin/saslauthd -a shadow pam” /etc/rc.local三安装postfixMake参数参考:安装源文件READ_FILES目录 # more README_FILES/MYSQL_README 安装过程: 安装开始 Shell tar zxvf postfix-2.5.6.tar.gz Shell cd postfix-2.5.6Shell make makefiles CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/include/sasl AUXLIBS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm -L/usr/local/lib -lsasl2注意:1. 如果没有Makefile文件,需要设置成make -f Makefile.init 2. /usr/local/mysql/include 如果此目录下还有mysql目录,应改成/usr/local/mysql/include/mysql 3. /usr/local/mysql/lib 如果此目录下还有mysql目录,应改成/usr/local/mysql/lib/mysql 如果没有意外,make这一步很快就执行完了,接下来就是安装,使用的命令是 Shell make install程序先自动执行一阵子,然后会进入交互状态,等待用户的输入,一般情况下,一路回车即可完成所有的安装。最后:生成别名二进制文件,这个步骤如果忽略,会造成postfix效率极低:shell /usr/bin/newaliases安装结束检验postfix是否支持sasl认证,如果输出为以下结果,则支持:shell /usr/sbin/postconf -a /postfix 安装没有指定目录cyrusdovecot shell /usr/sbin/postconf -m |grep mysql mysql /没有的话需重新编译postfix四安装imap Postfix只是实现邮件系统的smtp功能,pop3或imap则需要另外的软件来实现,这个软件就是courier-imap(当然也有别的软件可以选择)。安装开始Shell tar jxvf courier-imap-4.4.1.tar.bz2Shell cd courier-imap-4.4.1Shell./configure -prefix=/usr/local/imap -with-RedHat -disable-root-check -enable-unicode=utf-8,iso-8859-1,gb2312,gbk,gb18030 -with-trashquota -with-dirsync -with-mysql-libs=/usr/local/mysql/lib/mysql -with-mysql-includes=/usr/local/mysql/include/mysql -with-authmysql -with-authmysql=yes CPPFLAGS=-I/usr/local/authlib/include LDFLAGS=-L/usr/local/authlib/lib/courier-authlib COURIERAUTHCONFIG=/usr/local/authlib/bin/courierauthconfig 以上时间长一些Shell makeShell make installShell make install-configure安装结束配置:配置开始修改配置文件/usr/local/imap/etc/pop3d及/usr/local/imap/etc/imapd。把/usr/local/imap/etc/pop3d 文件的行“POP3DSTART=NO”改成“POP3DSTART=YES”,再依照这个形式把文件/usr/local/imap/etc/imapd的行“IMAPDSTART=NO”改成“IMAPDSTART=YES”即可。加入开机启动:cp courier-imap.sysvinit /etc/rc.d/init.d/imapd / courier-imap.sysvinit在安装源文件中chmod +x /etc/rc.d/init.d/imapdchkconfig -add imapdchkconfig -level 2345 imapd onService imapd start /输出Starting Courier-IMAP server: imap pop3检测:netstat -tnl|egrep 110|143五安装pcre 安装前先卸载系统自带的pcre-6.6-1.1Rpm e pcre自带的pcre RPM包可能与一些有冲突,可以先卸载掉Shell rpm e pcre如果提示libpcre.so.0与别的软件有依存关系。可以这样先备份一下libpcre.so.0这个文件,然后。Shell rpm -e pcre nodeps安装开始Shell tar zxvf pcre-7.8.tar.gzShell cd pcre-7.8Shell ./configureInstall prefix . : /usr/local C preprocessor . : gcc -E C compiler . : gcc C+ preprocessor . : g+ -E C+ compiler . : g+ Linker . : /usr/bin/ld C preprocessor flags . : C compiler flags . : -O2 C+ compiler flags . : -O2 Linker flags . : Extra libraries . : Build C+ library . : yes Enable UTF-8 support . : no Unicode properties . : no Newline char/sequence . : lf R matches only ANYCRLF . : no EBCDIC coding . : no Rebuild char tables . : no Use stack recursion . : yes POSIX mem threshold . : 10 Internal link size . : 2 Match limit . : 10000000 Match limit recursion . : MATCH_LIMIT Build shared libs . : yes Build static libs . : yes Link pcregrep with libz . : no Link pcregrep with libbz2 . : no Link pcretest with libreadline . : no Shell makeShell make install安装结束六安装maildrop 注意%源码安装的,将courierauthconfig 命令链接到/usr/bin里,假设装在:/usr/local/authlib/bin/courierauthconfig,则:ln -s /usr/local/authlib/bin/courierauthconfig /usr/bin/courierauthconfig这样编译出来的maildrop才
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年建筑施工安全管理信息化技术应用案例分析报告
- 现场出镜课件
- 江苏省宿迁市泗洪县2020-2021学年第一学期五年级科学期中试卷(含答案)
- 2026届甘肃省徽县职业中专伏镇校区化学高三第一学期期中经典试题含解析
- 四川省宜宾市2026届高一化学第一学期期中教学质量检测模拟试题含解析
- 现代汉语汉字简化课件
- 2025年注册测绘师考试专项训练试卷:测绘技术与法规
- 2025年春季初级经济师职业资格考试 经济基础知识冲刺押题试卷
- 测量员岗位职责
- 现代仓储管理知识培训内容
- 美团骑手2025年度骑手权益保障与法律法规遵守合同4篇
- 化工设备基础知识培训课件
- 商铺店面装修合同
- 食品企业总经理聘用模板
- 《纵隔病变的ct诊断》课件
- 2024年中国创新方法大赛考试题库(含答案)
- 《毒虫咬伤》课件
- 教学设备安装及售后服务方案
- (外研版3起)英语五年级上册单词字帖书写练习(手写体)高清打印版
- 2024年江苏省苏州市《保安员证》考试题库含答案(完整)
- 九江学院学位英语往年考题
评论
0/150
提交评论