CentOS Postfix邮件服务器配置
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,目的是为了避免在安装调试时产生不必要的麻烦,在系统安装完成后,可以自己去调试安全部分,在这里将不作详细介绍。
安装及配置Postfix邮件服务器
安装、配置Postfix邮件服务器一、编译、安装注:只要按照此安装及配置步骤进行,均可成功实现安装、配置postfix。
文中“』”表示空格1、关闭sendmailservice』sendmail』stop2、添加用户组和用户groupadd』–g』1200』postdropgroupadd』–g』1000』postfixuseradd』–M』–u』1000』–g』postfix』–G』postdrop –s/sbin/nologin』postfix3、编译安装1)进入源码包所在目录如:cd』/home/hello/2)列补丁(可省略)l(小写的“L”)3)解压补丁包(可省略)gunzip』postfix----vda-ng.patch.gz4)解压源码包tar』zxvf』postfix-2.6.2.tar.gz』–C』/usr/src/cd』/usr/src/』postfix-2.6.2注:–C』/usr/src/ 是指把解压后当然源码包存放在/usr/src/目录下;cd』/usr/src/』postfix-2.6.2 是指进入源码包目录。
5)打补丁(可省略)Patch』–p1』<』/home/hello/----补丁存放当然位置6)编译make如果此时出現缺少db*-devel错误:install the appropriate db*-devel package firstmake: ***[makefiles] error解决办法:到光盘下去把db*-devel文件查找出来或把整个linux包,拷贝到相应位置,然后用如下命令进行安装rpm』–ivh』-force-debian』–nodeps』/home/hello/db*-devel.rpm7)安装make』install到此postfix安装完成,postfix在/usr/src/postfix-2.6.2中二、配置postfix1、postfix必须有DNS支撑启动dnsservice named restart测试DNS是否正确nslook退出用exit2、进入postfix工作目录cd』/etc/postfix/3、得到有效的配置项postconf』–n >』main.cf-把主配置文件改名mv』main.cf』main.cf.bak为得到的配置文件改名mv』main.cf-』main.cf查看一下vi main.cf4、添加如下行:Inet_interfaces=127.0.0.1,192.168.1.1myhostname=mydomain=myorigin=$mydomainmydestination=$mydomain,$myhostnamhome_mailbox=Maildir/ //邮件存放位置5、启动服务postfix start查看是否服务启动netstat –anltp | grep 256、添加邮件用户并测groupadd mailusersuseradd–g mailusers–s/sbin/nologin xxx useradd–g mailusers–s/sbin/nologin yyy passwd xxxpasswd yyy测发送邮件telnet 192.168.0.100 25helo localhost //可省略mail from:xxx@rcpt to:yyy@datasubject:A test mailhello!. //邮件编辑结束quit //退出界面7、停止postfix stop8、验证邮件是否发送成功cd /home/llcd yyy/llcd Maildir/llcd new/llvi 邮件名。
linux Postfix邮件服务器安装配置
:Postfix邮件服务器的安装与配置一、先安装配置Apache、DNS1.挂载光盘镜像;Mount /dev/cdrom /mntCd /mnt/Server2.安装Apacherpm -ivh httpd-2.2.3-43.el5.i386.rpm apr-1.2.7-11.el5_3.1.i386.rpm apr-util-1.2.7-11.el5.i386.rpm postgresql-libs-8.1.18-2.el5_4.1.i386.rpm查看有否安装:[root@localhost Server]# rpm -qa | grep httphttpd-2.2.3-43.el5启动Apache:Service httpd start3.安装DNS用rpm分别安装以下包:bind-9.3.6-4.P1.el5_4.2.i386.rpmbind-chroot-9.3.6-4.P1.el5_4.2.i386.rpmbind-devel-9.3.6-4.P1.el5_4.2.i386.rpmbind-libbind-devel-9.3.6-4.P1.el5_4.2.i386.rpmbind-libs-9.3.6-4.P1.el5_4.2.i386.rpmbind-sdb-9.3.6-4.P1.el5_4.2.i386.rpmbind-utils-9.3.6-4.P1.el5_4.2.i386.rpmDNS有两个配置文件:主配置文件:/var/named/chroot/etc/named.conf 用来设置DNS全局命令的DocumentRoot “/var/www/html”:定义网页文件存放的目录数据库文件:.zone记录哪个域名IP是多少的。
装完后启动DNSService named start编辑DNS主配置文件(默认是空的)如下:命令:vim /var/named/chroot/etc/named.conf从模版拷贝一个DNS配置文件的zone文件cp /usr/share/doc/bind-9.3.6/sample/var/named/localdomain.zone /var/named/chroot/var/named/.zone编辑.zone文件:重启DNS服务:service named restart清空DNS缓存文件:echo “” > /etc/resolv.conf验证DNS解析:host has address 192.168.18.72二、安装PostfixRed Hat Enterprise Linux提供了sendmail和postfix两种STMP邮件服务软件,安装程序默认安装了sendmail,如果使用postfix,就必须先将sendmail服务停止,然后再安装postfix 服务,具体步骤如下:1)、检查sendmail服务是否已经开启Netstat –nutlp | grep :25[root@localhost ~]# netstat -nutlp | grep :25tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3783/sendmail: ace2)、关闭sendmail服务及开机时自动启动3)、在Red Hat Enterprise Linux 5中,提供了更加方便的E-mail服务器切换方法,它提供了一个图形界面的切换工具system-switch-mail。
邮件服务器配置范文
邮件服务器配置范文1.硬件配置-处理器:建议选择多核处理器,以提高处理效率和吞吐量。
-内存:根据邮件服务器的规模和负载情况,至少需要8GB以上的内存。
-存储:需要至少500GB的硬盘空间,用于存储邮件数据和附件。
2.软件配置- 操作系统:常见的邮件服务器操作系统包括Linux(如CentOS、Ubuntu等)、Windows Server等。
选择合适的操作系统取决于您的服务器硬件和个人喜好。
- 邮件服务器软件:常见的邮件服务器软件包括Postfix、Sendmail、Exchange等。
这些软件提供了邮件传输代理(MTA)和邮件用户代理(MUA)的功能。
3.网络配置-IP地址:为您的邮件服务器分配一个静态IP地址,以便其他服务器和客户端可以访问该服务器。
-域名解析:将您的域名解析配置到邮件服务器的IP地址上,以便通过域名发送和接收邮件。
- 防火墙配置:配置防火墙以允许SMTP(Simple Mail Transfer Protocol)和POP3(Post Office Protocol version 3)或IMAP (Internet Message Access Protocol)流量通过。
4.安全配置-反垃圾邮件和反病毒:安装和配置反垃圾邮件和反病毒软件,以过滤恶意邮件和病毒附件。
- SSL/TLS加密:配置SSL(Secure Sockets Layer)或TLS (Transport Layer Security)来加密邮件的传输,以保护邮件内容的安全性。
-用户认证:要求邮件客户端使用用户名和密码进行身份验证,以防止未经授权的用户访问邮件服务器。
-防火墙和入侵检测系统:配置防火墙和入侵检测系统来检测和阻止恶意攻击。
以上是关于邮件服务器配置的详细说明,涵盖了硬件和软件配置、网络配置以及安全配置。
通过合理的配置,可以确保邮件服务器能够稳定、安全地运行,并为用户提供可靠和高效的邮件服务。
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下配置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内容如下:。
邮件服务器安装和配置
邮件服务器安装和配置概述邮件服务器是一种用于发送、接收和存储电子邮件的软件系统。
在企业和个人日常沟通中,邮件服务器发挥着重要的作用。
本文将介绍如何安装和配置邮件服务器。
步骤一:选择邮件服务器软件在安装和配置邮件服务器之前,需要选择合适的邮件服务器软件。
常见的邮件服务器软件有以下几种:1.Postfix:一个流行的开源邮件服务器软件,易于安装和配置,具有良好的安全性和性能。
2.Sendmail:一种经典的邮件传输代理(MTA),可靠且功能强大,但配置复杂。
3.Exim:一个易于配置的邮件服务器软件,支持多种邮件协议和扩展。
4.Microsoft Exchange Server:适用于Windows环境的商业邮件服务器软件,具有广泛的功能和集成性。
在选择邮件服务器软件时,需要考虑操作系统兼容性、安全性、功能需求和配置复杂性等因素。
步骤二:安装邮件服务器软件在选择了合适的邮件服务器软件后,接下来需要安装它。
以下是一般的安装步骤:1.下载邮件服务器软件的安装包。
可以从官方网站或开源软件社区下载最新版的安装包。
2.解压安装包并进入解压后的目录。
3.执行安装命令,根据提示完成安装过程。
安装命令可能因不同的软件而有所不同,一般需要使用管理员权限来执行。
4.检查安装是否成功。
可以使用命令行工具或图形界面来验证安装是否成功。
步骤三:配置邮件服务器在成功安装邮件服务器软件后,需要进行相应的配置,以确保其正常运行。
以下是一般的配置步骤:1.打开配置文件。
不同的邮件服务器软件使用不同的配置文件,一般位于安装目录下的/etc或conf子目录中。
2.根据需求修改配置文件。
配置文件包含了各种配置选项,例如网络设置、域名配置、认证方式、存储路径等。
根据具体需求进行修改。
3.保存并关闭配置文件。
在修改完配置文件后,保存并关闭文件。
4.重启邮件服务器。
根据具体的邮件服务器软件,执行相应的命令来重启邮件服务器。
5.检查邮件服务器的运行状态。
CenTOS 5下面用自带的RPM包安装基于Postfix的邮件系统(MySQL)
CenTOS 5下面用自带的RPM包安装基于Postfix的邮件系统(MySQL) (Postfix+Mysql+Dovecot+Extmail+Extman+Mailscanner+Spamassassin+Clamav) Author:汪洋Nickname:ruochen / ruochen0926Date:20070927Version:1.0Contact: E-Mail:ruochen0926(at) QQ:967409Blog:/Note:参考了网上很多网友的帖子,都比较零散,不一一列出,如果在安装或者使用过程中有疑问,请到我的blog跟帖,我会尽快回复目录:目标:配置一个功能齐全的Mail系统1)安装需要的软件包2)DNS相关配置2.1)建立正向反向和MX记录2.2)测试DNS配置3)安装Postfix4)配置Postfix4.1)配置Postfix的主配置文件 /etc/postfix/main.cf4.2)配置Postfix虚拟用户的配置文件5)配置dovecot (IMAP/IMAPS/POP3/POP3S)5.1)配置dovecot的主配置文件/etc/dovecot.conf5.2)配置dovecot的mysql认证配置文件6)测试发信认证及收信6.1)LOGIN登录测试6.2)pop3收信测试7)安装Extmail-1.0.27.1)解压安装7.2)修改Extmail主配置文件7.3)APACHE相关配置7.4)Extmail依赖关系的解决8)安装Extman-0.2.28.1)解压安装8.2)修改Extman的主配置文件8.3)APACHE相关配置9)开启Apache/Mysql/Bind,并让他们自启动10)安装反垃圾SpamAssassin11)安装反病毒Clamav12)安装MailScanner1)安装需要的软件包Mysql部分[root@mailtest /]# rpm -qa|grep mysql mysql-connector-odbc-3.51.12-2.2 mysql-devel-5.0.22-2.1mysql-server-5.0.22-2.1mod_auth_mysql-3.0.0-3.1php-mysql-5.1.6-15.el5mysql-5.0.22-2.1libdbi-dbd-mysql-0.8.1a-1.2.2Http部分[root@mailtest /]# rpm -qa|grep http httpd-2.2.3-6.el5.centos.1Php部分[root@mailtest /]# rpm -qa|grep phpphp-mysql-5.1.6-5.el5php-5.1.6-5.el5php-mbstring-5.1.6-5.el5php-common-5.1.6-5.el5php-cli-5.1.6-5.el5php-pdo-5.1.6-5.el5php-gd-5.1.6-5.el5Perl部分[root@mailtest noarch]# rpm -qa|grep perl perl-HTML-Tagset-3.10-2.1.1perl-Digest-HMAC-1.01-15perl-HTML-Parser-3.56-1perl-Sys-Hostname-Long-1.4-1perl-Net-DNS-0.59-1.fc6perl-XML-SAX-0.14-5perl-IO-stringy-2.108-1perl-DBI-1.56-1perl-5.8.8-10mod_perl-2.0.2-6.1perl-Socket6-0.19-3.fc6perl-IO-Socket-INET6-2.51-2.fc6perl-IO-String-1.08-1.1.1perl-Convert-ASN1-0.20-1.1perl-TimeDate-1.16-3perl-MIME-tools-5.420-1perl-DBD-SQLite-1.13-1perl-BSD-Resource-1.28-1.fc6.1perl-DBD-MySQL-3.0007-1.fc6perl-IO-Zlib-1.04-4.2.1perl-Digest-SHA1-2.11-1.2.1perl-Archive-Tar-1.30-1.fc6perl-IO-Socket-SSL-1.01-1.fc6perl-LDAP-0.33-3.fc6perl-libwww-perl-5.805-1.1.1perl-MailTools-1.71-1perl-Convert-TNEF-0.17-1perl-Filesys-Df-0.90-1perl-URI-1.35-3perl-Compress-Zlib-1.42-1.fc6perl-Net-IP-1.25-2.fc6perl-XML-NamespaceSupport-1.09-1.2.1perl-Net-CIDR-0.11-1perl-Archive-Zip-1.16-1perl-String-CRC32-1.4-2.fc6perl-Net-SSLeay-1.30-4.fc6perl-Convert-BinHex-1.119-2Spamassassin部分[root@mailtest /]# rpm -qa|grep spamassassin spamassassin-3.1.7-4.el5Dovecot部分[root@mailtest /]# rpm -qa|grep dovecot dovecot-1.0-1.2.rc15.el5 #imap imaps pop3 pop3s Cyrus-sasl部分[root@mailtest /]# rpm -qa|grep cyrus-saslcyrus-sasl-lib-2.1.22-4cyrus-sasl-plain-2.1.22-4cyrus-sasl-devel-2.1.22-4cyrus-sasl-2.1.22-4cyrus-sasl-md5-2.1.22-4cyrus-sasl-sql-2.1.22-4Spamassassin所依赖的包perl-Archive-Tar-1.30-1.fc6.noarch.rpmperl-IO-Socket-SSL-1.01-1.fc6.noarch.rpmperl-Compress-Zlib-1.42-1.fc6.i386.rpmperl-IO-Zlib-1.04-4.2.1.noarch.rpmperl-Digest-HMAC-1.01-15.noarch.rpm perl-Net-DNS-0.59-1.fc6.i386.rpmperl-Digest-SHA1-2.11-1.2.1.i386.rpmperl-Net-IP-1.25-2.fc6.noarch.rpmperl-HTML-Parser-3.55-1.fc6.i386.rpmperl-Net-SSLeay-1.30-4.fc6.i386.rpmperl-HTML-Tagset-3.10-2.1.1.noarch.rpmperl-Socket6-0.19-3.fc6.i386.rpmperl-IO-Socket-INET6-2.51-2.fc6.noarch.rpmPostfix所依赖的包db4-devel-4.3.29-9.fc6.i386.rpme2fsprogs-devel-1.39-8.el5.i386.rpmkrb5-devel-1.5-17.i386.rpmzlib-devel-1.2.3-3.i386.rpmopenssl-devel-0.9.8b-8.3.el5.i386.rpmmysql-devel-5.0.22-2.1.i386.rpmcyrus-sasl-devel-2.1.22-4.i386.rpmgcc所依赖的包libgomp-4.1.1-52.el5.i386.rpmgcc-4.1.1-52.el5.i386.rpm其他软件包perl-libwww-perl-5.805-1.1.1.noarch.rpmavahi-compat-howl-0.6.16-1.el5.i386.rpmopenldap-servers-sql-2.3.27-5.i386.rpmperl-LDAP-0.33-3.fc6.noarch.rpmkernel-devel-2.6.18-8.el5.i686.rpmelfutils-libelf-0.125-3.el5.i386.rpmelfutils-libelf-devel-0.125-3.el5.i386.rpmrpm-build-4.4.2-37.el5.i386.rpm建议安装与系统管理相关的两个包nmap-4.11-1.1.i386.rpmsysstat-7.0.0-3.el5.i386.rpm下面的两个软件包用于clamav的数字签名gmp-devel-4.1.4-10.el5gmp-4.1.4-10.el52)DNS相关配置2.1)建立正向反向和MX记录[root@mailtest ~]# cat /var/named/named.test.hk$TTL 86400@ IN SOA test.hk. test1.test.hk ( 1997022700 ; Serial28800 ; Refresh14400 ; Retry3600000 ; Expire86400 ) ; MinimumIN NS mailtesttest.hk. IN MX 5 mail.test.hk.mail IN A 10.10.119.204mailtest IN A 10.10.119.204[root@mailtest ~]# cat /var/named/named.10.10.119$TTL 86400@ IN SOA test.hk. test1.test.hk (1997022700 ; Serial28800 ; Refresh14400 ; Retry3600000 ; Expire86400 ) ; MinimumIN NS mailtest204 IN PTR mail.test.hk.204 IN PTR mailtest.test.hk.[root@mailtest ~]# hostnamemailtest.test.hk2.2)测试DNS配置[root@mailtest ~]# nslookup mail.test.hkServer: 10.10.119.204Address: 10.10.119.204#53Name: mail.test.hkAddress: 10.10.119.204[root@mailtest ~]# nslookup mailtest.test.hkServer: 10.10.119.204Address: 10.10.119.204#53Name: mailtest.test.hkAddress: 10.10.119.204[root@mailtest ~]# nslookup 10.10.119.204Server: 10.10.119.204Address: 10.10.119.204#53204.119.10.10.in-addr.arpa name = mail.test.hk.204.119.10.10.in-addr.arpa name = mailtest.test.hk.[root@mailtest ~]# ping mailtest.test.hkPING mailtest.test.hk (10.10.119.204) 56(84) bytes of data.64 bytes from mailtest.test.hk (10.10.119.204): icmp_seq=1 ttl=64 time=0.793 ms 64 bytes from mailtest.test.hk (10.10.119.204): icmp_seq=2 ttl=64 time=0.046 ms 64 bytes from mailtest.test.hk (10.10.119.204): icmp_seq=3 ttl=64 time=0.040 ms--- mailtest.test.hk ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2002msrtt min/avg/max/mdev = 0.040/0.293/0.793/0.353 ms[root@mailtest ~]# ping mail.test.hkPING mail.test.hk (10.10.119.204) 56(84) bytes of data.64 bytes from mail.test.hk (10.10.119.204): icmp_seq=1 ttl=64 time=0.395 ms64 bytes from mail.test.hk (10.10.119.204): icmp_seq=2 ttl=64 time=0.037 ms64 bytes from mail.test.hk (10.10.119.204): icmp_seq=3 ttl=64 time=0.038 ms--- mail.test.hk ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2001msrtt min/avg/max/mdev = 0.037/0.156/0.395/0.169 msNote:DNS的配置错误多看Bind的日志文件/var/log/messages3)安装Postfix虽然CentOS 5自带Postfix,但因为其不支持SSL及Mysql/LDAP,所以我们需要自行编译[root@mailtest /]# rpm -e sendmail --nodeps #卸载系统自带的sendmail[root@mailtest /]# groupadd postfix #添加postfix用户[root@mailtest /]# groupadd postdrop #添加postdrop组[root@mailtest /]# useradd postfix -g postfix -G postdrop -c "Postfix User" -d/dev/null -s /sbin/nologin #添加postfix用户[root@mailtest /]# mkdir -pv /tmp/postfix #建立postfix的临时目录[root@mailtest /]# chown -R postfix.postfix /tmp/postfix #给postfix的临时目录相关权限[root@mailtest /]# mkdir -pv /home/domains/ #建立虚拟邮件用户的邮件存放目录[root@mailtest /]# chown -R postfix.postfix /home/ #给虚拟邮件用户的邮件存放目录相关权限[root@mailtest /]# tar zxvf postfix-2.4.6.tar.gz #解压postfix包[root@mailtest /]# cd postfix-2.4.6 #进入postfix解压目录[root@mailtest postfix-2.4.5]# make -f Makefile.init makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_TLS -DUSE_CYRUS_SASL -DUSE_SASL_AUTH -I/usr/include/sasl -DHAS_LDAP' 'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm -L/usr/lib -lssl -lcrypto -lsasl2 -L/usr/lib/openldap -llber -lldap'#配置编译环境支持sasl/tls/mysql/ldap.相关编译参数参考readme文件#在64bit的机器上安装,要将参数里面的lib换成lib64[root@mailtest postfix-2.4.6]# make #编译postfix[root@mailtest postfix-2.4.6]# make install #安装postfix文件到相应目录并配置Note:make install命令后的所有问题都直接敲回车键即可。
postfix邮件服务器搭建完整版
Postfix邮件服务器安装一.安装前准备1.关闭防火墙vi /etc/selinux/config图1如图1,将其中的SELINUX=enforcing修改为SELINUX=disabled需要注意的是此修改需要重启后才能生效,可以在将所有搭建步骤结束后在进行重启。
2.关闭ip信息包过滤系统iptablesiptables –flush图23. 从自启动中关掉sendmail先停掉sendmail服务:service sendmail stop图3然后从自启动项中移除sendmail:chkconfig sendmail off二、安装软件包,本文档中安装的是linux redhat5.4自带的rpm安装包1. 安装配置DNS服务器DNS服务用来帮助解析域名的,如果不配置DNS服务,那么outlook,foxmail等软件无法解析我们的邮件域名,也就无法连接到提供收发邮件协议的服务器。
(1)查看系统是否已经安装了服务相关的所有安装包rpm –qa|grep bind图4可以看到系统只安装了服务所需的部分包,还需要安装如下图所示的其他包:图5(2)使用rpm –ivh 命令安装其他包:图6(3)配置DNSDNS有两个配置文件:①主配置文件:/var/named/chroot/etc/named.conf 用来设置DNS全局命令的编辑DNS主配置文件(默认是空的)如下:命令:vi /var/named/chroot/etc/named.conf这里以域名为例进行配置,如图:图7编辑完成后先按Esc键退出编辑状态然后输入:wq 点击回车进行保存。
②zone文件,注意此处的zone文件的名称要和住配置文件中的file后写的文件名一致。
可以从模板拷贝一份zone文件进行编辑配置:cp/usr/share/doc/bind-9.3.6/sample/var/named/localdomain.zone/var/named/chroot/var/named/.zone图8编辑.zone文件:图9图9所示为拷贝得到了原始文件,我们需要在其中添加如下图所示配置:图10这里需要注意的是域名后面一定要加点“.”其中是你邮件服务器的域名,后面对应系统的ip地址;是电子邮件地址@后需要写的内容如有邮件用户well,则其电子邮件地址为:***********编辑完成后保存配置。
postfix电子邮件服务器配置
postfix电子邮件服务器配置postfix+dovecot+openwebmail安装设置Postfix实验名称:postfix电子邮件服务器配置实验目的:实现postfix电子邮件服务器的差不多环境配置,在些基础上提高postfix防垃圾邮件能力、防电子邮件包含病毒及爱护postfix 的安全措施〔拒绝服务攻击〕;如何定期地去清理日志及利用工具查看日志,即是:postfix+dovecot+cyrus-sasl+openwebmail/squirrelmail+mailScanner+An tiviru s+spamAssassin(说明:dovecot提供imap、pop3服务(在新版本的redhat linux 中dovecot代替了imap软件包);cyrus-sasl提供认证功能的;openwebmail/squirrelmail差不多上提供webmail 服务,其中squirrelmail是redhat自带的,在第三张光盘;而openwebmail那么是第三方软件;mailScanner看起来是邮件扫描用的,要紧与Antivirus〔防病毒〕结合;spamAssassin是用来处理垃圾邮件的,判定邮件是否为垃圾邮件)实验内容:1.设置服务器的IP地址为10.2.46.129/24,第一DNS为10.2.46.129,关闭防火墙〔便于测试〕2.安装dns服务器所需要的软件包:bind-utils〔第一张光盘〕、bind、bind-libs〔第一张光盘〕、bind-chroot〔第二张光盘〕、caching-nameserver 〔第四张光盘〕3.配置dns服务器的主机记录、邮件记录及测试4.安装postfix〔第三张光盘〕和postfix-pflogsumm(依靠于perl-Date-Cal c→perl-Bit-Vecto r→perl-Carp-Clan)软件包---------所有包都在第二张光盘5. dovecot及cyrus-sasl(Cyrus-sasl的功能确实是实现密码验证机制)一样在系统安装时,都安装上去了6.配置postfix的主配置文件main,cf及其它文件的配置,如:virtual、access〔访问文件〕、master.cf〔操纵文件〕7.安装openwebmail/squirrelmail、mailScanner、Antivirus、spamAssassin及它们相关的配置8.在实验中遇到的问题时,如何解决,记录解决的方法,做好实验的总结实验过程:一、设置服务器的IP地址,关闭iptables及SE linux#service network restart #service iptables restart #ifconfig eth0二、DNS配置#vi named.conf #vi named.zones #vi 123.zone#vi 123.local▼DNS测试:先关闭防火墙、selinux,开启dns服务#chkconfig --level 345 named on三、postfix的差不多配置及启用SMTP认证机制1、设置服务器的主机名为mail.123#vi /etc/sysconfig/network#reboot ------重启后主机名确实是mail.123 ,能够用#hostname 来查看2、由于之前用过sendmail,因此在安装启动postfix时,停止sendmail 服务,最好确实是卸载sendmail。
postfix邮件服务的配置
postfix邮件服务的配置postfix服务的基本配置与Sendmail相比,Postfix最被人称道的地方就在于其配置文件的可读性很高。
Postfix 的主配置文件是/etc/postfix/main.cf。
虽然该配置文件的内容比较多,但其中大部分内容都是注释(“#”号开头的行),真正需要自行定义的参数并不多,而且这些参数就算不去定义,按照默认值也可以运行,只不过它只监听127.0.0.1这个接口的邮件收发。
如果要使它能够支持客户端完成最基本的邮件收发任务,通常还需要进行下面的设置。
1.设置运行Postfix服务的邮件主机的主机名、域名用myhostname参数指定运行Postfix服务的邮件主机的主机名称(FQDN名),用mydomai n参数指定该主机的域名称。
当然这两个参数也可以不进行设置,缺省情况下,myhostname 参数被设置为本地主机名,而且Postfix会自动将myhostname参数值的第一部分删除并将其余部分作为mydomain参数的值。
2.设置由本机寄出的邮件所使用的域名或主机名称myorigin参数实际上是设置由本台邮件主机寄出的每封邮件的邮件头中mail from的地址。
由于Postfix默认使用本地主机名作为myorigin参数的值,因此一封由本地邮件主机寄出的邮件的邮件头中就会含有如“From:‘lbt’<lbt@>”这样的内容,它表明这封邮件是从主机发来的。
不过,建议读者将myorigin参数设置为本地邮件主机的域名(即“myorigin = 或$mydomain”),这样一封由本地邮件主机寄出的邮件的邮件头中就会含有如“From:‘lbt’<lbt@>”这样的内容,显然更具有可读性。
3.设置Postfix服务监听的网络接口默认情况下,inet_interfaces参数的值被设置为localhost,这表明只能在本地邮件主机上寄信。
如果邮件主机上有多个网络接口,而又不想使全部的网络接口都开放Postfix服务,就可以用主机名指定需要开放的网络接口。
postfix邮件服务器配置文档
一、一、 postfix postfix 概述概述postfix 是Wietse Venema 在IBM 的GPL 协议之下开发的MTA(邮件传输代理)软件。
下面一段话摘自postfix 的官方站点(): “postfix 是Wietse Venema 想要为使用最广泛的sendmail 提供替代品的一个尝试。
在Internet 世界中,大部分的电子邮件都是通过sendmail 来投递的,大约有100万用户使用sendmail,每天投递上亿封邮件。
这真实一个让人吃惊的数字。
Postfix 试图更快、更容易管理、更安全,同时还与sendmail 保持足够的兼容性。
”1.1 postfix 的特点1. postfix 是免费的:postfix 想要作用的范围是广大的Internet 用户,试图影响大多数的Internet 上的电子邮件系统,因此它是免费的。
2. 更快:postfix 在性能上大约比sendmail 快三倍。
一部运行postfix 的台式PC 每天可以收发上百万封邮件。
3. 兼容性好:postfix 是sendmail 兼容的,从而使sendmail 用户可以很方便地迁移到postfix。
Postfix 支持/var[/spool]/mail、/etc/aliases、 NIS、和 ~/.forward 文件。
4. 更健壮:postfix 被设计成在重负荷之下仍然可以正常工作。
当系统运行超出了可用的内存或磁盘空间时,postfix 会自动减少运行进程的数目。
当处理的邮件数目增长时,postfix 运行的进程不会跟着增加。
5. 更灵活:postfix 是由超过一打的小程序组成的,每个程序完成特定的功能。
你可以通过配置文件设置每个程序的运行参数。
6. 安全性postfix 具有多层防御结构,可以有效地抵御恶意入侵者。
如大多数的postfix 程序可以运行在较低的权限之下,不可以通过网络访问安全性相关的本地投递程序等等。
centos里postfix+dovecot配置文件实例
centos里postfix+dovecot配置文件实例首先使用yum -y install dovecot* postfix* 来安装邮件服务器,然后...按下面提供代码配置服务器后,剩下的就是创建用户与解析域名啦...【建立用户的邮箱目录】首先建立用户模板下的邮箱目录,以便于建立新用户时,相应用户的邮箱目录自动被建立。
[***************~]#mkdir/etc/skel/Maildir←在用户模板下建立用户邮箱目录[***************~]#chmod700/etc/skel/Maildir←设置用户邮箱目录属性为700然后再为已经存在的用户建立相应邮箱目录。
[***************~]#mkdir/home/webmaster/Maildir←为用户(这里以webmaster用户为例)建立邮箱目录[***************~]#chmod700/home/webmaster/Mail dir ←设置该用户邮箱目录属性为700[***************~]#chownwebmaster./home/webmast er/Maildir ←设置该用户邮箱目录为该用户所有【添加用户示例】①添加用户:useradd -G 用户组 -s /sbin/nologin 用户名②设置用户密码:passwd 用户名③添加用户的sasl认证:saslpasswd2 -u -c 用户名【解析域名示例】主机名解析类型对应值 TTL 优先级操作www A 113.105.117.2 900 - 修改 | 删除mail A 113.105.117.2 900 - 修改 | 删除@ MX . 900 10 修改 | 删除【最后使用foxmail进行邮件收发】1. [代码]postfix配置## 不懂的直接 vim /etc/postfix/main.cf 然后复制下面代码到你的服务器上,修改下相应的IP与域名即可#============================基本配置========================================= ====================queue_directory = /var/spool/postfixcommand_directory = /usr/sbindaemon_directory = /usr/libexec/postfixdata_directory = /var/lib/postfixmail_owner = postfixmyhostname = mydomain = myorigin = $mydomaininet_interfaces = allinet_protocols = allmydestination = $myhostname, localhost.$mydomain, localhost, $mydomainunknown_local_recipient_reject_code = 550#mynetworks = 0.0.0.0/0, 192.168.0.0/24, 127.0.0.0/8, 113.105.117.2mynetworks = 192.168.0.0/24, 127.0.0.0/8relay_domains = $mydestinationalias_maps = hash:/etc/aliasesalias_database = hash:/etc/aliaseshome_mailbox = Maildir/smtpd_banner = $myhostname ESMTP unknow#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)smtpd_sasl_auth_enable = yessmtpd_delay_reject = nosmtpd_sasl_local_domain = $myhostnamesmtpd_sasl_security_options = noanonymous#smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated,reject_unauth_destination,reject_unknown_sender_domain, reject_unknown_hostname,reject_unauth_destination smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destinationdebug_peer_level = 2debugger_command =PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/binddd $daemon_directory/$process_name $process_id & sleep 52. [代码]dovecot配置## 不懂的直接 vim /etc/dovecot/dovecot.conf 然后复制下面代码到你的服务器上,修改下相应的IP与域名即可## Dovecot configuration file# Protocols we want to be serving.protocols = imap pop3log_path = /var/log/dovecot.loginfo_log_path = /var/log/log_timestamp = "%Y-%m-%d %H:%M:%S "# edit conf.d/master.conf.listen = *disable_plaintext_auth = nossl=nomail_location = maildir:~/Maildir#default_mail_env = maildir:~/Maildirbase_dir = /var/run/dovecot/# Greeting message for clients.#login_greeting = Dovecot ready.#login_trusted_networks = 0.0.0.0/0#login_access_sockets =#verbose_proctitle = no#shutdown_clients = yes#doveadm_socket_path = doveadm-serverdict {#quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext #expire = sqlite:/etc/dovecot/dovecot-dict-sql.conf.ext }!include conf.d/*.conf#!include_try /etc/dovecot/local.conf。
CentOS7使用Postfix、Dovecot及MariaDB搭建邮箱服务器
CentOS7使用Postfix、Dovecot及MariaDB搭建邮箱服务器1. 安装软件1.1 更新yum源yum update•11.2 排除默认Postfix源CentOS 7主源中自带的Postfix版本并不支持MariaDB;所以,我们将从CentOS Plus源中进行安装。
在此之前,我们在[base]和[updates]源中过滤掉Postfix,防止版本更新时,被不支持MariaDB 的Postfix覆盖。
文件:/etc/yum.repos.d/CentOS-Base.repo[base]name=CentOS-$releasever - Baseexclude=postfix#released updates[updates]name=CentOS-$releasever - Updatesexclude=postfix•1•2•3•4•5•6•7•81.3 安装必须的软件yum --enablerepo=centosplus install postfixyum install dovecot mariadb-server dovecot-mysql•1•2以上安装了Postfix、Dovecot及MariaDB下面,我们配置MariaDB数据库2. 设置MariaDB2.1 让MariaDB随系统启动systemctl enable mariadb.service/bin/systemctl start mariadb.service•1•22.2 初始化MariaDB执行mysql_secure_installation命令进行初始化。
在初始化过程中,建议我们修改MariaDB的root密码、移除匿名账号、禁止root 远端登录及移除测试数据库,最后会重新加载权限表。
mysql_secure_installation•12.3 打开MariaDB控制台mysql -u root -p•12.4 创建邮箱服务数据库mailCREATE DATABASE mail;USE mail;•1•22.5 创建邮箱管理员账号mail_admin创建后,我们为他分配mail数据库的读写权限。
邮件服务器的配置
邮件服务器的配置实验目的:1、配置Postfix SMTP服务器2、配置Dovecot POP3 服务器实验内容:任务一:修改服务器的IP地址1、在命令行运行setup,选择“Network Configuration”2、选择“eth0(eth0)……”3、取消“Use DHCP”4、配置IP地址和子网掩码为192.168.202.5/255.255.255.05、一层层退出6、ifdown eth07、ifup eth0任务二:Postfix基本配置1、service sendmail stop 停止Sendmail SMTP服务2、chkconfig sendmail off 将Sendmail SMTP服务禁用3、rpm -e sendmail-cf 卸载sendmail-cf软件包rpm -e sendmai l卸载sendmail软件包4、rpm -q postfix 察看Postfix软件包是否安装5、编辑Postfix主配置文件:vi /etc/postfix/main.cf (1)myhostname = 设置主机名(2)mydomain = 设置域名(3)inet_interfaces = all 设置哪些接口可以接收SMTP请求(4)mydestination = $mydomain 设置本SMTP服务器负责的域名(5)mynetworks = 192.168.202.0/24 设置信任的主机范围,该范围内发来的邮件可以被转发到其他的域(6)relay_domains = $mydestination 设置从哪些域发来的邮件可以被转发,或者可以转发到的目的域名6、service postfix start7、chkconfig postfix on任务三:Dovecot基本配置1、rpm -q dovecot2、vi /etc/dovecot.conf(1)protocols = pop3 启用POP3服务(2)protocol pop3 {listen = *:110 设置POP3服务的端口号}3、service dovecot start4、chkconfig dovecot on任务四:添加邮箱1、useradd user12、passwd user13、vi /etc/passwd ,修改user1这一行,使user1不能登录Linux主机,但可以使用POP3和SMTP服务user1:x:500:500::/home/user1:/sbin/nologin任务五:Outlook Express邮件客户端使用简介1、按照向导配置,输入显示名,可输入自己的名字。
建设邮件服务器_postfix(DOC)
CentOS下架设Postfix邮件服务器环境:CentOS 5.3+Postfix+dovecot+mysql+extmail+extman+clamav+spamassassin+mailscanner1、安装软件系统1、安装MySQL#yum install mysql-server mysql-devel pcre-devel#chkconfig -–level 2345 mysqld on#service mysqld start修改mysql的root口令#mysqladmin –u root password ‘123456’#mysql –uroot -pmysql> grant all privileges on extmail.* to extmail@localhost identified by 'extmail'; ####添加用户并授予权限Query OK, 0 rows affected (0.02 sec)mysql> flush privileges; ####通知服务器重新加载授权表Query OK, 0 rows affected (0.00 sec)2、安装courier-authlib下载最新的源码包,/download.php 目前是courier-authlib-0.62.2.tar.bz2#tar jxvf courier-authlib-0.62.2.tar.bz#cd courier-authlib-0.62.2#cp ../courier-authlib-0.62.2.tar.bz2 /usr/src/redhat/SOURCES/#cp courier-authlib.spec /usr/src/redhat/SPECS/#cd /usr/src/redhat/SPECS/#vim courier-authlib.spec#找到BuildRequires: openldap-develBuildRequires: postgresql-devel由于不需要openldap和postgresql的支持,把这两项注释掉。
centos7搭建postfix邮件服务器
centos7搭建postfix邮件服务器在使⽤qq等邮件服务器⼚商提供的邮件服务后,发现他们的邮件发送数量是有限制的,随着公司的业务的需求下,我们需要搭建⼀个邮件服务器,邮件服务器可以帮助我们在⼀些提醒⽅⾯和消息推送⽅⾯起到帮助。
理论性语句:1. 邮件系统的简单介绍: 电⼦邮件系统基于邮件协议来完成电⼦邮件的传输,常见的邮件协议有下⾯这些。
简单邮件传输协议(Simple Mail Transfer Protocol,SMTP):⽤于发送和中转发出的电⼦邮件,占⽤服务器的25/TCP端⼝。
邮局协议版本3(Post Office Protocol 3):⽤于将电⼦邮件存储到本地主机,占⽤服务器的110/TCP端⼝。
Internet消息访问协议版本4(Internet Message Access Protocol 4):⽤于在本地主机上访问邮件,占⽤服务器的143/TCP端⼝。
⼀个最基础的电⼦邮件系统肯定要能提供发件服务和收件服务,为此需要使⽤基于SMTP协议的Postfix服务程序提供发件服务功能,并使⽤基于POP3协议的Dovecot服务程序提供收件服务功能。
这样⼀来,⽤户就可以使⽤Outlook Express或Foxmail等客户端服务程序正常收发邮件了。
实际操作:1. 准备环境,开放需要的端⼝,并卸载sedmail,域名解析配置,修改hostname2. 安装并且配置好postfix发件服务3. 安装并且配置好dovect收件服务4. 测试,检查发送情况。
2. 准备环境: ⾸先我们检查我们的服务器能否telnet通我们要发送的⼀些邮件服务商的端⼝,⽐如qq,163,gmail等,如果不通的话需要更换服务器,因为此服务器商将这些给拦截了,正常的现象是:我们需要开放我们需要的端⼝,端⼝有25(SMTP服务,⽤于发送邮件),110(pop3服务,⽤于接收邮件)143(imap服务,⽤于接收邮件)如果你只想⽤pop3服务,那么我们只需要打开110和25端⼝即可,如果我们使⽤了ssl的话,pop3就需要开放我们的465(发件) 995(收件)端⼝imap就需要开放我们的465(发件) 993(收件)端⼝ 2.1 开放端⼝:firewall-cmd --add-port=25/tcp --permanentfirewall-cmd --add-port=110/tcp --permanentfirewall-cmd --reload 2.2 移除sendmailrpm -e sendmail 或者 yum remove sendmail 2.3 域名解析配置我们需要添加A记录和mx记录。
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 ]。
Postfix邮件服务器_+_Web界面安装全过程
Postfix邮件服务器+ W eb界面安装全过程环境是centos5.4最小化安装,只选择了开发工具与开发库# uname -aLinux 2.6.18-164.el5 #1 SMP Thu Sep 3 03:33:56 EDT 2009 i686 i686 i386 GNU/Linux关闭SELINUX# system-config-securitylevel-tui或# vi /etc/selinux/config把SELINUX=enforcing 注释掉:#SELINUX=enforcing ,然后新加一行为:SELINUX=disabled保存,关闭。
注:只提供参考,实际配置请根据系统环境做修改,本文为手动编写,如有命令或文本编辑错误请谅解,相关配置文件可从以下地址下载;如有问题可发邮件到kswu1983@# wget /postfix/conf.tar.gz垃圾邮件过滤Clamav; amavisd-new; Spamassassin 后续1.安装mysql 5.0.70# groupadd mysql# useradd -g mysql mysql#wget /distfiles/mysql-5.0.70.tar.gz# tar -zxvf mysql-5.0.70.tar.gz# cd mysql-5.0.70# ./configure--prefix=/usr/local/mysql--with-charset=gb2312--enable-thread-safe-client# make# make install# cp support-files/f /etc/f设置自启动# cp support-files/mysql.server /etc/rc.d/init.d/mysqld# chmod 700 /etc/rc.d/init.d/mysqld# chkconfig --add mysqld安装完以后要初始化数据库,要是升级安装的请跳过# cd /usr/local/mysql# /usr/local/mysql/bin/mysql_install_db --user=mysql# chown -R root .# chown -R mysql var# chgrp -R mysql .# /usr/local/mysql/bin/mysqld_safe --user=mysql &好了,至此mysql安装完毕,你可以这样起动你的mysql服务# /etc/rc.d/init.d/mysqld start# ln -s /usr/local/mysql/bin/mysql /sbin/mysql# ln -s /usr/local/mysql/bin/mysqladmin /sbin/mysqladmin为了能让系统找到mysql,请运行如下命令# PA TH=$PATH:/usr/local/mysql/bin# export PATH# echo "/usr/local/mysql/lib/mysql" >;>; /etc/ld.so.conf# ldconfig日志管理开启错误日志(在[safe_mysqld]项下添加)# vi /etc/f[safe_mysqld]err-log=/var/log/mysqld/err.log开启常规日志和更新日志(在[mysqld]项下添加)# vi /etc/f[mysqld]log=/var/log/mysqld/log.loglog-update=/var/log/mysqld/update.log创建日志文件并设置权限# mkdir /var/log/mysqld# touch /var/log/mysqld/err.log /var/log/mysqld/log.log /var/log/mysqld/update.log# chown -R mysql.mysql /var/log/mysqld# service mysqld restart说明:错误日志包含了服务器写入标准错误输出设备的所有消息,同时还包括了mysql服务的启动和关闭事件常规日志用来记录有关mysql服务器运行的常规信息,包括用户的连接、查询及其他各种时间更新日志用来记录修改数据库的查询信息,包括所有涉及数据库修改的SQl语句的查询记录建议调试结束后关闭日志2.安装apache 2.2.12# wget /httpd/httpd-2.0.54.tar.bz2# tar jxvf httpd-2.2.12.tar.bz2# cd httpd-2.2.12# ./configure --prefix=/usr/local/apache# make# make install设置自启动# cp support/apachectl /etc/init.d/httpd修改/etc/init.d/httpd# vi /etc/init.d/httpd(在第两行之后添加如下内容)#!/bin/sh## Startup script for the Apache Web Server# chkconfig: - 85 15# description: Apache is a World Wide Web server. It is used to serve \# HTML files and CGI.# processname: httpd# pidfile: /usr/local/apache/log/httpd.pid# config: /usr/local/apache/conf/httpd.conf# chkconfig --add httpd# chmod 755 /etc/init.d/httpd# chkconfig httpd on创建网页根目录# mkdir /web/www# vi /usr/local/apache/conf/httpd.conf//存放网页的目录,原来为DocumentRoot "",改成:DocumentRoot "/web/www"//这句应该和DocumentRoot 的目录保持一致,原来为<Directory "">;,改成:<Directory "/web/www">;//Indexes:当在目录中找不到DirectoryIndex列表中指定的文件就生成当前目录的文件列表//FollowSymlinks:允许符号链接跟随,访问不在本目录下的文件Options Indexes FollowSymLinks//禁止读取.htaccess配置文件的内容AllowOverride None//指定先执行Allow(允许)访问规则,再执行Deny(拒绝)访问规则Order allow,deny//设置Allow(允许)访问规则,允许所有连接Allow from all</Directory>;启动服务:# /usr/local/apache/bin/apachectl start或# service httpd start3.安装php 5.2.10A先安装支持包(注意安装顺序)建立初始目录:#mkdir /usr/local/modules建立jpeg目录#mkdir /usr/local/modules/jpeg7#mkdir /usr/local/modules/jpeg7/bin#mkdir /usr/local/modules/jpeg7/lib#mkdir /usr/local/modules/jpeg7/include#mkdir /usr/local/modules/jpeg7/man#mkdir /usr/local/modules/jpeg7/man/man1A1、安装zlib#tar xzvf zlib-1.2.3.tar.gz#cd zlib-1.2.3#不要用--prefix自定义安装目录,影响gd的安装#./configure --prefix=/usr/local/modules/zlib#make#make installA2、安装freetype#tar jxvf freetype- 2.3.8.tar.bz2#cd freetype- 2.3.8#./configure --prefix=/usr/local/modules/freetype#make#make installA3、安装libpng#tar xzvf libpng-1.2.10.tar.gz#不要用--prefix自定义安装目录,影响gd的安装#cd libpng-1.2.10#cp scripts/makefile.std makefile#make test#make installA4、安装jpeg#tar xzvf jpegsrc.v7.tar.gz#cd jpeg-7#./configure --prefix=/usr/local/modules/jpeg7 --enable-shared --enable-static #make#make installA5 安装libxml2#tar xzvf libxml2-2.7.4.tar.gz#./configure --prefix=/usr/local/modules/libxml2#cd libxml2-2.7.2#make#make install#cp xml2-config /usr/binA6 安装libmcrypt#tar zxvf libmcrypt-2.5.7.tar.gz#cd libmcrypt-2.5.7#./configure#make#make installA7、安装GD#tar xzvf gd-2.0.35.tar.gz#cd gd-2.0.35#./configure --prefix=/usr/local/modules/gd --with-jpeg=/usr/local/modules/jpeg7 --with-png --with-zlib --with-freetype=/usr/local/modules/freetype#make#make installB、安装PHP# tar -jxvf php-5.2.10.tar.bz2# cd php-5.2.10# ./configure \--prefix=/usr/local/php \--with-apxs2=/usr/local/apache/bin/apxs \--with-mysql=/usr/local/mysql \--with-libxml-dir=/usr/local/modules/libxml2 \--with-gd=/usr/local/modules/gd \--with-jpeg-dir=/usr/local/modules/jpeg7 \--with-zlib \--with-png-dir=/usr/local/lib/ --with-freetype-dir=/usr/local/modules/freetype# make# make install# cp php.ini-dist /usr/local/php/lib/php.ini# vi /usr/local/php/lib/php.ini;default_charset = "iso-8859-1"在这行下面加一行default_charset = "gb2312"# vi /usr/local/apache/conf/httpd.conf找到#AddType application/x-tar .tgz 这行,在下面加两行。
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,进入“账户设置”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CentOS Postfix邮件服务器配置架设笔记时间:2013-07-30 23:02来源:运维网作者:感谢:“匿名”投稿举报点击: 5145次今天我们第一个任务就是postfix安装postfix安装完成以后,进入/etc/postfix目录修改postfix主配置文件 main.cf ,现在我们要修改配置文件了,主要修改七个地方第一和第二个是设置主机名和域名第一个需要修改的参数是myhostname,指向真正的域名mydomain参数指向根域第三个是设置本机寄出去的邮件所使用的域名或主机名myorigin和mydestination都可以指向mydomain如果你的邮件服务器有ip和直接域名ip一样,就可以使用$mydomin,如果不一样最好使用$myhostname设置postfix监听的接口,这里使用监听所有接口Postfix默认只监听本地地址,如果要与外界通信,就需要监听网卡的所有IP可以接受的主机名或者域名的邮件,这里只能写自己的主机名和域名,比如写入,那么给发送邮件,自己就会收到可转发哪些网络的邮件,一般都只转发信任网络的邮件Postfix默认将子网内的机器设置为可信任机器,如果只信任本机,就设置为host:mynetworks_style = host配置哪些地址的邮件能够被Postfix转发,当然是mydomain的才能转发,否则其他人都可以用这台邮件服务器转发垃圾邮件了:relay_domains = $mydomain可转发哪些网络域的邮件,这个是函数mydestination,刚才我们设置过mydestination,也就是只转发本地域的邮件,这个是为了防止垃圾邮件的策略基本设置就这么多,然后保存退出由于我们的服务器现在正在运行sendmail,所以我们要关闭sendmail,这样postfix才能正常运行,切忌要使用kill命令杀掉sendmail的进程,因为系统使用的sendmail来通知系统状态然后启动postfix看看25号端口是不是被master监听起来了开始测试,给51cto用户发了一封邮件。
我们换成51cto用户接受试试成功收到邮件启动dovecot服务service dovecot start然后我们使用win下的工具试试,首先修改dns服务器地址测试能不能解析解析成功测试postfix服务器25、110端口工作正常哈~打开outlook我们用outlook给root发送邮件试试邮件内容没有显示,看来是字符编码的问题了,服务器是没问题的,主要是服务器的编码显示不出来,服务器是utf8的编码,WIN2003是gb2312的编码,但是client和client之间是没问题的,如果想在服务器上看邮件,需要修改下字符集也可以使用我们讲过的mutt工具使用mutt可以正常查看邮件内容哈~下面说说postfix的访问控制和别名配置打开/etc/postfix/access文件这个文件的精华就在这里上面一句是需要加到/etc/postfix/main.cf中去,他已经说明。
下面一句是client端描述方式把smtpd_client_restrictions = check_client_accesshash:/etc/postfix/access这句加到main.cf的最后面我们禁止192.168.8.88使用postfix邮件服务刚才我的outlook是可以收发邮件的,现在我们试试看还可以不修改了access后,需要使用这个命令更新数据库postmap /etc/postfix/access然后重新启动postfix不能发送了我们把刚才的设置取消试试正常发送了root用户也正常接收下面的内容是别名列表,这个别名列表和sendmail的别名列表一样,修改的文件也是一样/etc/aliases,修改完成使用posalias /etc/aliases可以参考sendmail课程的内容,RHCE课程-RH253Linux服务器架设笔记七-Sendmail服务器配置vim /etc/aliasespostalias /etc/aliases测试一下michael帐号正常接收51cto帐号正常接收查看配置信息postconf -n#####################Michael分割线####################Postfix已经基本配置完成,我们需要对邮件的发送进行控制:对于外域到本域的邮件,必须接收,否则,收不到任何来自外部的邮件;对于本域到外域的邮件,只允许从本机发出,否则,其他人通过伪造本域地址就可以向外域发信;对于外域到外域的邮件,直接拒绝,否则我们的邮件服务器就是Open Relay,将被视为垃圾邮件服务器。
先设置发件人的规则:smtpd_sender_restrictions = permit_mynetworks, check_sender_access hash:/etc/postfix/sender_access, permit以上规则先判断是否是本域地址,如果是,允许,然后再从sender_access文件里检查发件人是否存在,拒绝存在的发件人,最后允许其他发件人然后设置收件人规则:smtpd_recipient_restrictions = permit_mynetworks,check_recipient_access hash:/etc/postfix/recipient_access, reject以上规则先判断是否是本域地址,如果是,允许,然后再从recipient_access 文件里检查收件人是否存在,允许存在的收件人,最后拒绝其他收件人。
/etc/postfix/sender_access的内容: REJECT目的是防止其他用户从外部xx@身份发送邮件,但登录到本机再发送则不受影响,因为第一条规则permit_mynetworks允许本机登录用户发送邮件。
/etc/postfix/recipient_access的内容:michael@ OK51cto@ OK因此,外域只能发送给以上两个Email地址,其他任何地址都将被拒绝。
但本机到本机发送不受影响。
最后用postmap生成hash格式的文件:# postmap sender_access# postmap recipient_access发送正常现在我们来禁止发件人51cto@,修改main.cf去掉permit_mynetworks设置为OK,51cto@为REJECT测试一下而其他本域用户可以正常收发~现在我们取消限制又可以发送了~#####################Michael分割线####################参考:4.1 postfix的配置文件结构postfix的配置文件位于/etc/postfix下,安装完postfix以后,我们可以通过ls命令查看postfix的配置文件:[root@mail postfix]# lsinstall.cf main.cf master.cf postfix-script这四个文件就是postfix最基本的配置文件,它们的区别在于:mail.cf:是postfix主要的配置文件。
Install.cf:包含安装过程中安装程序产生的postfix初始化设置。
master.cf:是postfix的master进程的配置文件,该文件中的每一行都是用来配置postfix的组件进程的运行方式。
postfix-script:包装了一些postfix命令,以便我们在linux环境中安全地执行这些postfix命令。
4.2 postfix的基本配置postfix大约有100个配置参数,这些参数都可以通过main.cf 指定。
配置的格式是这样的,用等号连接参数和参数的值。
如:myhostname = 等号的左边是参数的名称,等号的右边是参数的值;当然,我们也可以在参数的前面加上$来引用该参数,如:myorigin = $myhostname虽然postfix有100个左右的参数,但是postfix为大多数的参数都设置了缺省值,所以在让postfix正常为你服务之前,你只需要配置为数不多的几个参数。
下面我们一起来看一看这些基本的postfix参数。
需要注意的是,一旦你更改了main.cf文件的内容,则必须运行 postfix reload命令使其生效。
1. myoriginmyorigin参数指明发件人所在的域名。
如果你的用户的邮件地址为user@,则该参数指定@后面的域名。
缺省地, postfix使用本地主机名作为myorigin,但是建议你最好使用你的域名,因为这样更具有可读性。
比如:安装postfix的主机为 则我们可以这样指定myorigin: myorigin = 当然我们也可以引用其他参数,如:myorigin = $mydomain2. mydestinationmydestination参数指定postfix接收邮件时收件人的域名,换句话说,也就是你的postfix系统要接收什么样的邮件。
比如:你的用户的邮件地址为user@, 也就是你的域为, 则你就需要接收所有收件人为user_name@的邮件。
与myorigin一样,缺省地,postfix使用本地主机名作为 mydestination。
如:mydestination = $mydomainmydestination = 3. notify_classes在postfix系统中,必须指定一个postfix系统管理员的别名指向一个用户,只有这样,在用户遇到问题时才有报告的对象,postfix也才能将系统的问题报告给管理员。
notify_classes参数就是用来指定向postfix管理员报告错误时的信息级别。
共有以下几种级别:bounce:将不可以投递的邮件的拷贝发送给postfix管理员。
出于个人隐私的缘故,该邮件的拷贝不包含信头。
2bounce:将两次不可投递的邮件拷贝发送给postfix管理员。
delay:将邮件的投递延迟信息发送给管理员,仅仅包含信头。
policy:将由于UCE规则限制而被拒绝的用户请求发送给postfix管理员,包含整个SMTP会话的内容。
protocol:将协议的错误信息或用户企图执行不支持的命令的记录发送给postfix管理员。
同样包含整个SMTP会话的内容。
resource:将由于资源错误而不可投递的错误信息发送给postfix管理员,比如:队列文件写错误等等。
software:将由于软件错误而导致不可投递的错误信息发送给postfix管理员。
缺省值为:notify_classes = resource, software4.myhostnamemyhostname 参数指定运行postfix邮件系统的主机的主机名。