CentOS下Extmail的搭建
CentOS5.3安装postfix+extmail邮件系统
CentOS5.3安装postfix+extmail邮件系统作者:哈密瓜bbs:Blog:系统所有环境都是采用yum安装改变系统语言关闭selinuxvi/etc/selinux/config去除IPV6修改网关vi/etc/sysconfig/network设IPvi/etc/sysconfig/network-scripts/ifcfg-eth0定义yum的非官方库关闭不需要的服务chkconfig mcstrans offchkconfig restorecond offchkconfig ip6tables offchkconfig iptables offchkconfig netfs off安装必需软件yum-y install ntsysv ntp telnet wget rsync vixie-cron logwatch perl-Unix-Syslog perl-Net-Daemon perl-PlRPC perl-DBI perl-DBD-MySQL freetype-demos freetype-devel libart_lgpl-devel libpng libpng-devel perl-Time-HiRes perl-Time-HiRes-Value perl-File-Tail perl-libwww-perl perl-HTML-Parser perl-HTML-Tagset perl-IO-stringy perl-IO-Multiplex perl-MailTools perl-TimeDate perl-Convert-ASN1perl-Convert-BinHex perl-MIME-tools perl-FCGI perl-GD rrdtool rrdtool-perl apr-devel apr-docs apr-util-devel apr-util-docs giflib libgdiplus mono-core dbus-sharp dbus-sharp-devel dbus-glib-devel dbh dbh-devel pcre pcre-devel httpd httpd-devel httpd-manual mysql mysql-devel mysql-server cyrus-sasl cyrus-sasl-plain bind bind-chroot amavisd-new clamd clamav clamav-db spamassassin bison bzip2-devel expect fam-devel flex freetype-devel gcc gcc-c++gdbm-devel libc-client-devel libjpeg-devel libmcrypt libmcrypt-devel libpng-devel libxslt-devel make rpm-build mod_ssl php php-gd php-mysql php-mbstring php-mcrypt phpmyadmin perl-Mon perl-Authen-PAM perl-Filter perl-Net_SSLeay.pm perl-Convert-BER perl-URI perl-XML-SAX perl-Crypt-Blowfish perl-Crypt-CBC perl-Date-Calc ncurses-devel net-snmp-devel libtool openssl openssl-devel openssl-perl pam-devel pkgconfig postgresql-devel zlib-devel启动mysql和apahcechkconfig httpd onchkconfig mysqld on升级包yum-y update重启系统reboot重新生成rpm包安装postfixcd/usr/local/srcwget /centos/5/os/SRPMS/postfix-2.3.3-2.src.rpmrpm-ivh postfix-2.3.3-2.src.rpmcd/usr/src/redhat/SPECSrpm-Uvh/usr/src/redhat/RPMS/i386/postfix-2.3.*新建邮件用户、组/usr/sbin/groupadd-g1000vgroup/usr/sbin/useradd-g1000-u1000-M-s/bin/false vuser安装courier-authlibcd/usr/local/srcwget /courier/courier-authlib-0.61.0.tar.bz2tar jxvf courier-authlib-0.61.0.tar.bz2ldconfigldconfig-vcp courier-authlib.sysvinit/etc/rc.d/init.d/courier-authlibchmod755/etc/rc.d/init.d/courier-authlibchkconfig--add courier-authlibchkconfig courier-authlib onchmod755/usr/local/courier-authlib/var/spool/authdaemonmv/usr/local/courier-authlib/etc/authlib/authmysqlrc/usr/local/courier-authlib/etc/authlib/authmysqlrc.bak设置smtpdservice courier-authlib startln-s/usr/local/courier-authlib/bin/courierauthconfig/usr/bin/courierauthconfig 安装maildorpcd/usr/local/srcwget /courier/maildrop-2.0.4.tar.bz2tar jvxf maildrop-2.0.4.tar.bz2安装courier-imapcd/usr/local/srcwget /courier/courier-imap-4.4.1.tar.bz2tar jvxf courier-imap-4.4.1.tar.bz2cp/usr/local/courier-imap/etc/imapd.dist/usr/local/courier-imap/etc/imapdcp/usr/local/courier-imap/etc/imapd-ssl.dist/usr/local/courier-imap/etc/imapd-ssl cp/usr/local/courier-imap/etc/pop3d.dist/usr/local/courier-imap/etc/pop3dcp/usr/local/courier-imap/etc/pop3d-ssl.dist/usr/local/courier-imap/etc/pop3d-ssl cp courier-imap.sysvinit/etc/rc.d/init.d/courier-imapdchmod755/etc/rc.d/init.d/courier-imapdchkconfig--add courier-imapd配置pop将extmail,extman,slock安装包上传安装extmailcd/usr/local/srcmkdir/var/www/extsuitetar-zxvf extmail-1.0.5.tar.gzcp-r extmail-1.0.5/var/www/extsuite/extmailcd/var/www/extsuite/extmailcp webmail.cf.default webmail.cfchown-R vuser:vgroup/var/www/extsuite/extmail/cgi/安装extmancd/usr/local/srctar-zxvf extman-0.2.5.tar.gzcp-r extman-0.2.5/var/www/extsuite/extman/chown-R vuser:vgroup/var/www/extsuite/extman/cgi/mkdir/var/www/extsuite/extman/tmpchown-R vuser:vgroup/var/www/extsuite/extman/tmpvi/var/www/extsuite/extman/docs/init.sql将改为你的域名比如导入数据库mysql-u root-p</var/www/extsuite/extman/docs/extmail.sqlmysql-u root-p</var/www/extsuite/extman/docs/init.sql生成extmail系统管理员的用户目录cd/var/www/extsuite/extman/tools./maildirmake.pl/home/domains//postmaster/Maildirchown-R vuser:vgroup/home/domainscp-r/var/www/extsuite/extman/addon/mailgraph_ext//usr/local/mailgraph_ext/ echo"/usr/local/mailgraph_ext/mailgraph-init start">>/etc/rc.d/rc.local echo"/usr/local/mailgraph_ext/qmonitor-init start">>/etc/rc.d/rc.local安装slockdcd/usr/local/srctar-zxvf slockd-0.2.tar.gzcp-r slockd-0.2/usr/local/slockdecho"/usr/local/slockd/slockd-init start">>/etc/rc.d/rc.local配置apache安装fastcgi模块cd/usr/local/srcwget /dist/mod_fastcgi-2.4.6.tar.gztar xfz mod_fastcgi-2.4.6.tar.gzcd mod_fastcgi-2.4.6ln-s../../usr/lib/httpd/build/etc/httpd/buildcp Makefile.AP2Makefilemake top_dir=/etc/httpd installecho"/var/www/extsuite/extmail/dispatch-init start">>/etc/rc.d/rc.local/var/www/extsuite/extmail/dispatch-init start配置phpmyadminln-s/usr/share/phpmyadmin/var/www/extsuite/phpmyadmin注:初始安装账户extmail,extman密码可能有点问题登陆不进去,这个可以用phpmyadmin来设置密码,默认phpmyadmin root密码为空$1$ITIH4eKD$s9C2wHpLQXOLkzY5U1jYL.=extmail而后再从extman后台去修改密码就可以了。
CentOS上安装配置Postfix + Extmail 邮件服务系统
RHEL/CentOS上安装配置Postfix + Extmail 邮件服务系统一、文档简介:本文以最简单方便的方法在centos 5.2 上安装全功能邮件系统,此文适合REDHAT所有系列,在文中,能用RPM 安装的,我们将采用rpm 安装,如果rpm没有的,我们将创建自己的rpm。
部分软件简介:1、AMP ---apache(web服务) 、mysql(数据库)、php(非必需) 的简称2、postfix --mta 邮件系统核心3、courier-authlib--一个为courier-imap,maildrop,sasl2 提供用户信息的后台进程序4、courier-imap --提供pop3,pop3s,imap,imaps 服务的程序5、amavisd-new --提供内容过滤6、clamav -- 著名的杀毒软件7、extmail --一个著名的webmail程序8、extman --与extmail集成的后台管理程序9、slockd --一个基于smtp阶段的反垃圾邮件程序10、vhmgr --由本文作者编写,用于管理apache,ftp,mysql 的虚拟主机管理程序。
安装环境:centos 5.2域名机器名:域名:二、安装系统安装系统时,选择“customize software selection”(自定义安装),在package group selection 对话框里选择:[*]base[*]devlopment libraries[*]development tools[*]editors[*]text-base internet其它不选择。
在setup agnet(或进入系统后运行setup) 里选择firewall configuration 将security level 与SELinux 改为disabled,目的是为了避免在安装调试时产生不必要的麻烦,在系统安装完成后,可以自己去调试安全部分,在这里将不作详细介绍。
extmail安装
在centos/redhat 上安装邮件系统(extmail)V0.1Author:fengyong 2008-08-31请尊重作者劳动,复制转载此文档时,请保留或添加文档来源。
版权:开源易有()一、简介:本文以最简单,最方便的方法在centos 5.2 上安装一个全功能的邮件系统,此文适合REDHAT所有系列,在文中,能用RPM 安装的,我们将采用rpm 安装,如果rpm没有的,我们将创建自己的rpm。
部分软件简介:1、AMP ---apache(web服务)、mysql(数据库)、php(非必需)的简称2、postfix --mta 邮件系统核心3、courier-authlib--一个为courier-imap,maildrop,sasl2 提供用户信息的后台进程序4、courier-imap --提供pop3,pop3s,imap,imaps 服务的程序5、amavisd-new --提供内容过滤6、clamav --著名的杀毒软件7、extmail --一个著名的webmail程序8、extman --与extmail集成的后台管理程序9、slockd --一个基于smtp阶段的反垃圾邮件程序10、vhmgr --由本文作者编写,用于管理apache,ftp,mysql 的虚拟主机管理程序。
安装环境:centos 5.2域名机器名:域名:二、安装系统安装系统时,选择“customize software selection”(自定义安装),在package group selection 对话框里选择:[*]base[*]devlopment libraries[*]development tools[*]editors[*]text-base internet其它不选择。
在setup agnet(或进入系统后运行setup) 里选择firewall configuration 将security level 与SELinux 改为disabled,目的是为了避免在安装调试时产生不必要的麻烦,在系统安装完成后,可以自己去调试安全部分,在这里将不作详细介绍。
Cent OS 5.5下postfix+extmail+mysql邮件服务器
Cent OS 5.5 下Postfix + extmail + mysql邮件系统安装与配置一.安装mysql数据库首先卸载系统自带的mysql# rpm -e mysql --nodeps# tar zxvf BAK/mysql-5.1.43.tar.gz# cd mysql-5.1.43/# ./configure --prefix=/usr/local/mysql --enable-thread-safe-client --enable-shared --enable-stati c --enable-local-infile --with-extra-charsets=all --with-pthread --with-unix-socket-path=/tmp/my sql.socket --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --with-big-tables --wit h-embedded-server --with-embedded-privilege-control --enable-assembler# make -j 4# make install# useradd mysql -s /sbin/nologin -d /dev/null# cp support-files/f /etc/f# vi /etc/f在[mysqld]添加: bind-address = localhost# cp support-files/mysql.server /etc/init.d/mysqld# chkconfig --add mysqld# chkconfig --level 2345 mysqld on# chmod 755 /etc/init.d/mysqld# chown -R mysql.mysql /usr/local/mysql/# /usr/local/mysql/bin/mysql_install_db --user=mysql# service mysqld start# /usr/local/mysql/bin/mysqladmin -u root password 'izptecmail'# mysql -uroot -p# echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf# ldconfig# ldconfig -v二.安装apache web服务(需要编译suexec)# tar zxvf BAK/httpd-2.2.14.tar.gz# cd httpd-2.2.14/# ./configure --prefix=/usr/local/apache --enable-modules=all --enable-mods-shared=all --enabl e-cache --enable-disk-cache --enable-mem-cache --enable-substitute --enable-expires --enable-headers --enable-proxy --enable-proxy-http --enable-ssl --with-ssl=/usr/local/ssl --enable-http --enable-vhost-alias --with-zlib --enable-suexec --with-suexec-caller=vmail --with-suexec-docroot =/var/www/html/ --enable-rewrite --enable-so --with-mpm=worker# mkdir -p /var/www/html/# groupadd -g 1000 vmail# useradd -g vmail -u 1000 -s /sbin/nologin -M vmail# make# make install# echo "/usr/local/apache/bin/apachectl start" >> /etc/rc.local# vi /usr/local/apache/conf/httpd.conf修改apache配置文件;# /usr/local/apache/bin/apachectl start三.安装php首先安装php程序所需要的依赖包# yum install freetype* glib* jpegsrc* libart_lgpl* libpng* libxml* libjpeg* zlib* libmcrypt* gd*# tar zxvf BAK/php-5.2.6.tar.gz# cd php-5.2.6/# ./configure --prefix=/usr/local/php --enable-exif --with-gd --enable-gd-native-ttf --enable-gd-ji s-conv --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-mbstring --with-m ysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.socket --enable-embedded-mysqli --enabl e-shmop --enable-soap --enable-sockets --enable-sqlite-utf8 --enable-sysvmsg --enable-sysvse m --enable-sysvshm --enable-wddx --enable-zip --with-pcre-dir --enable-maintainer-zts --enable-zend-multibyte --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php/et c/ --with-mysqli=/usr/local/mysql/bin/mysql_config --with-gettext --with-mcrypt# make# make install# cp php.ini-dist /usr/local/php/etc/php.ini# vi /usr/local/php/etc/php.ini---------------------------------------;include_path = ".:/php/includes" 改为include_path = ".:/usr/local/php/lib/php"---------------------------------------四.安装courier-authlib库(验证登陆)# tar jxvf BAK/courier-authlib-0.63.0.tar.bz2# cd courier-authlib-0.63.0/# CFLAGS="-march=i686 -O2 -fexpensive-optimizations" CXXFLAGS="-march=i686 -O2 -fexpe nsive-optimizations"# ./configure --prefix=/usr/local/courier-authlib --sysconfdir=/etc --without-authpam --without-a uthldap --without-authpwd --without-authshadow --without-authvchkpw --without-authpgsql --wi th-authmysql --with-mysql-libs=/usr/local/mysql/lib/mysql --with-mysql-includes=/usr/local/mys ql/include/mysql --with-redhat --with-authmysqlrc=/etc/authmysqlrc --with-authdaemonrc=/etc/ authdaemonrc# make# make install# chmod 755 /usr/local/courier-authlib/var/spool/authdaemon# cp /etc/authdaemonrc.dist /etc/authdaemonrc# vi /etc/authdaemonrc修改为以下配置:authmodulelist="authmysql"authmodulelistorig="authmysql"daemons=15authdaemonvar=/usr/local/courier-authlib/var/spool/authdaemonDEBUG_LOGIN=0DEFAULTOPTIONS=""LOGGEROPTS=""--------------------------------------------------------------# cp /etc/authmysqlrc.dist /etc/authmysqlrc# vi /etc/authmysqlrc修改为以下配置:MYSQL_SERVER localhostMYSQL_USERNAME rootMYSQL_PASSWORD izptecmailMYSQL_SOCKET /tmp/mysql.socketMYSQL_PORT 3306MYSQL_OPT 0MYSQL_DATABASE extmailMYSQL_USER_TABLE mailboxMYSQL_CRYPT_PWFIELD passwordMYSQL_UID_FIELD 1000MYSQL_GID_FIELD 1000MYSQL_LOGIN_FIELD usernameMYSQL_HOME_FIELD homedirMYSQL_NAME_FIELD nameMYSQL_MAILDIR_FIELD maildirMYSQL_QUOTA_FIELD quotaMYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber,\CONCAT('/home/domains/',homedir), \CONCAT('/home/domains/',maildir), \quota, \name \FROM mailbox \WHERE username = '$(local_part)@$(domain)'--------------------------------------------------------------# cp courier-authlib.sysvinit /etc/init.d/courier-authlib# chmod 755 /etc/init.d/courier-authlib# chkconfig --add courier-authlib# chkconfig --level 2345 courier-authlib on# pstree | grep authdaemond显示init-+-courierlogger---authdaemond---15*[authdaemond] 表示安装成功;五.安装courier-imap (提供pop3服务)# tar jxvf BAK/courier-imap-4.0.3.tar.bz2# cd courier-imap-4.0.3/# ./configure --prefix=/usr/local/courier-imap --with-redhat --enable-unicode --disable-root-chec k --with-trashquota --without-ipv6 CPPFLAGS='-I/usr/include/openssl -I/usr/local/courier-authlib/i nclude' LDFLAGS='-L/usr/local/courier-authlib/lib/courier-authlib' COURIERAUTHCONFIG='/usr/lo cal/courier-authlib/bin/courierauthconfig'# make# make install# cp /usr/local/courier-imap/etc/imapd.dist /usr/local/courier-imap/etc/imapd# cp /usr/local/courier-imap/etc/imapd-ssl.dist /usr/local/courier-imap/etc/imapd-ssl# cp /usr/local/courier-imap/etc/pop3d.dist /usr/local/courier-imap/etc/pop3d# cp /usr/local/courier-imap/etc/pop3d-ssl.dist /usr/local/courier-imap/etc/pop3d-ssl# vi /usr/local/courier-imap/etc/pop3d修改POP3DSTART字段,改为YES;如果需要提供imapd服务,编译/usr/local/courier-imap/etc/imoa pd的IMAPDSTART字段;# mkdir -p /home/domains/# chown -R vmail.vmail /home/domains/# chmod 755 /etc/init.d/courier-imapd# chkconfig --add courier-imapd# chkconfig --level 2345 courier-imapd on# netstat -tupln查看110端口是否开启,如开启则pop3服务正常;六.安装Cyrus-sasl (认证)# tar jxvf BAK/cyrus-sasl-2.1.22.tar.bz2# cd cyrus-sasl-2.1.22/# ./configure --prefix=/usr/local/sasl2 --disable-gssapi --disable-anon --disable-sample --disable-digest --enable-plain --enable-login --enable-sql --with-mysql=/usr/local/mysql --with-mysql-incl udes=/usr/local/mysql/include/mysql --with-mysql-libs=/usr/local/mysql/lib/mysql--with-authdae mond=/usr/local/courier-authlib/var/spool/authdaemon/socket# make# make install# chkconfig --level 2345 saslauthd off# cd /usr/lib******# mv libsasl2.a libsasl2.a.OFF# mv libsasl2.so.2.0.22 libsasl2.so.2.0.22.OFF# mv sasl2 sasl2.OFF# rm libsasl2.so libsasl2.so.2# ln -sv /usr/local/sasl2/lib/* .******进入/usr/lib64 同上修改sasl库链接关系;进入/usr/local/lib/库链接关系;同时链接头文件到/usr/loca/include;# ln -sv /usr/local/sasl2/include/sasl /usr/local/include/sasl# mkdir -pv /var/state/saslauthd# /usr/local/sasl2/sbin/saslauthd -a shadow pam -d输出:saslauthd[20634] :main : num_procs : 5saslauthd[20634] :main : mech_option: NULLsaslauthd[20634] :main : run_path : /var/state/saslauthdsaslauthd[20634] :main : auth_mech : shadowsaslauthd[20634] :ipc_init : using accept lock file: /var/state/saslauthd/mux.accept saslauthd[20634] :detach_tty : master pid is: 0saslauthd[20634] :ipc_init : listening on socket: /var/state/saslauthd/muxsaslauthd[20634] :main : using process modelsaslauthd[20635] :get_accept_lock : acquired accept locksaslauthd[20634] :have_baby : forked child: 20635saslauthd[20634] :have_baby : forked child: 20636saslauthd[20634] :have_baby : forked child: 20637saslauthd[20634] :have_baby : forked child: 20638表示正常,Ctrl+c 结束;# /usr/local/sasl2/sbin/saslauthd -a shadow pam# pstree | grep saslauthd显示|-saslauthd---4*[saslauthd],表示程序启动;# /usr/local/sasl2/sbin/testsaslauthd -u root -p (root 用户密码)显示0: OK "Success." 测试成功# echo “/usr/local/sasl2/lib” >> /etc/ld.so.conf# echo “/usr/local/sasl2/lib/sasl2” >> /etc/ld.so.conf# ldconfig -v# echo “/usr/local/sasl2/sbin/saslauthd -a shadow pam” >> /etc/rc.local# vi /usr/local/sasl2/lib/sasl2/smtpd.conf------------------------------------------------------------pwcheck_method: authdaemondlog_level: 3mech_list: PLAIN LOGINauthdaemond_path: /usr/local/courier-authlib/var/spool/authdaemon/socket------------------------------------------------------------# vi /etc/init.d/saslauthd------------------------------------------------------------修改为:SOCKETDIR=/var/state/saslauthdMECH="shadow pam"注释:#if test -x ${path}.${MECH} ; then# path=/usr/sbin/saslauthd.$MECH#fi------------------------------------------------------------# vi /etc/sysconfig/saslauthd------------------------------------------------------------SOCKETDIR=/var/state/saslauthdMECH="shadow pam"------------------------------------------------------------# chkconfig --level 2345 saslauthd on七.安装配置postfix# rpm -e sendmail --nodeps# tar zxvf BAK/postfix-2.6.5.tar.gz# cd postfix-2.6.5/# groupadd postdrop# useradd -M -s /sbin/nologin postfix# make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/sasl2/include/sasl -DUSE_TLS -I/usr/include/openssl' 'AUXLIBS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm -L/usr/local/sasl2/lib -lsasl2 -L/usr/local/ssl/lib -lss l -lcrypto'# make# make install# /usr/bin/newaliases# vi /etc/postfix/main.cf------------------------------------------------------------#####################BASE#########################queue_directory = /var/spool/postfixcommand_directory = /usr/sbindaemon_directory = /usr/libexec/postfixdata_directory = /var/lib/postfixmail_owner = postfixunknown_local_recipient_reject_code = 550debug_peer_level = 2debugger_command =PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/binddd $daemon_directory/$process_name $process_id & sleep 5sendmail_path = /usr/sbin/sendmailnewaliases_path = /usr/bin/newaliasesmailq_path = /usr/bin/mailqsetgid_group = postdrophtml_directory = nomanpage_directory = /usr/local/mansample_directory = /etc/postfixreadme_directory = nomyhostname = mydomain = myorigin = $mydomaininet_interfaces = allmynetworks = 127.0.0.0/8------------------------------------------------------------测试postfix 发信功能# telnet localhost 25Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.220 ESMTP Postfixhelo 250 mail from:root@250 2.1.0 Okrcpt to:hanyongming@250 2.1.5 Okdata354 End data with <CR><LF>.<CR><LF>from:root Test <root@>to:hanyongming@subject:Mail Test.Mail Test Date 2011-03-13..250 2.0.0 Ok: queued as DEF0D330054quit221 2.0.0 ByeConnection closed by foreign host.# /usr/sbin/postconf -a显示cyrusdovecot则表示postfix支持cyrus-sasl认证# vi /etc/postfix/main.cf------------------------------------------------------------添加以下内容:#####################CYRUS-SASL######################### broken_sasl_auth_clients = yessmtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_invalid_hostname,reject_non_fqdn_hostname,reject_unknown_sender_domain,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unknown_recipient_domain,reject_unauth_pipelining,reject_unauth_destinationsmtpd_sasl_auth_enable = yessmtpd_sasl_authenticated_header = yessmtpd_sasl_local_domain = $myhostnamesmtpd_sasl_security_options = noanonymoussmtpd_sasl_path = smtpdsmtpd_banner = Welcome to our $myhostname ESMTP,Warning: Version not Available! --------------------------------------------------------------------# /usr/sbin/postfix reload验证认证是否生效# telnet localhost 25显示以下内容:Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.220 Welcome to our ESMTP,Warning: Version not Available!ehlo 250-PIPELINING250-SIZE 10240000250-VRFY250-ETRN250-AUTH LOGIN PLAIN250-AUTH=LOGIN PLAIN250-ENHANCEDSTATUSCODES250-8BITMIME250 DSN^]telnet> qConnection closed.表示postfix验证生效;# vi /etc/postfix/main.cf---------------------------------------------------------------------添加虚拟域配置文件:#####################Virtual Mailbox Settings##################### virtual_mailbox_base = /home/doaminsvirtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cfvirtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf#virtual_alias_domains =virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cfvirtual_minimum_uid = 1000virtual_uid_maps = static:1000virtual_gid_maps = static:1000virtual_transport = maildropmaildrop_destination_recipient_limit = 1maildrop_destination_concurrency_limit = 1#####################QUOTA Settings######################## message_size_limit = 14336000virtual_mailbox_limit = 20971520virtual_create_maildirsize = yesvirtual_mailbox_extended = yesvirtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_limit_maps.cfvirtual_mailbox_limit_override = yesvirtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, pl ease Tidy your mailbox and try again later.virtual_overquota_bounce = yes----------------------------------------------------------------------八.安装extmail extman# tar zxvf BAK/extmail-1.2.tar.gz# cp -a extmail-1.2 /var/www/html/extmail# tar zxvf BAK/extman-1.1.tar.gz# cp -a extman-1.1 /var/www/html/extman# cd /var/www/html# cp extmail/webmail.cf.default extmail/webmail.cf# vi extmail/webmail.cf----------------------------------------------------------------------修改extmail的配置项:SYS_CONFIG = /var/www/html/extmail/SYS_LANGDIR = /var/www/html/extmail/langSYS_TEMPLDIR = /var/www/html/extmail/htmlSYS_USER_LANG = zh_CNSYS_MYSQL_USER = rootSYS_MYSQL_PASS = izptecmailSYS_MYSQL_DB = extmailSYS_MYSQL_HOST = localhostSYS_MYSQL_SOCKET = /tmp/mysql.socketSYS_AUTHLIB_SOCKET = /usr/local/courier-authlib/var/spool/authdaemon/socket SYS_G_ABOOK_FILE_PATH = /var/www/html/extmail/globabook.cf-----------------------------------------------------------------------# cp extman/webman.cf.default extman/webman.cf# vi extman/webman.cf-----------------------------------------------------------------------修改extman的配置项:SYS_CONFIG = /var/www/html/extman/SYS_LANGDIR = /var/www/html/extman/langSYS_TEMPLDIR = /var/www/html/extman/htmlSYS_MYSQL_USER = rootSYS_MYSQL_PASS = izptecmailSYS_MYSQL_DB = extmailSYS_MYSQL_HOST = localhostSYS_MYSQL_SOCKET = /tmp/mysql.socket安装数据库链接的perl模块:# tar zxvf BAK/Unix-Syslog-1.1.tar.gz# cd Unix-Syslog-1.1/# make# make install# tar zxvf BAK/DBI-1.604.tar.gz# cd DBI-1.604/# perl Makefile.PL# make# make install# tar zxvf BAK/DBD-mysql-4.006.tar.gz# cd DBD-mysql-4.006/# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config# tar zxvf BAK/GD-2.45.tar.gz# cd GD-2.45/# perl Makefile.PL# make# make install# cd /var/www/html/extman/docs/# /usr/local/mysql/bin/mysql -uroot -p <extmail.sql# /usr/local/mysql/bin/mysql -uroot -p <init.sql# cp mysql_virtual_alias_maps.cf /etc/postfix/# cp mysql_virtual_domains_maps.cf /etc/postfix/# cp mysql_virtual_limit_maps.cf /etc/postfix/# cp mysql_virtual_mailbox_maps.cf /etc/postfix/修改虚拟域配置文件内链接mysql数据库的用户名,密码;# vi /usr/local/apache/conf/httpd.conf----------------------------------------------------------修改apache配置文件User vmailGroup vmail<Directory />Options FollowSymLinksAllowOverride NoneOrder deny,allowAllow from all</Directory><VirtualHost *:80>ServerName DocumentRoot /var/www/html/extmail/html/ScriptAlias /extmail/cgi/ /var/www/html/extmail/cgi/Alias /extmail /var/www/html/extmail/html/ScriptAlias /extman/cgi/ /var/www/html/extman/cgi/Alias /extman /var/www/html/extman/html/SuexecUserGroup vmail vmail</VirtualHost>----------------------------------------------------------# chown -R vmail.vmail /var/www/html# mkdir -pv /tmp/extman# chown -R vmail.vmail /tmp/extman/# /usr/local/apache/bin/apachectl stop# /usr/local/apache/bin/apachectl startweb方式访问登录邮箱管理登录名:root@ 密码:extmail*123*新建域,新建邮箱账户;九.安装maildrop邮件投递# tar zxvf BAK/pcre-8.10.tar.gz# cd pcre-8.10/# ./configure --enable-utf8 --enable-unicode-properties --enable-newline-is-any --enable-pcregr ep-libz --enable-pcregrep-libbz2# make# make install# tar jxvf BAK/maildrop-2.0.4.tar.bz2# cd maildrop-2.0.4/# ln -sv /usr/local/courier-authlib/bin/courierauthconfig /usr/bin# ln -sv /usr/local/courier-authlib/include/* /usr/include# ./configure --enable-sendmail=/usr/sbin/sendmail --enable-trusted-users='root vmail' --enabl e-syslog=1 --enable-maildirquota --enable-maildrop-uid=1000 --enable-maildrop-gid=1000 --wi th-trashquota --with-dirsync# make# make install# vi /etc/maildroprc---------------------------------------------------------添加以下内容:logfile "/var/log/maildrop.log"---------------------------------------------------------# touch /var/log/maildrop.log# chown -R vmail.vmail /var/log/maildrop.log# vi /etc/postfix/master.cf---------------------------------------------------------添加以下内容:maildrop unix - n n - - pipeflags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}---------------------------------------------------------# service courier-authlib restart# service courier-imapd restart# service saslauthd restart# /usr/sbin/postfix reload# /usr/local/apache/bin/apachectl restart建立邮箱收发邮件测试!。
Centos5.4上extmail详细的安装步骤
# extmail config here
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
setsebool mysqld_disable_trans=1
操作完毕后,重新启动mysql及apache,并将如下命令加入/etc/rc.d/rc.local以便服务器启动后能自动生效:
/usr/sbin/setsebool httpd_disable_trans=1
/usr/sbin/setsebool mysqld_disable_trans=1
/etc/init.d/mysqld restart
/etc/init.d/httpd restart
下载ExtMail Solution软件包
基本假定
整个系统的安装全过程都要求以root身份执行,如果机器没有访问外部网络的能力,则事先下载好ExtMail Solution软件包,并用ftp以sysadmin帐户的身份,上载到服务器。
第一个需要安装openssl097a-0.9.7a-9.el5_4.2.i386.rpm
yum install openssl097a
我们从网上下载这个软件包,然后安装
rpm –ivh openssl097a-0.9.7a-9.el5_4.2.i386.rpm
安装courier-authlib-mysql,需要安装mysqlclient14-4.1.22-1.el4s1.1.i386.rpm
CENTOS5下配置mail服务器
CENTOS5下配置mail服务器[11月9日最后修正]2007-10-28 16:17CENTOS5,Fedora8下配置mail服务器在Fedora8下比CENTOS5下配置更顺利[QQ:48238398][抄来抄去,呵]说明:apache,php,mysql,为centos5自带的,就是说我装系统的时候,就选择上了:cyrus-sasl,postfix,courier-authlib,maildrop ,courier-imap 是通过源码编译的,写这个的目的就是,复制内容,照着一步步的做下去就能配置出来一个成功的可视化管理的mail服务器如果是rpm方式按装的msqyl,include及lib目录的位置/usr/include/mysql /usr/lib/mysql如果是编译的,位于你指定的目录下,如果编译mysql指定目录为/usr/local/mysql则位于/usr/local/mysql/include/mysql /usr/local/mysql/lib/mysql开始:::如果你的apache,php,mysqsl是centos5自带的,就是说不是你自己编译的,以下的代码可以复制粘贴直接用=cyrus-sasl=按装配置cyrus-sasl=cyrus-sasl=下载地址:ftp:///pub/cyrus-mail/=cryus-sasl=文件名:cyrus-sasl-2.1.22.tar.gz#rpm -qa|grep cyrus-sasl把查找出来的包都删除了#rpm -e --nodeps 包名#rm -rf /usr/lib/sasl#rm -rf /usr/lib/sasl2=cyrus-sasl=进入解压目录编译:#./configure \--enable-plain \--enable-cram \--enable-digest \--enable-login \--enable-sql \--disable-anon \--disable-ntlm \--disable-gssapi \--disable-krb4 \--disable-otp \--disable-srp \--disable-srp-setpass \-with-authdaemond=/usr/local/courier-authlib/var/spool/authdaemon/socket \--with-mysql#make#make install#ln -s /usr/local/lib/sasl2 /usr/lib/sasl2#vi /etc/ld.so.conf/usr/local/lib //增加该行# ldconfig# vi /usr/local/lib/sasl2/smtpd.conf加入以下四行pwcheck_method: authdaemondlog_level: 3mech_list: PLAIN LOGINauthdaemond_path:/usr/local/courier-authlib/var/spool/authdaemon/socket==postfix==按装配置postfix==postfix==下载地址:/download.html==postfix==文件名:postfix-2.4.6.tar.gz==postfix==进入解压目录编译:# yum install db*-devel*# make tidy# groupadd postfix -g 54321 //如果原来系统中有该用户则不需要再建# groupadd postdrop# useradd -s /bin/false -u 54321 -g postfix -G postdrop postfix==postfix==备注,我的mysql是rpm包装的,如果是你自己源码编译的,下边mysql路径会有变化#make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_CYRUS_SASL-DUSE_SASL_AUTH -I/usr/local/include/sasl' 'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lm -lz -L/usr/local/lib -lsasl2'#make#make install#mv /etc/aliases /etc/aliases.old#ln -s /etc/postfix/aliases /etc/aliases#echo 'root: admin@'>>/etc/postfix/aliases#/usr/bin/newaliases#postconf -n > /etc/postfix/main2.cf#mv /etc/postfix/main.cf /etc/postfix/main.cf.old#mv /etc/postfix/main2.cf /etc/postfix/main.cf# vi /etc/postfix/main.cf==postfix==main.cf加入以下内容# hostnamemynetworks = 127.0.0.1myhostname = mydomain = myorigin = $mydomainmydestination = $mynetworks $myhostname# bannermail_name = Postfix - by smtpd_banner = $myhostname ESMTP $mail_name# response immediatelysmtpd_error_sleep_time = 0sunknown_local_recipient_reject_code = 450# extmail config herevirtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cfvirtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cfvirtual_transport = maildrop:==postfix==main.cf内容结束==postfix==以下几个文件可以通过cp /var/www/html/extsuite/extman/docs/mysql_*/etc/postfix/得到==postfix==编辑mysql_virtual_alias_maps.cfvi /etc/postfix/mysql_virtual_alias_maps.cf内容如下:user = extmailpassword = extmailhosts = localhostdbname = extmailtable = aliasselect_field = gotowhere_field = address==postfix==编辑mysql_virtual_domains_maps.cfvi /etc/postfix/mysql_virtual_domains_maps.cf内容如下:user = extmailpassword = extmailhosts = localhostdbname = extmailtable = domainselect_field = descriptionwhere_field = domain#additional_conditions = and backupmx ='0' and active ='1'==postfix==编辑mysql_virtual_mailbox_maps.cfvi /etc/postfix/mysql_virtual_mailbox_maps.cf内容如下:。
ExtMail Server Config Notes 邮件服务器搭建配置笔记
ExtMail Server Config Notes 邮件服务器搭建配置笔记Author:王伯承Time:2011-3-14环境:以EMOS 1.5 直接裸机安装配置重点:1.网卡配置(注意,远程修改网卡配置可能导致无法远程,慎重!)网卡配置文件: /etc/sysconfig/network-script/ifcfg-eth0网关配置文件:/etc/sysconfig/networkDNS配置文件:/etc/resolv.conf修改配置后重启网卡service network restart2.防火墙配置关闭本机防火墙chkconfig iptables off开启防火墙时开放端口vi /etc/sysconfig/iptables添加规则例子:-A RH-Firewall-l-INPUT -m state --static NEW -m tcp -p tcp --dport 80 -j ACCEPT -A RH-Firewall-l-INPUT -m state --static NEW -m tcp -p tcp --dport [需开放的端口] -j ACCEPT 查看状态/etc/init.d/iptables status3.Ssh配置更改ssh端口(若修改,必须考虑本机防火墙是否开放该端口)vi /etc/ssh/sshd_configPort 12345cat /var/run/sshd.pidkill -HUP [sshd_pid]4.邮件过滤配置设置白名单配置文件:/usr/local/slockd/config/whitelist修改配置文件后重启:/usr/local/slockd/slockd-init restart5.Extman使用/extman/cgi/index.cgiweb界面自己探索Slockd 和dspam 不一定要关闭,关闭可能无法收发邮件。
搭建邮件服务器面向公网,必须需要在DNS解析时增加相应的用于邮件服务的DNS记录,具体可向DNS服务提供商咨询。
Linux(Centos)系统搭建邮件服务器
8、设置分区,这里我们按照默认即可,点击“下一步”,如下图:
9、直接点击“下一步”,如下图:
Байду номын сангаас10、直接点击“下一步”,如下图:
11、选择默认的GRUB引导装载程序,并点击“下一步”,如下图:
12、开始安装系统,如下图:
13、出现安装完成界面,点击“重新引导”重启服务器
20、指定用户邮件存储目录,并选择“Next”确认,如下图:
21、设置Apache监控端口,按照默认设置即可。并选择“Next”确认,如下图:
22、设置Webmail运行端口,按照默认设置即可(默认为80端口,如果想使用其它端口请更改)。并选择“Next”确认,如下图:
23、开始进行安装,如下图:
24、弹出“安装完成”窗口,点击“OK”按钮。如下图:
25、建议重启下服务器,输入reboot命令,如下图:
26、登录到系统管理后台,导入授权文件。
登录地址:/webmail/admin/ (请更换成自己的域名)
帐号:system(U-Mail系统方面设置),初始密码为123456
备注:
域管理后台:/webmail/admin/帐号:admin(管理单个域),初始密码为123456
14、重启后,输入root帐号和密码登录系统,如下图:
15、出现U-Mail安装向导,输入邮箱域名后,选择“Next”确认,如下图:
注:如果您的邮件服务器主机是,那么域名输入(请更改成自己的域名)。
16、输入MySQL数据的root帐号密码(请修改成自己需要的密码),输入后选择“Next”确认,如下图:
注:请将替换成自己的域名,如果web使用的不是默认的80端口,则需要在.com后加“:端口号”(不包括引号)
使用CentOS搭建邮件服务器
使用CentOS搭建邮件服务器一、系统环境使用CentOS-6.4-x86_64-minimal.iso镜像文件安装系统做DNS服务器和邮件服务器,IP 地址分别设置为192.168.1.100和192.168.1.21(也可在一台机器上做)vi /etc/sysconfig/network-scripts/ifcfg-eth0修改为以下字段:DEVICE=eth0ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.1.21NETMASK=255.255.255.0GATEWAY=192.168.1.254DNS1=192.168.1.100二、安装和配置DNS服务1)在192.168.1.100上安装bindyum -y install bind2)修改/etc/named.confvi /etc/named.conf将以下三行修改掉,如果不修改的话,客户端不能通过其解析域名listen-on port 53 { 127.0.0.1; };listen-on-v6 port 53 { ::1; };allow-query { localhost; };修改成以下内容,保存退出listen-on port 53 { any; };listen-on-v6 port 53 { any; };allow-query { any; };3)修改/etc/named.rfc1912.zonesvi /etc/named.rfc1912.zones添加以下内容,解析域名时,访问.zone文件zone "" IN {type master;file ".zone";allow-update { none; };};4)创建.zone文件vi /var/named/.zone添加以下内容,保存退出(当发送到XXX@的邮件转发到服务器上)$TTL 86400@ IN SOA . . (43 ; Serial(d.adams)3H ; Refresh15M ; Retry1w ; Expire1D ) ; Minimum@ IN NS localhost.. IN MX 10 .pop IN A 192.168.1.21为了防止权限问题,最好设置该文件所属组为namedchown :named /var/named/.zone5)启用DNS服务service named start如果出现出现Generating /etc/rndc.key错误,解决方法就是运行下面的命令导入key rndc-confgen -r /dev/urandom -a6)修改防火墙设置vi /etc/sysconfig/iptables增加两行,允许53端口和953端口通过防火墙-A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT-A INPUT -m state --state NEW -m udp -p udp --dport 953 -j ACCEPT重启防火墙服务service iptables restart三、安装和配置相关邮件服务7)在192.168.1.21上安装安装相关邮件服务yum -y install postfix dovecot mailx8)配置postfix服务vi /etc/postfix/main.cf修改为如下内容(计算机名和域名根据情况修改)queue_directory = /var/spool/postfixcommand_directory = /usr/sbindaemon_directory = /usr/libexec/postfixdata_directory = /var/lib/postfixmail_owner = postfixmyhostname = mydomain = myorigin = $myhostnamemyorigin = $mydomaininet_interfaces = allinet_protocols = allmydestination = $myhostname, localhost.$mydomain, localhost, $mydomainunknown_local_recipient_reject_code = 550mynetworks = 0.0.0.0/0alias_maps = hash:/etc/aliasesalias_database = hash:/etc/aliaseshome_mailbox = Maildir/debug_peer_level = 2debugger_command =PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/binddd $daemon_directory/$process_name $process_id & sleep 5sendmail_path = /usr/sbin/sendmail.postfixnewaliases_path = /usr/bin/newaliases.postfixmailq_path = /usr/bin/mailq.postfixsetgid_group = postdrophtml_directory = nomanpage_directory = /usr/share/mansample_directory = /usr/share/doc/postfix-2.6.6/samplesreadme_directory = /usr/share/doc/postfix-2.6.6/README_FILESsmtpd_sasl_type = dovecotsmtpd_sasl_path = private/authsmtpd_sasl_auth_enable = yessmtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, permitbroken_sasl_auth_clients = yesservice postfix restartchkconfig postfix on9)配置dovecot服务vi /etc/dovecot/dovecot.conf将以下两行的#去掉,修改为如下内容protocols = imap pop3listen = *, ::vi /etc/dovecot/conf.d/10-auth.conf配置认证方式,将以下两行修改为如下内容disable_plaintext_auth = noauth_mechanisms = plain loginvi /etc/dovecot/conf.d/10-mail.conf配置文件夹位置,将以下一行的#去掉,修改为如下内容mail_location = maildir:~/Maildirvi /etc/dovecot/conf.d/10-master.conf配置认证,将以下两行的#去掉,增加两行,修改为如下内容 unix_listener /var/spool/postfix/private/auth {mode = 0666user = postfixgroup = postfix}vi /etc/dovecot/conf.d/20-pop3.conf配置pop3,将以下两行的#去掉,修改为如下内容pop3_uidl_format = %08Xu%08Xvpop3_client_workarounds = outlook-no-nuls oe-ns-eohservice dovecot restartchkconfig dovecot on10)新增测试用户useradd adminuseradd aaaecho 123456 | passwd --stdin adminecho 123456 | passwd --stdin aaa11)配置防火墙iptables -Fservice iptables save四、测试相关服务12)通过Foxmail测试用户是否能够正常收发邮件。
Exchange邮件服务器的搭建
Exchange邮件服务器的搭建1.配置所需要的虚拟机环境1.1安装两台虚拟的邮件服务器NODE A 和NODE B1.2给新创建的虚拟主机添加网卡(包括NODE A和NODE B)1.3两张网卡都选择桥接模式1.4为两台服务器添加仲裁硬盘和共享硬盘,分别为QDISK(1GB)和SHAREDISK(5GB,类型为SCSI)------以下为NODE A上创建的硬盘------1.5选择创建新的虚拟磁盘1.6分配大小为5GB1.7给分配的磁盘命名为SHAREDISK1.8另一个磁盘的创建同上,但命名为QDISK1.9创建磁盘完成后,界面如下,按确定完成设置------以下是NODE B上磁盘的创建---- 1.10选择使用现有的虚拟磁盘1.11选择NODE A所创建的此磁盘所在的路径(SHAREDISK和QDISK)1.12 NODE B上磁盘创建完成后的界面,点击确定完成设置1.13在NODE B机器上,选中SHAREDISK磁盘,点击”高级”,改变虚拟设备的节点为SCSI 1:11.14选中QDISK磁盘,点击”高级”,改变虚拟设备的节点为SCSI 1:21.15找到NODE A NODE B的路径,用记事本打开.vmx文件,进行修改,在尾部加入三行代码如下:“disk.locking="FALSE"scsi1:1.sharkBus="Virtual"scsi1:2.sharkBus="Virtual" ”-----------------------------NODE A --------------------------------------------------------------NODE B----------------------------------------至此,所需的硬件环境基本配置完成,启动虚拟机,进行ip和磁盘的分配设置。
使用centos 6.5 安装exim
四、安装exim包
停止postfix服务,并禁止其开机自动启动
# service postfix stop
# chkconfig postfix off
检查依赖的安装包
yum -y install autoconf automake libtool
yum install gcc gcc-c++ zlib-devel openssl-devel
1、先下载必要软件 apr apr-util httpd pcre
wget /apr/apr-1.5.2.tar.gz
打开网址:/fedora-epel/6/x86_64/,使用 Ctrl+F 搜索关键词“epel-release”找到当前最新的扩展发现最新版本为:epel-release-6-8.noarch.rpm,然后执行命令:
rpm -ivh /fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
make
make install
3、安装httpd
tar zxvf httpd-2.4.12.tar.gz
cd httpd-2.4.12
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-so --enable-rewrite
chkconfig --add httpd
执行下面的命令检查Apache服务是否已经生效:
chkconfig --list httpd
ExtMail邮件系统搭建
ExtMail邮件系统搭建/2010_02_641.html此套系统的主要特性说明:本文内容节选EXTm ail中的文档,最后关于防病毒和内容过滤,不在本教程之内,如果想学习使用,请到http://wiki.ext m /ext m ail_solution_for_linux中参考学习。
∙文档所有者:Ext m ail Dev Tea m;∙文章原始出处:http://www.ext m /docs/ext m ail_solution_linux/∙项目首页:http://www.ext m 本次实验的系统环境hostname:m version:Linux version 2.6.18-128.el5 (m ockbuild@) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)) #1 SMP Wed Jan 21 10:44:23 EST 2009注:实验在CentOS5.3上做的,RHEL5.3上同样能实现。
第一部分:配置YUM源下面是两个不同版本(RHEL5.3和CentOS5.3)的配置。
如果是下载了Ext m ail团队的EMOS系统的话,也可以直接用光盘做YUM源,相关的配置,可以参考我以前的相关本地YUM源配置教程。
原因是:本邮件系统的相关软件所依赖的包比较多,如果说要编译安装各软件的话,大家把相关依赖的软件包要全部安装上!CentOS5.3vim /etc/yum.repos.d/CentOS-Base.repo清空里面内容,改成如下内容:[ext m ail]name=CentOS-extam il-Basebaseurl=http://m irror.extm /yum/em os/1.5/os/i386gpgcheck=0注意备份好以前的,以备后用!RHEL5.3在/etc/yum.repos.d/下新建文件update.repo内容如下:[Ext m ail]name=RHEL-extam il-Basebaseurl=http://m irror.extm /yum/em os/1.5/os/i386/enabled=1gpgcheck=0更改/usr/lib/python2.4/site-packages/yum/yum Repo.py相应部分改成下面的内容rem ote = “http://m irror.extm /yum/em os/1.5/os/i386/” + …/‟ + relative注:http://m irror.extm /yum/emos/1.5/os/i386/这个对应的是CentOS5和RHEL5的源,如果你是用4版本的,请用下面的。
U-Mail邮件系统CentOS 7.X一体盘安装教程
U-Mail For CentOS 7.X一体盘安装教程一体盘即U-Mail邮件系统软件与CentOS系统进行了整合,搭建更简单,系统兼容性更好。
1、下载U-Mail for CentOS(7.X) 一体盘注:最新版本U-Mail邮件服务器软件请去官网下载2、将BIOS启动方式设置为光驱启动,并放入U-Mail for CentOS(7.X) 一体盘光盘。
3、出现安装界面后,选择(默认)“Install CentOS Linux 7 for U-mail”按回车键,如下图:4、在“本地化”中设置日期和时间、键盘、语音支持,如下图:在“软件”中设置安装源、软件选择最小安装,如下图:5、在“系统”中设置安装位置,选择安装操作系统的硬盘,并选择自动分区。
如下图:备注:如果您对分区熟悉的,也可以手动分区的。
6、在“系统”中设置网络和主机名,如下图:7、上述设置完成后,点击“开始安装”,如下图:8、设置root密码,如下图:9、安装完成后,会自动重启,重启后输入root和密码进入系统,如下图:10、进入系统后,第一次会自动弹出U-Mail向导,选择Next回车,如下图:11、是默认的域名,麻烦修改成您自己的域名,如下图:12、设置邮件数据存储目录,建议放在容量最大的分区,如下图:13、设置webmail访问端口,默认是80,如下图:14、设置apache端口(按照默认即可),如下图:15、设置mysql的root密码(请设置成复杂密码),如下图:16、设置域管理后台密码(请设置成复杂密码),如下图:17、设置超域管理后台密码(请设置成复杂密码),如下图:18、设置系统管理后台密码(请设置成复杂密码),如下图:19、确认上述信息无误后,选择Install回车进行安装,如下图:20、正在安装,如下图:21、当出现Press any key to continue…后,按任意键会弹出完成安装界面、如下图表示成功完成安装,选择OK后回车即可。
CentOS_邮件服务器配置
该教程使用的是CentOS 4.4 以上的版本1---安装Postfixrpm –ivh postfix-*****.rpm ←安装光盘内的postfix2---对Postfix进行配置[root@sample ~]# vi /etc/postfix/main.cf←编辑Postfix的配置文件#myhostname = host.domain.tld←找到此行,将等号后面的部分改写为主机名myhostname = ←变为此状态,设置系统的主机名#mydomain = domain.tld←找到此行,将等号后面的部分改写为域名mydomain = ←变为此状态,设置域名(我们将让此处设置将成为E-mail 地址“@”后面的部分)#myorigin = $mydomain←找到此行,将行首的#去掉myorigin = $mydomain←变为此状态,将发信地址“@”后面的部分设置为域名(非系统主机名)inet_interfaces = localhost←找到此行,将“localhost”改为“all”inet_interfaces = all←变为此状态,接受来自所有网络的请求mydestination = $myhostname, localhost.$mydomain, localhost←找到此行,在行为添加“$mydomain”mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain←变为此状态,指定发给本地邮件的域名#relay_domains = $mydestination←找到此行,将行首的#去掉relay_domains = $mydestination←变为此状态,定义允许转发的域名#mynetworks = 168.100.189.0/28, 127.0.0.0/8←找到此行,依照自己的内网情况修改mynetworks = 168.100.189.0/28, 127.0.0.0/8←变为此状态,指定内网和本地的IP地址范围这里前面的一个IP对应掩码非0位,例192.168.1.0/24.#home_mailbox = Maildir/←找到这一行,去掉行首的#home_mailbox = Maildir/←变为此状态,指定用户邮箱目录# SHOW SOFTWARE VERSION OR NOT## Thesmtpd_banner parameter specifies the text that follows the 220# code in the SMTP server's greeting banner. Some people like to see# the mail version advertised. By default, Postfix shows no version.## You MUST specify $myhostname at the start of the text. That is an# RFC requirement. Postfix itself does not care.##smtpd_banner = $myhostname ESMTP $mail_name#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) ←找到这一行,接此行添加如下行:smtpd_banner = $myhostname ESMTP unknow ←添加这一行,不显示SMTP服务器的相关信息在配置文件的文尾,添加如下行:smtpd_sasl_auth_enable = yes ←服务器使用SMTP认证smtpd_sasl_local_domain = $myhostname ←指定SMTP认证的本地域名(主机名)smtpd_sasl_security_options = noanonymous ←不允许匿名的方式认证smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destinationmessage_size_limit = 15728640 ←规定邮件最大尺寸为15MB##################################可选操作##################################### 3---配置SMTP认证的相关选项[root@sample ~]# vi /usr/lib/sasl2/smtpd.conf←编辑SMTP认证的配置文件pwcheck_method: saslauthd←找到此行,将“saslauthd”改为“auxprop”pwcheck_method: auxprop←不使用系统用户密码作为用户的SMTP认证密码[root@sample ~]# vi /etc/sysconfig/saslauthdMECH=shadow←找到这一行,在前面加##MECH=shadow←不使用shadow机制FLAGS=←找到此行,在等号后面添加“sasldb”FLAGS=sasldb←定义认证方式为sasldb2##################################可选操作##################################### 4---建立用户的邮箱目录[root@sample ~]# mkdir /etc/skel/Maildir←在用户模板下建立用户邮箱目录[root@sample ~]# chmod 700 /etc/skel/Maildir←设置用户邮箱目录属性为700[root@sample ~]# mkdir /home/centospub/Maildir←为用户(这里以centospub用户为例)建立邮箱目录[root@sample ~]# chmod 700 /home/centospub/Maildir←设置该用户邮箱目录属性为700[root@sample ~]# chowncentospub. /home/centospub/Maildir←设置该用户邮箱目录为该用户所有##################################可选操作#####################################5---为用户设置SMTP认证密码[root@sample ~]# saslpasswd2 -u -c centospub←为centospub 用户设置SMTP认证密码Password:←在这里输入密码(不会显示)Again (for verification):←再次输入密码##################################可选操作#####################################6---改变SALS的属性及归属[root@sample ~]# chgrp postfix /etc/sasldb2←将数据库归属改为postfix,[root@sample ~]# chmod 640 /etc/sasldb2←将数据库属性改为6407---关闭sendmail服务及设置默认MTA[root@sample ~]# /etc/rc.d/init.d/sendmail stop←关闭sendmail服务Shutting down sendmail:[ OK ]Shutting down sm-client: [ OK ][root@sample ~]# chkconfigsendmail off←关闭sendmail自启动[root@sample ~]# chkconfig --list sendmail←确认sendmail自启动已被关闭(都为off 就OK)sendmail 0:off 1:off 2:off 3:off 4:off 5:off 6:off[root@sample ~]# alternatives --configmta←设置默认MTAThere are 2 programs which provide 'mta'.Selection Command-----------------------------------------------*+ 1 /usr/sbin/sendmail.sendmail←当前状态:sendmail为默认MTA2 /usr/sbin/sendmail.postfixEnter to keep the current selection[+], or type selection number: 2←在这里输入2,使Postfix成为默认MT A8---启动相应服务[root@sample ~]# chkconfigsaslauthd on←将SMTP-Auth设置为自启动[root@sample ~]# chkconfig --list saslauthd←确认SMTP-Auth服务状态saslauthd 0:off 1:off 2:on 3:on 4:on 5:on 6:off←确认2~5为on的状态就OK[root@sample ~]# /etc/rc.d/init.d/saslauthd start←启动SMTP-AuthStarting saslauthd: [ OK ][root@sample ~]# chkconfig postfix on←将Postfix设置为自启动[root@sample ~]# chkconfig --list postfix←确认Postfix服务状态postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off←确认2~5为on的状态就OK[root@sample ~]# /etc/rc.d/init.d/postfix start←启动PostfixStarting postfix: [ OK ]9---安装Dovecot[root@sample ~]# rpm -ivhl dovecot-*****.rpm←安装光盘内的以下软件Installing: perl-DBI ######################### [1/4]Installing: mysql ######################### [2/4]Installing: postgresql-libs ######################### [3/4]Installing: dovecot ######################### [4/4]10---配置Dovecot[root@sample ~]# vi /etc/dovecot.conf←编辑Dovecot 的配置文件#protocols = imapimaps←找到这一行,将协议设置为imap与pop3protocols = imap pop3←变为此状态#default_mail_env =←找到这一行,定义邮件目录default_mail_env = maildir:~/Maildir←定义邮件目录为用户目录下的Maildir目录11---添加防火墙规则[root@sample ~]# vi /etc/sysconfig/iptables←编辑防火墙规则-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT ←找到此行,接着添加如下两行:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT ←允许POP使用的110号端口-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT ←允许IMAP使用的143号端口[root@sample ~]# /etc/rc.d/init.d/iptables restart←重新启动防火墙,使新的设置生效Flushing firewall rules:[ OK ]Setting chains to policy ACCEPT: filter[ OK ]Unloading iptables modules:[ OK ]Applying iptables firewall rules: [ OK ]12---启动Dovecot[root@sample ~]# chkconfig dovecot on←设置Dovecot为自启动[root@sample ~]# chkconfig --list dovecotdovecot 0:off 1:off 2:on 3:on 4:on 5:on 6:off←确认2~5为on的状态就OK[root@sample ~]# /etc/rc.d/init.d/dovecot start←启动Dovecot服务Starting Dovecot Imap: [ OK ]。
Centos 7.0搭建sendmail邮件服务器(用webmin管理)
Centos 7.0搭建sendmail邮件服务器(用webmin管理)软件:1.CentOS-7.0-1406-x86_64-DVD.iso2.webmin-1.700.zip辅助工具:1.putty_cn.zip;2.SSHSecureShellClient-3.2.9.exe参考文档:RedHatEnt7DNS+Sendmail+Dovecot邮件服务器安装配置.pdf常用口令:1.df ,mkdir,mount //查看挂光盘;2.rpm -ivh ,rpm -qa|grep sendmail* //查看安装软件;3. cp ,vi (wq退出保存,q!不保存退出set number显示行号)4.systemctl start/restart/status/status/stop/enable sendmail.service //服务启动系统安装与配置:参与文档可以完成;测试出现:问题1:参与文档用口令建立用户设密码口令建立用户:eradd-g mail -s /sbin/nologin ts1//新增用户ts1到mail组,且不可登陆shelleradd ts2eradd-s /sbin/nologin ts3eradd –g mail ts4测试发现,ts1,ts4用户收发邮件正常,ts2,ts3不能收发邮件;原因:ts2,ts3没有指定为mail;口令修改属组mail后正常;webmin用户建立还有一个问题是webmin建用户用foxmail连接一定要测试帐户设置,否则不能收发邮件最后查看日志发现:1.mail文件夹写入权限问题;(默认只有mail创建和删除文件,其他组没有权限)修改为:2.webmin用户与群组设置问题(系统->用户与群组:模块配置->将SElinux context for new home directorie设置为System default)问题2:1.webmin用户组选择不能选择解决方法:webmin配置:->可信赖的访问来源:设置为否问题3:原邮件服务器用户的迁移a.从原邮件服务器上导出用户信息:在旧服务器上面文本:口令:touch/backuser.txt文本,然后通过webmin导出用户明细,通过ssh软件把明细放在备份出来,再到webmin导入新邮件服务器上面去;但这样原用户不能接收邮件;要每个用户重新生成密码;原因是:redhat9.0默认生成密码机制是MD5,跟centos7.0密码机制不一样;解决办法:测试1:用ssh软件到原服务器上备份导出/etc/passwd和shadow两个文件;然后导入替换新服务器上对应文件;用户文件正常收发,但重启系统后,系统出现黑屏;原因:可能全替换文件信息,centos重启后系统检测后信息不一致导致;而我们只要替换原来用户密码信息;于是,我们在替换新服务器上passwd和shadow时,要备份一份,然后修改原邮件服务器passwd和shadow的名称,通过ssh软件导入新邮件服务器,然后打开新邮件服务器上的对应的文件,删除导入系统生成的用户信息密码;再打开旧邮件服务器上的对应的文件,复制其中的对应的用户密码信息,粘贴到新邮件对应文件中去,这样只修改对应的用户信息,重启OK!问题4:安装vnc的软件(按百度信息步骤安装,出现一个问题。
iRedMail0.9.0+centos6.6搭建邮件服务器
安装完成系统后重启服务器。
使用ifconfig eth0命令查看当前网卡信息,没有IP地址???这里我们需要手动先指定个IP地址,这个地址是临时的,系统重启后又不存在了。
使用PUTTY链接刚才临时指定的IP地址。
使用VI编辑命令编辑eth0网卡的配置文件vi /etc/sysconfig/network-scripts/ifcfg-eth0我们需要修改ONBOOT=no如下图将no修改yes重启服务器后查看IP地址是否有变化。
不变就对了。
如果变了那就是没设置好。
找出问题。
查看主机名是否正确,这是安装IRedMail必须验证的一步,如果不符合将无法安装。
然后编辑hosts把127.0.0.1 添加到hosts列表安装wget,由于我们是精简系统,系统没有带这个下载工具。
安装完成。
下载IRedMail的安装脚本压缩包IRedMail下载完成解压IRedMail的压缩包进入解压的目录编辑get_all.sh这个安装脚本,根据官方文档提示由于服务器在国外IP被墙,需要将域名替换为IP地址。
如下图红色框内的域名一共两处替换为106.187.51.47(注释除外)这里一共有三个需要更新,这里可能会慢点下载完成后需要效验MD5更新完成后正式进入IRedMail的安装界面设置安装路径选择WebMail的引擎选择账号存储的方式设置MySQL的密码设置邮箱的域名,前面说了主机名如果设置了这里将不能设置设置邮箱管理员的密码选择安装IRedMail的组件选择Y开始安装,下面可以去抽根烟等待安装完成,中间需要按几次Y回车即可,如下图安装完成重启服务器后就可以登陆了。
上面有登陆地址和账号密码。
IRedMail的WEB界面IRedMail的后台管理界面。
CentOS7搭建简单的邮件服务器
CentOS7搭建简单的邮件服务器邮件服务器概述邮件收、发服务器是分开的,也就是我们需要搭建一个邮件发送服务器和一个邮件收取服务器。
本文会搭建收、发两个服务器,并用邮件客户端(Foxmail)做测试。
协议协议就是定义规则,这里是邮件协议,定义邮件收发的规则,了解规则有助于理解软件的配置文件。
邮件发送协议SMTP(Simple Mail Transfer Protocol),打开端口 25。
邮件收取协议POP,打开端口110;还有个常用邮件收取协议IMOP,打开端口 143。
服务软件PostfixPostfix 是实现 SMTP 协议的软件,也叫做邮件发送服务器。
上面说的邮件客户端将邮件扔给它,由它对邮件进行转发,至于怎么转发,SMTP 协议制定了规则,而 Postfix 负责具体事情,我们只需要修改 Postfix 配置文件要求它按照我们的想法去做。
DovecotDovecot 实现了 POP 和 IMOP 协议,也叫做邮件收取服务器。
如果只搭建了 Postfix 而没有它,不好意思,你是收不到邮件的。
SaslSasl登陆验证服务,在下面的介绍可以看到 Postfix 作为邮件发送服务器,不能无限制的转发任意邮件,应当只转发它信任的发件人发送的邮件,这一点体现在 Postfix 的配置文件要配置它认为安全的主机(mynetworks 参数)。
但这样会显得很麻烦,Sasl 通过其它方式也可以帮助 Postfix 完成信任邮件的认证。
设置域名用A记录解析到邮件服务器IP(后面的各个客户端配置的域名都写这个A记录的),再把用MX记录解析到(这个是当遇到***@时会解析到)。
测试端口telnet命令也要用,不能用mx记录的(用这个会解析到A记录解析的)。
安装软件安装软件postfix、dovecot、cyrus-saslyum -y install postfix dovecot cyrus-sasl配置软件配置postfixvi /etc/postfix/main.cf#修改以下配置,注意下面的变量不要重复,如果发现与原来的变量重名,那就将原来的变量给注释掉#邮件服务器的主机名myhostname = #邮件域,@后面的域名mydomain = #往外发邮件的邮件域myorigin = $mydomain#监听的网卡inet_interfaces = allinet_protocols = all#服务的对象mydestination = $myhostname,$mydomain#邮件存放的目录home_mailbox = Maildir/#新添加以下配置#--------自定义(下面可以复制粘贴到文件最后面,用于设置服务器验为主,第一行设置发送附件大小)#message_size_limit = 100000smtpd_sasl_auth_enable = yessmtpd_sasl_security_options = noanonymousmynetworks = 127.0.0.0/8smtpd_recipient_restrictions = permit_mynetworks,permit_s asl_authenticated,reject_unauth_destination•smtpd_sasl_auth_enable = yes //开启认证•smtpd_sasl_security_options = noanonymous //不允许匿名发信•mynetworks = 127.0.0.0/8//允许的网段,如果增加本机所在网段就会出现允许不验证也能向外域发信•smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_de stination•允许本地域以及认证成功的发信,拒绝认证失败的发信检查并启动postfixpostfix check #修改保存后检查配置文件是否有错systemctl start postfix #开启postfix服务,CentOS6用service postfix startsystemctl enable postfix #设置postfix服务开机启动,CentOS6用chkconfig postfix on配置dovecotvi /etc/dovecot/dovecot.conf#修改以下配置protocols = imap pop3 lmtplisten = *, ::#新添加以下配置#-----------自定义------------!include conf.d/10-auth.confssl = nodisable_plaintext_auth = nomail_location = maildir:~/Maildir启动dovecotsystemctl start dovecot #CentOS6用service dovecot start systemctl enable dovecot #CentOS6用chkconfig dovecot on配置cyrus-saslvi /etc/sasl2/smtpd.conf #如果是空文件,需要自己添加pwcheck_method: saslauthdmech_list: plain loginlog_level:3vi /etc/sysconfig/saslauthd #修改下面配置项(本地用户认证)MECH=shadow启动systemctl start saslauthd #CentOS6用service saslauthd startsystemctl enable saslauthd #CentOS6用chkconfig saslauthd on添加用户添加用户,并将密码设为123456useradd autumnecho 123456 | passwd --stdin autumn测试yum -y install telnet-server telnet #安装telnet客户端测试发送[root@mail ~]# telnet localhost 25Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.220 ESMTP Postfixmailfrom:****************250 2.1.0 Okrcpt to:qy***@250 2.1.5 Okdata354 End data with <CR><LF>.<CR><LF> subject:这是主题this is test mail.250 2.0.0 Ok: queued as 6224C10263A登录邮箱[root@mail ~]# telnet localhost 110Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.+OK Dovecot ready.user autumn+OKpass 密码+OK Logged in.list #列表查看邮件retr 1 #读取编号为1的邮件quit #退出邮箱用mailx测试安装yum install mailx -y使用mailx发送邮件echo '测试邮件内容' | mail -s '测试主题!' qy***@ 邮箱客户端配置Outlook配置收邮件延迟较高,不推荐使用如果出现服务器错误: '554 5.7.1 Relay access denied'1,打开outlook,点击“文件”“信息”bai,进入“账户设置”。
CentOSLinux邮件系统搭建
CentOSLinux邮件系统搭建背景操作系统版本(cat /etc/issue):CentOS release 6.5 (Final)主机名:mail.gogo.so域名:gogo.so⽤到软件:postfix相关协议:SMTP : Simple Mail Transport Protocol,它是⽤于传送邮件的标准协议(TCP port 25)。
Postfix不处理任何POP和IMAP通信内容。
IMAP和POP3是⽤于收信的协议,描述如何从邮箱中取出邮件。
POP3和IMAP完全没有寄信的能⼒,只能帮⽤户处理事先收到的邮件。
并⾮所有⽤户都需要透过POP3/IMAP来访问邮箱。
拥有Linux系统账号的⽤户,可能设定他们的MUA直接读取同⼀机器上的邮件⽂件。
邮件系统的组成:⼀个邮件系统通常包括:MUA、MTA、MRA、MDA等。
MUA:Mail User Agent(邮件⽤户代理),常见的MUA有mutt,Outlook Express,Foxmail等,MUA并⾮直接将E-mail送到收到件⼈⼿中,⽽是由MTA代为传递。
当你要求MUA发送⼀封邮件,它只是将该邮件交给⼀台运⾏MTA软件(例如Postfix)的服务器。
MTA:Mail Transfer Agent(邮件传输代理),Postfix是⼀种MTA。
MTA的任务是:(1)接受MUA的委托,将E-mail从⼀个系统递送到另⼀个系统;(2)接收从别的MTA发送过来的邮件。
每当MTA收到MUA的寄信请求时,它会先判断是否应该受理。
通常,如果邮件是来⾃本地系统的⽤户,或是本地⽹络上的系统,或是任何特许可以通过它转发(relay)邮件到其他⽬的地的⽹络,MTA都会受理寄信请求。
另⼀⽅⾯,MTA也会依据“收件⼈”来决定是否要收下邮件。
如果收件⼈是本地系统的⽤户,或是收件⼈位于它知道要如何转递(forward)的其他系统,MTA就会收下该邮件。
MTA收下邮件之后,有两种可能:(1)将邮件递送给⾃⼰系统上的⽤户;(2)将邮件交给另⼀个MTA来继续传递。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关于Error: xz compression not available2015-05-30 23:562067人阅读评论(0)举报找到原因是安装软件时错误安装了CENTOS 7版本的软件导致yum不可用。
附上原文:Your "fix" removes the repository entirely. The correct fix is to remove the cached files for epel under /var/cache/yum/epel and to uninstall the EPEL *7* version of the rpm which is designed to install on CentOS/RHEL7 not on CentOS 6.解决方法:1.gedit /root/install.log域名及主机名--------------------------------------Domain:Hostname:--------------------------------------数据库信息--------------------------------------Mysql(postfixadmin)DBNAME ===> postfixadminuser ===> postfixpassword ===> postfixadmin--------------------------------------一、环境部署预备1、域名及主机名设置略……2、配置新yum 源(网易)[root@mail ~]# yum -y install wget[root@mail ~]# cd /etc/yum.repos.d/[root@mail yum.repos.d]# mkdir backup[root@mail yum.repos.d]# mv CentOS-* backup/[root@mail yum.repos.d]# wget /.help/CentOS6-Base-163.repo//此步骤可选,目的为今后yum安装amavisd-new、clamav 等[root@mail ~]# rpm -ivh /pub/epel/6/i386/epel-release-6-8.noarch.rpm//清空yum缓存及更新系统[root@mail ~]# yum clean all; yum update -y3、LAMP 环境[root@mail ~]# yum -y install httpd mysql mysql-devel mysql-server php php-pecl-Fileinfo php-mcrypt php-devel php-mysql php-common php-mbstring php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc pcre pcre-devel//配置apache,并让apache支持php[root@mail ~]# vi /etc/httpd/conf/httpd.confAddType application/x-httpd-php .php #添加对php程序的支持PHPIniDir "/etc/php.ini" #指定php.ini配置文件路径DirectoryIndex index.php index.html #指定首页文件类型#取消ServerName前的注释,否则启动httpd 时提示276行4、配置mysql,为postfixadmin 准备好数据库及认证用户[root@mail ~]#service mysqld start \q可断开连接[root@mail ~]#chkconfig mysqld on[root@mail ~]# mysql -uroot -pmysql> create database postfix character set utf8;mysql> grant all privileges on postfix.* to postfix@localhost identified by 'postfixadmin'; mysql> flush privileges;mysql> exit5、添加邮件虚拟用户vmail[root@mail ~]# useradd -u 2000 -d /var/vmail -c "Virtual Mail user" -s/sbin/nologin vmail二、配置postfix[root@mail ~]# vi /etc/postfix/main.cf################# Main configure ####################hostname = mydomain = myorigin = $mydomaininet_interfaces = all#注意这里,不能设置成与hostname与mydomain一致,不然收不到邮件mydestination = localhostmynetworks = 127.0.0.0/8#不对client进行反向域名解析disable_dns_lookups = yes#允许对一个目标域名发送的邮件并发数为20个default_destination_concurrency_limit = 20#邮件的并发进程限制(根据服务器的性能定义)default_process_limit = 50#只监听ipv4net_interfaces = ipv4################## Virtual mail configure #######################virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql_virtual_domains_maps.cf virtual_alias_maps = proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cfvirtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql_virtual_mailbox_maps.cfvirtual_mailbox_base = /var/vmail#注意uid 与gid 与之前的建立的vmail账号是一致的,可以用# id vmail查询virtual_uid_maps = static:2000virtual_gid_maps = static:2000virtual_transport = dovecotdovecot_destination_recipient_limit = 1proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains$relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps################ SASL SUPPORT FOR CLIENTS ####################### smtpd_sasl_auth_enable = yessmtpd_sasl_type = dovecotsmtpd_sasl_security_options = noanonymous#以下的两个选项可以任选一个,不过必须要与dovecot 一致#smtpd_sasl_path = /var/run/dovecot/auth-clientsmtpd_sasl_path = private/authbroken_sasl_auth_clients = yessmtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_invalid_hostname,reject_non_fqdn_hostname,reject_unknown_sender_domain,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unknown_recipient_domain,reject_unauth_pipelining,reject_unauth_destination################## Mail Quota configure ########################mail transport max size:20Mmessage_size_limit = 20480000# 虚拟邮件用户使用的最大容量,需在postfixadmin 中启用quota($CONF['used_quotas'] = 'YES';)才生效。
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf# Queue lifetime controlmaximal_queue_lifetime = 1dbounce_queue_lifetime = 1d[root@mail ~]# vi /etc/postfix/master.cf#在末尾加入LDAdovecot unix - n n - - pipeflags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/dovecot-lda -f ${sender} -d ${recipient[root@mail ~]# vi /etc/postfix/mysql_virtual_domains_maps.cfuser = postfixpassword = postfixadminhosts = localhostdbname = postfixquery = SELECT domain FROM domain WHERE domain='%s' AND active = '1'#optional query to use when relaying for backup MX#query = SELECT domain FROM domain WHERE domain='%s' AND backupmx = '0' AND active = '1'[root@mail ~]# vi /etc/postfix/mysql_virtual_alias_maps.cfuser = postfixpassword = postfixadminhosts = localhostdbname = postfixquery = SELECT goto FROM alias WHERE address='%s' AND active = '1'[root@mail ~]# vi /etc/postfix/mysql_virtual_mailbox_limit_maps.cfuser = postfixpassword = postfixadminhosts = localhostdbname = postfixquery = SELECT quota FROM mailbox WHERE username='%s' AND active = '1'[root@mail ~]# vi /etc/postfix/master.cfuser = postfixpassword = postfixadminhosts = localhostdbname = postfixquery = SELECT CONCAT(domain,'/',maildir) FROM mailbox WHERE username='%s' AND active = '1'三、配置postfixadmin[root@mail ~]# wget/project/postfixadmin/postfixadmin/postfixadmin-2.91/postfixadmin-2.91.tar.gz[root@mail ~]# tar zxvf postfixadmin-2.91.tar.gz[root@mail ~]# mv postfixadmin-2.91 postfixadmin[root@mail ~]# mv postfixadmin /var/www/html/[root@mail postfixadmin]# cp config.inc.php config.inc.php.bak[root@mail postfixadmin]# vi config.inc.php$CONF['configured'] = true;$CONF['database_type'] = 'mysql';$CONF['database_host'] = 'localhost';$CONF['database_user'] = 'postfix';$CONF['database_password'] = 'postfixadmin';$CONF['database_name'] = 'postfix';# 定义doveadm的位置,可以用#whereis doveadm查询doveadm 的位置$CONF['dovecotpw'] = "/usr/bin/doveadm pw";# 定义管理员邮箱$CONF['admin_email'] = 'postmaster@';# mysql密码加密类型$CONF['encrypt'] = 'dovecot:CRAM-MD5';# 使用空间配额$CONF['used_quotas'] = 'YES';# 密码策略$CONF['password_validation'] = array(保存,通过web访问:http://yourip/postfixadmin/setup.php将生成的函数添加到config.inc.php文件末尾中,添加个管理员账号:比如postmaster@ (添加完成后建议将setup.php这个文件进行更名,或者直接删除)在postfixadmin添加域,以及两个测试用户zhang3、li4.四、配置dovecot安装[root@mail ~]# yum -y install dovecot dovecot-devel dovecot-mysql#主要配置[root@vqiu ~]# dovecot -n# 2.0.9: /etc/dovecot/dovecot.conf# OS: Linux 2.6.32-431.20.3.el6.x86_64 x86_64 CentOS release 6.5 (Final) ext4auth_mechanisms = plain login cram-md5dict {quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext }disable_plaintext_auth = nolisten = *mail_location = maildir:/var/vmail/%d/%nmbox_write_locks = fcntlpassdb {args = /etc/dovecot/dovecot-sql.conf.extdriver = sql}plugin {quota = dict:User quota::proxy::quotaquota_rule = *:storage=1G}postmaster_address = postmaster@service auth {unix_listener /var/spool/postfix/private/auth {group = postfixmode = 0666user = postfix}unix_listener auth-client {group = postfixmode = 0600user = postfix}unix_listener auth-userdb {group = vmailmode = 0600user = vmail}}service dict {unix_listener dict {group = vmailmode = 0600user = vmail}}ssl_cert = </etc/pki/dovecot/certs/dovecot.pemssl_key = </etc/pki/dovecot/private/dovecot.pemuserdb {args = /etc/dovecot/dovecot-sql.conf.extdriver = sql}protocol lda {mail_plugins = quota}protocol pop3 {mail_plugins = quotapop3_client_workarounds = outlook-no-nuls oe-ns-eohpop3_uidl_format = %08Xu%08Xv}[root@mail ~]# vi /etc/dovecot/dovecot-dict-sql.conf.extconnect = host=localhost dbname=postfix user=postfix password=postfixadmin map {pattern = priv/quota/storagetable = quota2username_field = usernamevalue_field = bytes}map {pattern = priv/quota/messagestable = quota2username_field = usernamevalue_field = messages}[root@mail ~]# vi /etc/dovecot/dovecot-sql.conf.extdriver = mysqlconnect = host=localhost dbname=postfix user=postfix password=postfixadmin#与postfixadmin 中的要一致,否则出现密码不匹配的现象default_pass_scheme = CRAM-MD5user_query = SELECT CONCAT('/var/vmail/', maildir) AS home, 2000 AS uid, 2000 AS gid, CONCAT('*:bytes=', quota) as quota_rule FROM mailbox WHERE username = '%u' AND active='1'password_query = SELECT username AS user, password, CONCAT('/var/vmail/', maildir) AS userdb_home, 2000 AS userdb_uid, 2000 AS userdb_gid, CONCAT('*:bytes=', quota) as userdb_quota_rule FROM mailbox WHERE username = '%u' AND active='1'五、客户端测试[内部互发,注意message_limit_size哦][发送至公网]六、常见问题Q:邮件发送正常,无法接收邮件A:这个问题我也遇到过最多的,总结如下:•main.cf 中的mydetination 参数不能与myorigin相同;•virtual_tranport = dovecot ,网上有些教程是virtual;•vmail 的GID与UID 为2000•/var/vmail 权限问题,日志里会提示Q:传输附件失败A:没有定义最大邮件传递大小,postfix 默认的传递大小查询:[root@mail ~]# postconf | grep message_size_limitmessage_size_limit = 10240000#默认为10M#编辑main.cf 定义合适邮件传输的大小#查询数据库中的数据[root@mail ~]# postmap -q mysql:/etc/postfix/mysql_virtual_domains_maps.cf[root@mail ~]# postmap -q zhang3@mysql:/etc/postfix/mysql_virtual_postfixbox_maps.cf//zhang3/附:postfix-2.11.1.tar.gz tarball 安装[root@mail src]# tar zxvf postfix-2.11.1.tar.gz[root@mail src]# cd postfix-2.11.1#注意mysql 路径[root@mail postfix-2.11.1]# make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\"dovecot\"' 'AUXLIBS=-L/usr/lib/mysql/ -lmysqlclient -lz -lm -lssl -lcrypto';make;make installdovecot-2.2.13.tar.gz tarball 安装[root@mail src]# ./configure --prefix=/usr/local/dovecot --sysconfdir=/etc --localstatedir=/var --with-sql --with-mysql --with-zlib --with-ssl LDFLAGS=-L/usr/lib/mysql/;make;make install#可不执行,定义postfixadmin的doveadm 路径即可[root@mail ~]# ln -sv /usr/local/dovecot/bin/doveadm/usr/bin/doveadm (postfixadmin)#可不执行,定义postfix中master.cf配置文件中LDA路径即可[root@mail ~]# ln -s /usr/local/dovecot/libexec/dovecot/ /usr/libexec/Bug: 由于Mairbox没有设置对应的相关目录(比如:.Sent[发件箱] .Trafts[草稿箱] .Sapms [垃圾邮件]等),客户端默认使用IMAP协议来接收邮件时,只存在一个收件箱及草稿箱,其它的目录需要手动建立(暂时没有好的思路),写了个简单得不能再简单的SHELL脚本。