当前位置:文档之家› postfix配置

postfix配置

postfix配置
postfix配置

Postfix配置

测试环境:操作系统:centos5

软件:postfix-2.3.3-2.el5.centos.mysql_pgsql.i386.rpm

cyrus-sasl-lib-2.1.22-4

cyrus-sasl-devel-2.1.22-4

cyrus-sasl-sql-2.1.22-4

cyrus-sasl-plain-2.1.22-4

cyrus-sasl-2.1.22-4

cyrus-sasl-md5-2.1.22-4

cyrus-sasl-ntlm-2.1.22-4

cyrus-sasl-gssapi-2.1.22-4

mysql-server-5.0.22-2.1

courier-authlib-mysql-0.57-1hzq

mysql-bench-5.0.22-2.1

libdbi-dbd-mysql-0.8.1a-1.2.2

postfix-2.3.3-2.el5.centos.mysql_pgsql

mysql-devel-5.0.22-2.1

mysql-test-5.0.22-2.1

mysql-5.0.22-2.1

mysql-connector-odbc-3.51.12-2.2

libtool-libs-1.5.6-4.EL4.1.c4.3

courier-authlib-mysql-0.57-1hzq

courier-authlib-devel-0.57-1hzq

courier-authlib-0.57-1hzq

maildrop-2.0.1-1hzq

maildrop-man-2.0.1-1hzq

mod_perl-2.0.2-6.1

perl-5.8.8-10

perl-URI-1.35-3

perl-Convert-ASN1-0.20-1.1

perl-HTML-Parser-3.55-1.fc6

perl-Net-IP-1.25-2.fc6

perl-XML-LibXML-Common-0.13-8.2.2

perl-BSD-Resource-1.28-1.fc6.1

perl-DBD-MySQL-3.0007-1.fc6

perl-LDAP-0.33-3.fc6

perl-SGMLSpm-1.03ii-16.2.1

perl-XML-Grove-0.46alpha-29.1.1

perl-Time-HiRes-1.72-1hzq

perl-Net-Server-0.93-1hzq

perl-BerkeleyDB-0.31-1.el5.rf

perl-Convert-TNEF-0.17-1hzq

perl-Compress-Zlib-1.42-1.fc6

perl-DBI-1.52-1.fc6

perl-XML-NamespaceSupport-1.09-1.2.1 perl-IO-Zlib-1.04-4.2.1

perl-Digest-SHA1-2.11-1.2.1

perl-HTML-Tagset-3.10-2.1.1

perl-libwww-perl-5.805-1.1.1

perl-libxml-perl-0.08-1.2.1

perl-Net-SSLeay-1.30-4.fc6

perl-Socket6-0.19-3.fc6

perl-Archive-Tar-1.30-1.fc6

perl-Bit-Vector-6.4-2.2.2.1

perl-Crypt-SSLeay-0.51-11.el5

perl-DateManip-5.44-1.2.1

perl-DBD-Pg-1.49-1.fc6

perl-IO-String-1.08-1.1.1

perl-Net-DNS-0.59-1.fc6

perl-NKF-2.07-1.1.fc6

perl-String-CRC32-1.4-2.fc6

perl-XML-Dumper-0.81-2.fc6

perl-XML-LibXML-1.58-5

perl-XML-Twig-3.26-1.fc6

perl-IO-Multiplex-1.08-1hzq

perl-Unix-Syslog-0.100-1hzq

perl-MailTools-1.67-1hzq

perl-Convert-BinHex-1.119-1hzq

perl-MIME-Base64-3.05-1hzq

perl-Convert-UUlib-1.051-1hzq

perl-Carp-Clan-5.3-1.2.1

perl-XML-SAX-0.14-5

perl-Digest-HMAC-1.01-15

perl-XML-Parser-2.34-6.1.2.2.1

perl-IO-Socket-SSL-1.01-1.fc6

perl-Archive-Zip-1.16-1.2.1

perl-Date-Calc-5.4-1.2.2.1

perl-IO-Socket-INET6-2.51-2.fc6

perl-Net-Telnet-3.03-5

perl-suidperl-5.8.8-10

perl-XML-Simple-2.14-4.fc6

perl-IO-stringy-2.110-1hzq

perl-TimeDate-1.16-1hzq

perl-MIME-tools-5.418-1hzq

clamav-db-0.91.2-1.el5.rf

clamd-0.91.2-1.el5.rf

clamav-0.91.2-1.el5.rf

以上都是用RPM安装

php-5.2.4.tar.bz2

courier-imap-4.2.1.tar.bz2

postfixadmin.tar.gz

httpd-2.2.4.tar.gz

squirrelmail-1.4.11.tar.gz

slockd-0.083 #源码安装

安装:首先要安装DNS。最好通过webmin安装接着安装postfix

rpm -ivh RPMS/ postfix-2.3.3-2.el5.centos.mysql_pgsql.i386.rpm

把配置文件修改成以下内容:

Vi /etc/postfix/main.cf

broken_sasl_auth_clients = yes

command_directory = /usr/sbin

config_directory = /etc/postfix

content_filter = smtp:[127.0.0.1]:10024 #集成amavisd-new daemon_directory = /usr/libexec/postfix

debug_peer_level = 2

html_directory = no

inet_interfaces = all

mail_name = Postfix - by https://www.doczj.com/doc/e31638553.html,

mail_owner = postfix

mailq_path = /usr/bin/mailq

manpage_directory = /usr/local/man

message_size_limit = 14336000

mydomain = https://www.doczj.com/doc/e31638553.html,

myhostname = https://www.doczj.com/doc/e31638553.html,

mynetworks = 192.168.10.0/24, 127.0.0.0/8

myorigin = $mydomain

newaliases_path = /usr/bin/newaliases

queue_directory = /var/spool/postfix

readme_directory = no

receive_override_options = no_address_mappings #receive_override_options 这里必须增加,禁止地址展开/影射,否则如果遇到别名的时候会引起冗余邮件的产生

sample_directory = /etc/postfix

sendmail_path = /usr/sbin/sendmail

setgid_group = postdrop

smtpd_banner = $myhostname ESMTP $mail_name

smtpd_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, permit, check_policy_service inet:127.0.0.1:10030

#配置postfix以使其打开对slockd的支持

smtpd_sasl_auth_enable = yes

smtpd_sasl_security_options = noanonymous

#SMTP验证

unknown_local_recipient_reject_code = 550

virtual_alias_domains =

virtual_alias_maps = mysql:/etc/postfix/mysql/mysql_virtual_alias_maps.cf

virtual_gid_maps = static:1000 #maildrop创建的组ID

virtual_mailbox_base = /home/domains/

virtual_mailbox_domains =

mysql:/etc/postfix/mysql/mysql_virtual_domains_maps.cf

virtual_mailbox_limit = 20971520

virtual_mailbox_maps = mysql:/etc/postfix/mysql/mysql_virtual_mailbox_maps.cf #支持mysql存储虚拟用户

virtual_transport = maildrop:

virtual_uid_maps = static:1000 #maildrop创建的用户ID

创建支持虚拟用户的mysql配置文件

mkdir /etc/postfix/mysql

1、vi /etc/postfix/mysql/mysql_virtual_alias_maps.cf

user = postfix

password = postfix

hosts = localhost

dbname = postfix

table = alias

select_field = goto

where_field = address

2、vi /etc/postfix/mysql/mysql_virtual_domains_maps.cf user = postfix

password = postfix

hosts = localhost

dbname = postfix

table = domain

select_field = description

where_field = domain

#additional_conditions = and backupmx = '0' and active = '1'

3、vi /etc/postfix/mysql/mysql_virtual_mailbox_maps.cf

user = postfix

password = postfix

hosts = localhost

dbname = postfix

table = mailbox

select_field = maildir

where_field = username

#additional_conditions = and active = '1'

4、vi /etc/postfix/mysql/mysql_virtual_mailbox_limit_maps.cf user = postfix

password = postfix

hosts = localhost

dbname = postfix

table = mailbox

select_field = quota

where_field = username

#additional_conditions = and active = '1'

/etc/init.d/postfix start

安装Courier-Authlib

修改配置文件:改成如下内容

vi /etc/authlib/authmysqlrc

MYSQL_SERVER localhost

MYSQL_USERNAME postfix

MYSQL_PASSWORD postfix

MYSQL_SOCKET /var/lib/mysql/mysql.sock

MYSQL_DATABASE postfix

MYSQL_USER_TABLE mailbox

MYSQL_CRYPT_PWFIELD password

DEFAULT_DOMAIN https://www.doczj.com/doc/e31638553.html,

MYSQL_UID_FIELD '1000'

MYSQL_GID_FIELD '1000'

MYSQL_LOGIN_FIELD username

MYSQL_HOME_FIELD '/home/domains/'

MYSQL_NAME_FIELD name

MYSQL_MAILDIR_FIELD maildir

MYSQL_QUOTA_FIELD concat(quota,'S')

MYSQL_WHERE_CLAUSE active='1'

注意:确认在这个文件中不能用空格键(包括行尾),只能用tab键。

确认只使用单引号,比如:'/home/domains/','UID','GID'(本文为'1000')

localhost不能用单引号

确认你的/etc/hosts文件中有localhost

编译时如果支持Ipv6可能导致错误

MYSQL_GID_FIELD 和MYSQL_UID_FIELD是maildrop的UID和GID,而不是MySQL 的

修改authdaemon socket目录权限

如果该目录权限不正确修改,maildrop及postfix等将无法正确获取用户的信息及密码认证:chmod 755 /var/spool/authdaemon/

启动:/etc/init.d/Courier-Authlib start

Starting Courier authentication services: authdaemond

出现这个证明安装配置成功了

chkconfig --add courier-authlib #开机启动

安装Courier-IMAP

Tar xjvf courier-imap-4.2.1.tar.bz2

cd courier-imap-4.2.1

./configure \

--prefix=/usr/local/imap \

--with-redhat \

--disable-root-check \

--enable-unicode=utf-8,iso-8859-1,gb2312,gbk,gb18030,big5 \

--with-trashquota \

--with-dirsync

make

make install-strip (先install-strip,如果失败,再make install)

make install-configure

# vi /usr/local/imap/etc/imapd

IMAPDSTART=YES

让imap自启动:

返回安装目录

cp courier-imap.sysvinit /etc/rc.d/init.d/courier-imap

chmod 755 /etc/rc.d/init.d/courier-imap

chkconfig --add courier-imap

安装maildrop

注意事项:

1.如果您需要重新编译maildrop软件包,首先必须获得其源码rpm包,其次必须先装好courier-authlib及其devel软件包,否则编译maildrop之后将无法打开authlib支持。

2.maildrop RPM包安装时,会自动创建vuser用户及vgroup用户组,专门用于邮件的存储,vuser:vgroup的uid/gid都是1000,这与一般的邮件文档中提及用postfix用户存邮件不一样。因为postfix用户的uid一般都低于500,而Suexec模块编译时对UID/GID的要求是要大于500,

因此显然用postfix用户不能满足,会导致报错。其次,如果用maildrop作为投递(MDA),以postfix身份投递的话,postfix mta也会报错的。

它会自动创建两个用户:vuser和vgroup ID为1000

配置master.cf

为了使Postfix支持Maildrop,必须修改/etc/postfix/master.cf文件,注释掉原来的maildrop的配置内容,并改为:

配置main.cf

由于maildrop不支持一次接收多个收件人,因此必须在main.cf里增加如下参数:

maildrop_destination_recipient_limit = 1

由于maildrop没有建立及删除maildir的功能,因此由脚本实现

创建文件:vi /usr/sbin/maildirmake.sh

# vi /usr/sbin/maildirmake.sh

#!/bin/bash

set -e

if [ ! -d /home/domains/$1 ]

then

mkdir /home/domains/$1

fi

chown -R vuser:vgroup /home/domains/$1

cd "/home/domains/$1"

/usr/local/imap/bin/maildirmake $2

chown -R 1000:89 /home/domains/$1/$2

chmod -R g=s /home/domains/$1/$2

删除文件:vi /usr/sbin/maildirdel.sh

# vi /usr/sbin/maildirdel.sh

#!/bin/bash

rm -rf /home/domains/$1/$2

给运行权限:

chmod 755 /usr/sbin/maildirmake.sh

chmod 755 /usr/sbin/maildirdel.sh

chmod a+w /etc/sudoers

vi /etc/sudoers

vmail ALL = NOPASSWD: /usr/sbin/maildirmake.sh , /usr/sbin/maildirdel.sh

最后重新启动postfix即可

安装apache,php

Tar xzvf httpd-2.2.4.tar.gz

Tar xjvf php-5.2.4.tar.bz2

Cd httpd-2.2.4

./configure –prefix=/usr/local/apache&&make&&make install

Cd php-5.2.4

./configure –with-apxs2=/usr/local/apache/bin/apxs –with-mysql&&make&&make install

安装postfixadmin.tar.gz

直接解压到htdocs的目录下,然后做如下配置:

# mv postfixadmin-2.1.0 /www/postfixadmin

更改权限,假定运行apache的用户和组为vmail

# chown -R vuser:vgroup /www/postfixadmin

# cd /www/postfixadmin

# chmod 640 *.php *.css

# cd /www/postfixadmin/admin/

# chmod 640 *.php .ht*

# cd /www/postfixadmin/images/

# chmod 640 *.png

# cd /www/postfixadmin/languages/

# chmod 640 *.lang

# cd /www/postfixadmin/templates/

# chmod 640 *.tpl

# cd /www/postfixadmin/users/

# chmod 640 *.php

建立mysql表

建立Postfix Admin所需的MySQL数据库,在建立数据库之前需要修改DATABASE_MYSQL.TXT文件,其中第27行的“Postfix user & password”应当与你安装Postfix时的MySQL用户名和密码相同,为了安全你也应当修改postfixadmin用户的密码。

# cd postfixadmin

# mysql -u root < DATABASE_MYSQL.TXT

由于我架上去之后,一直不能再domain_admins添加记录,所以只能手工添加,不然界面获取不到域名

在数据库里添加一条语句:insert into domain_admins (username,domain,created) values ('admin@https://www.doczj.com/doc/e31638553.html,','https://www.doczj.com/doc/e31638553.html,',NOW());

# cp config.inc.php.sample config.inc.php

# vi config.inc.php

本例中的配置如下:

$CONF['default_language'] = 'cn';

$CONF['database_type'] = 'mysql';

$CONF['database_host'] = 'localhost';

$CONF['database_user'] = 'postfixadmin';

$CONF['database_password'] = 'postfixadmin';

$CONF['database_name'] = 'postfix';

$CONF['encrypt'] = 'md5crypt';

$CONF['domain_path'] = 'YES';

$CONF['domain_in_mailbox'] = 'NO';

$CONF['quota'] = 'YES';

$CONF['quota_multiplier'] = '1024000';

邮箱的存储格式使用domain.ltd/username的形式,所以设置:

$CONF['domain_path'] = 'YES';

$CONF['domain_in_mailbox'] = 'NO';

更改postfixadmin目录及postfixadmin/admin目录下的create-mailbox.php文件

在这两个文件的$tQuota = $CONF['maxquota'];行后加一行(postfixadmin/admin目

录下的大概在200行):

# vi /var/www/postfixadmin/admin/create-mailbox.php

system("/usr/sbin/maildirmake.sh $fDomain $_POST[fUsername]");

# vi /var/www/postfixadmin/create-mailbox.php

system("/usr/sbin/maildirmake.sh $fDomain $_POST[fUsername]");

更改postfixadmin目录及postfixadmin/admin目录下的delete.php文件

在这两个文件的$result = db_query ("SELECT * FROM mailbox WHERE username='$fDelete' AND domain='$fDomain'");行后加几行:

# vi /var/www/postfixadmin/admin/delete.php

$userarray=explode("@",$fDelete);

$user=$userarray[0];

$domain=$userarray[1];

system("/usr/sbin/maildirdel.sh $domain $user");

# vi /var/www/postfixadmin/delete.php

$userarray=explode("@",$fDelete);

$user=$userarray[0];

$domain=$userarray[1];

system("/usr/sbin/maildirdel.sh $domain $user");

进入http://localhost/postfixadmin/admin/index.php

然后在里面添加域名,先添加域名-》在添加管理员

添加成功之后

移走setup。Php

用管理员用户登录http://localhost/postfixadmin添加用户

安装squirrelmail

cd /usr/local/apache/htdocs

tar -xzvf squirrelmail-1.4.11.tar.gz

cd squirrelmail-1.4.11

./configure

# 你将要设置如下选项

#选择“2. Server Settings”=>“A. Update IMAP Settings”=>“8. Server

software”改成“courier”;回到主菜单,选择“4.General Options”=>“1. Data Directoryand”改成“/var/www/data/”;再退回主菜单,选择“8. Plugins”=>添加你希望用到的插件。回到主菜单,选择“10. Languages”,将“ Default Language”改成“zh_TW”,“Default Charset”改成“utf-8”。保存退出。

mv data /usr/local/apache/htdocs/squirrelmail

chown -R vuser:vgroup /usr/local/apache/htdocs/squirrelmail

cd ../

mv squirrelmail-1.4.11 /usr/local/apache/htdocs/squirrelmail

我在这里遇到几个问题:进入网页里,报错imap_server,可能是imap没启动,把所有关于QMAIL的服务都要启动,出现/data和apache不能结合,是因为apache没权限写入/data目录

出现402什么的字眼,可能是selinux把权限限制了,把selinux关了就行了(在/etc/selinux/config,设置为DISABLE就行了),有时输入用户名和密码出现密码错误,可能是没给vpopmail的权限,如果出现无法存取页面的错误,那么注意seisson的权限问题

这里要提一下squirrelmail汉化:

小松鼠邮件系统汉化

小松鼠本身支持很多语言,可下载相应的语言包。可到其主页去下载

下载汉化包,这里给出现在的汉化包:

wget https://www.doczj.com/doc/e31638553.html,/sourceforge/squirrelmail/zh_C N-1.4.4-20050308.tar.gz

8.3 汉化包安装

tar zxvf zh_CN-1.4.4-20050308.tar.gz

解压之后有locale目录,把locale下的文件移到squirrelmail目录下的locale 目录下就行了

支持LDAP:

进入/var/www/html/squirrelmail/config/下(根据自己安装的目录所定)

vi config.php

................................................................................................ .......................................................................................................... ...........................................................................................................

..........................................................................................................

$theme[48]['NAME'] = 'Classic Blue 2';

$theme[49]['PATH'] = SM_PATH . 'themes/powder_blue.php'; $theme[49]['NAME'] = 'Powder Blue';

$theme[50]['PATH'] = SM_PATH . 'themes/techno_blue.php'; $theme[50]['NAME'] = 'Techno Blue';

$theme[51]['PATH'] = SM_PATH . 'themes/turquoise.php'; $theme[51]['NAME'] = 'Turquoise';

$default_use_javascript_addr_book = false;

$ldap_server[0] = array(

'host' => '192.168.10.168',填上LDAP服务器的IP

'base' => 'dc=webmail,dc=print68,dc=com',填上LDAP服务器的域名'name' => '192.168.10.168',填上LDAP服务器的名字

'port' => 389,填上LDAP的端口,这是默认的

'charset' => 'utf-8'语言

);

$abook_global_file = '';

$abook_global_file_writeable = false;

$abook_global_file_listing = true;

$abook_file_line_length = 2048;

或者在/var/www/html/squirrelmail下

执行./configure

#选择“6.Address Books”=>“1.Change LDAP Servers”=>然后自己按提示选择

由于LDAP服务器版本是V3的,但squirrelmail支持的是V2,所以要在

/usr/local/openldap/etc/openldap/sladp.conf 里

# Sample security restrictions

# Require integrity protection (prevent hijacking)

# Require 112-bit (3DES or better) encryption for updates

# Require 63-bit encryption for simple bind

# security ssf=1 update_ssf=112 simple_bind=64

allow bind_v2 在这里加上这行,让他支持V2版本

# Sample access control policy:

# Root DSE: allow anyone to read it

# Subschema (sub)entry DSE: allow anyone to read it

# Other DSEs:

# Allow self write access

# Allow authenticated users read access

# Allow anonymous users to authenticate

因为我们把SquirrelMail 预设编码设为Big5 ,但LDAP 的LDIF 信息皆为UTF-8 编码格式,前提是系统了装了PHP-ICONV的包,如果没装,系统盘里有包

所以我们要进

/var/www/html/squirrelmail/functions/abook_ldap_server.php 里310 // $fullname =

$this->charset_decode($row['cn'][0]); //默认值

311 $fullname = iconv("utf-8","big5",$row['cn'][0]); //将LDAP 查到的utf-8 中文信息转换成big5 在传给SquirrelMail

#vi

/usr/local/www/data/squirrelmail/functions/abook_ldap_server.php 264 //$expr = $this->charset_encode($expr); //预设值

265 $expr = iconv("big5","utf-8",$expr); //输入搜寻条件为big5 但转换成utf-8 在去查LDAP

使用IE 登入SquirrelMail 后收到中文文件名的附件按下Download 后原来的中文档名档案下载后变成乱码档名

#vi /usr/local/www/data/squirrelmail/src/download.php

102 $filename =

charset_encode($filename,$default_charset,false); //加在这行下面

103 $filename = iconv("big5","utf-8",$filename); //加入此行让长的邮件内容自动换行

用SquirrelMail显示长的邮件内容时有一个缺陷,就是不会自动换行。查看源文件后,发现

问题有两点:一是在显示邮件内容时使用的是“pre”标识,二是表格TD都是不定长的。

要让长的邮件内容能自动换行,需要做如下改动:

1、不再使用“pre”标识显示邮件内容:

vi functions/mime.php

-- $body = '

' . implode("\n", $body_ary) . '
';

++ $body = implode("
\n",$body_ary);

2、找到显示“$messagebody”的TD语句,将TD改成定长:

vi src/read_body.php

老版本:

-- " \n"

++ " \n"

新版本:

-- html_tag( 'td', '
'. $messagebody."\n", 'left')

++ html_tag( 'td', '
'. $messagebody."\n", 'left','','width=580')

配置Cyrus-SASL 认证

RHEL4/CentOS4的cyrus-sasl默认没有打开authdaemon的支持,为了使用集中认证的authlib,必须打开这个支持。为此我们必须删除系统的cyrus-sasl软件包,替换成打开了authdaemon支持的sasl软件包。首先要删除系统老的cyrus-sasl:

rpm -e --nodeps cyrus-sasl

然后安装新的支持authdaemon的软件包

rpm -ivh cyrus-sasl-lib-2.1.22-4

cyrus-sasl-devel-2.1.22-4

cyrus-sasl-sql-2.1.22-4

cyrus-sasl-plain-2.1.22-4

cyrus-sasl-2.1.22-4

cyrus-sasl-md5-2.1.22-4

cyrus-sasl-ntlm-2.1.22-4

cyrus-sasl-gssapi-2.1.22-4

Postfix的SMTP认证需要透过Cyrus-SASL,连接到authdaemon获取认证信息,编辑/etc/postfix/main.cf,增加如下内容:

其次用vi编辑/usr/lib/sasl2/smtpd.conf,确保其内容为:

存盘退出后,重新启动postfix:

/etc/init.d/postfix restart

通过postfixadmin创建sc用户

测试SMTP认证

通过以下命令获得sc@https://www.doczj.com/doc/e31638553.html,的用户名及密码的BASE64编码:

然后本机测试,其过程如下(蓝色的文字是我们输入/发送到Postfix的)

最后出现235 Authentication Successful 表明认证成功了。

反病毒/内容过滤配置

反病毒及内容过滤器是依赖Amavisd-new软件包,它是一个多功能的过滤器,能与杀毒软件及内容过滤软件(如SpamAssassin)结合,通用性较强。

安装依赖的Perl包

首先我们要确保系统自带的perl-Net-DNS软件包被删除干净,因为该包的版本较低(0.48),有已知的bug,所以必须替换成本文档提供的新版(0.5x),输入如下命令:

rpm -e --nodeps perl-Net-DNS

Amavisd-new 及SpamAssassin需要依赖大量的第三方perl软件包,下列要安装的部分RPM在上述的操作中已经安装了,为了给出较明确的依赖关系,我们依然将这些包的名称列出,如果安装时提示有安装包已安装过,或者提示冲突,请不必惊慌。请安装如下的RPM软件包:

修改amavisd.conf

修改的主要参数如下,请逐一对照后修改:

注意事项:

上述$mydomain参数与$myhostname参数相同,主要是为了方便之后的病毒/垃圾汇报邮件发给系统管理员时,能投递到本地的别名里,再转交到虚拟域的特定用户。

增加如下参数(默认amavisd.conf没有):

配置SpamAssassin

Amavisd-new 通过Mail::SpamAssassin 模块来调用SA的功能,因此这里配置SA 和常规配置SA软件有些区别,主要集中在修改local.cf文件上。

编辑/etc/mail/spamassassin/local.cf文件

vi /etc/mail/spamassassin/local.cf

将其内容修改为:

增加Chinese_rules.cf支持

Chinese_rules.cf是教育科研网的反垃圾邮件小组对大量垃圾邮件和正常邮件进行分析后得出的一个关键字/分数规则集,用于处理中文(简体)垃圾邮件还是比较有效的。这里我们通过如下命令增加到系统:

wget -N -P /usr/share/spamassassin https://www.doczj.com/doc/e31638553.html,/spam/sa/Chinese_rules.cf

由于该规则每周更新一次,为了达到最好效果,最好在crontab里增加自动更新的内容,输入:

/usr/bin/crontab -e

然后输入如下的内容:

0 0 1 * * wget -N -P /usr/share/spamassassin

https://www.doczj.com/doc/e31638553.html,/spam/sa/Chinese_rules.cf; /etc/init.d/amavisd restart

构建postfix邮件服务器(五)extmail和extman的安装,实现web使用和管理邮件系统

构建postfix邮件服务器(五)extmail和extman的安装,实现web使用和管理邮件系统2010年3月17日稀饭发表评论阅读评论 一、准备 1.在https://www.doczj.com/doc/e31638553.html, 中下载extmail-1. 2.tar.gz 和extman1.1 Extmail 用于从浏览器中登入、使用邮件系统 Extman 用于从浏览器中管邮件系统 2.由于安装extmail要用到以下三个包(到https://www.doczj.com/doc/e31638553.html, 中搜索) 1)Unix-Syslog https://www.doczj.com/doc/e31638553.html,/~mharnisch/Unix-Syslog-1.1/Syslog.pm 2)DBI https://www.doczj.com/doc/e31638553.html,/~timb/DBI-1.609/ 3)DBD-mysql https://www.doczj.com/doc/e31638553.html,/~capttofu/DBD-mysql-4.013/lib/DBD/mysql.pm 3.安装Extman web管理要用到以下四个软件包 1)GD https://www.doczj.com/doc/e31638553.html,/~lds/GD-2.44/ 解决验证码 2)File-Tail https://www.doczj.com/doc/e31638553.html,/~mgrabnar/File-Tail-0.99.3/ 支持图形日志 3)rrdtool-1.2.23-3..el5.i386.rpm 支持图形日志 4)rrdtool-perl-1.2.23-3.el5.i386.rpm 支持图形日志 二、按先后顺序安装以下软件 1.安装Unix-Syslog 1)解压tar zxvf Unix-Syslog-1.1.tar.gz 2)进入目录cd Unix-syslog-1.1 3)预配置perl Makefile.PL 4)编译,安装make ; make install

LAMP+postfix+dovecot+mailman搭建邮件服务器及邮件列表

LAMP+postfix+dovecot+mailman搭建邮件服务器及邮件列表 声明:鉴于此前有其他用户未经本同意上传本人原创作品的情况,特在此声明,此文由libidli (百度ID)编写,任何人本人未经同意不得转载或上传 email:libidli@https://www.doczj.com/doc/e31638553.html,

目录 一、邮件列表所需要的安装包 (3) 二、安装Apache (3) 三、安装MySQL (3) 四、安装PHP (4) 五、安装并配置postfix (5) 六、安装并配置Dovecot (7) 七、支持虚拟用户 (8) 八、安装extmail及extman (10) 九、病毒及垃圾邮件过滤 (13) 十、安装配置mailman (14) 十一、总结 (17) 十二、【参考文档】 (17) 十三、【附录一】cyrus-sasl2的安装 (17) 十四、【附录二】搭建所遇问题及解决方案 (18)

本文系统环境是rhel-server-5.5 一、邮件列表所需要的安装包 简单地说,搭邮件列表的前提是搭一个邮件服务器,能收发邮件才能实现一个邮件列表的功能;收信主要通过IMAP或POP3服务完成;发信主要通过SMTP服务完成;为了更好的实现操作及管理,所以还需要提供web邮件及管理服务;另外为了保证邮件的安全可靠,还需要提供一些发信认证、垃圾邮件扫描、病毒扫描的服务;以上这些服务 安装基础设施LAMP 二、安装Apache #tar –zxf httpd-2.2.21.tar.gz #cd /usr/local/src/httpd-2.2.21 #./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite #make #make install 三、安装MySQL #useradd –M –s /sbin/nologin mysql mysql需要一个独立的账户执行系统有可能自带mysql,建立先将其卸载掉 #tar zxf mysql-5.5.17.tar.gz #cd /usr/local/src/ mysql-5.5.17 #./configure --prefix=/usr/local/mysql #make #make install 以上完成后,配置MySQL #cd mysql-5.5.17 #cp support-files/https://www.doczj.com/doc/e31638553.html,f /etc/https://www.doczj.com/doc/e31638553.html,f 复制主配置文件

安装及配置Postfix邮件服务器

安装、配置Postfix邮件服务器 一、编译、安装 注:只要按照此安装及配置步骤进行,均可成功实现安装、配置postfix。文中“』”表示空格 1、关闭sendmail service』sendmail』stop 2、添加用户组和用户 groupadd』–g』1200』postdrop groupadd』–g』1000』postfix useradd』–M』–u』1000』–g』postfix』–G』postdrop –s/sbin/nologin』postfix 3、编译安装 1)进入源码包所在目录 如:cd』/home/hello/ 2)列补丁(可省略) l(小写的“L”) 3)解压补丁包(可省略) gunzip』postfix----vda-ng.patch.gz 4)解压源码包 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 first make: ***[makefiles] error 解决办法:

到光盘下去把db*-devel文件查找出来或把整个linux包,拷贝到相应位置,然后用如下命令进行安装 rpm』–ivh』-force-debian』–nodeps』/home/hello/db*-devel.rpm 7)安装 make』install 到此postfix安装完成,postfix在/usr/src/postfix-2.6.2中 二、配置postfix 1、postfix必须有DNS支撑 启动dns service named restart 测试DNS是否正确 nslook 退出用exit 2、进入postfix工作目录 cd』/etc/postfix/ 3、得到有效的配置项 postconf』–n >』main.cf- 把主配置文件改名 mv』main.cf』main.cf.bak 为得到的配置文件改名 mv』main.cf-』main.cf 查看一下 vi main.cf 4、添加如下行: Inet_interfaces=127.0.0.1,192.168.1.1 myhostname=https://www.doczj.com/doc/e31638553.html, mydomain=https://www.doczj.com/doc/e31638553.html, myorigin=$mydomain mydestination=$mydomain,$myhostnam home_mailbox=Maildir/ //邮件存放位置 5、启动服务 postfix start 查看是否服务启动

linux环境下postfix+dovecot+webmail安装配置详解

构建postfix邮件服务器(一) 1、编译安装Postfix [root@mail ~]# groupadd -g 1200 postdrop [root@mail ~]# groupadd -g 1000 postfix [root@mail ~]# useradd -M -s /sbin/nologin -u 1000 -g postfix -G postdrop postfix [root@mail ~]# tar zxf postfix-2.4.6.tar.gz [root@mail ~]# gunzip postfix-2.4.6-vda-ng.patch.gz [root@mail ~]# cd postfix-2.4.6 [root@mail postfix-2.4.6]# patch -p1 < ../postfix-2.4.6-vda-ng.patch patching file README_FILES/VDA_README patching file src/global/mail_params.h patching file src/util/file_limit.c patching file src/virtual/mailbox.c patching file src/virtual/maildir.c patching file src/virtual/virtual.c patching file src/virtual/virtual.h [root@mail postfix-2.4.6]# 预配置编译参数 [root@mail postfix-2.4.6]# make makefiles \ 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include/mysql \ -DUSE_SASL_AUTH \ -DUSE_CYRUS_SASL -I/usr/include/sasl' \ 'AUXLIBS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm \ -L/usr/lib/sasl2 -lsasl2 ' && make && make install //编译并进行安装 Postfix的配置文件 (Postfix系统最主要的配置文件包括:/etc/postfix/main.cf 和/etc/postfix/master.cf.前者是postfix服务的配置文件,后者是master程序的配置文件) [root@mail postfix-2.4.6]# postconf –n //-n 将只列出不同于默认值的配置参数command_directory = /usr/sbin config_directory = /etc/postfix daemon_directory = /usr/libexec/postfix debug_peer_level = 2 html_directory = no mail_owner = postfix mailq_path = /usr/bin/mailq manpage_directory = /usr/local/man newaliases_path = /usr/bin/newaliases queue_directory = /var/spool/postfix readme_directory = no sample_directory = /etc/postfix sendmail_path = /usr/sbin/sendmail

linux Postfix邮件服务器安装配置

:Postfix邮件服务器的安装与配置 一、先安装配置Apache、DNS 1.挂载光盘镜像; Mount /dev/cdrom /mnt Cd /mnt/Server 2.安装Apache rpm -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 http httpd-2.2.3-43.el5 启动Apache: Service httpd start 3.安装DNS 用rpm分别安装以下包: bind-9.3.6-4.P1.el5_4.2.i386.rpm bind-chroot-9.3.6-4.P1.el5_4.2.i386.rpm bind-devel-9.3.6-4.P1.el5_4.2.i386.rpm bind-libbind-devel-9.3.6-4.P1.el5_4.2.i386.rpm bind-libs-9.3.6-4.P1.el5_4.2.i386.rpm bind-sdb-9.3.6-4.P1.el5_4.2.i386.rpm bind-utils-9.3.6-4.P1.el5_4.2.i386.rpm DNS有两个配置文件: 主配置文件: /var/named/chroot/etc/named.conf 用来设置DNS全局命令的 DocumentRoot “/var/www/html”:定义网页文件存放的目录 数据库文件:https://www.doczj.com/doc/e31638553.html,.zone 记录哪个域名IP是多少的。 装完后启动DNS Service named start 编辑DNS主配置文件(默认是空的)如下: 命令:vim /var/named/chroot/etc/named.conf

利用UbuntuExtMail30分钟配置好一个功能强大的邮件

利用Ubuntu ExtMail 30分钟配置好一个功能强 大的 利用Ubuntu ExtMail 30分钟配置好一个功能强大的服务器V1.1,以下文档通过19个大的步骤进行配置,配置成功! 由于网上Ubuntu ExtMail的步骤特别多,看了都头痛,在此特别给朋友们制作了一个简洁的安装文档,希望大家喜欢:) 环境: Ubuntu 8.04 TLS postfix 2.5.1 ExtMail 1.2 extman 1.1 1.安装依赖包 apt-get install mysql-client-5.0 mysql-server apache2 postfix postfix-mysql postfix-doc courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl libapache2-mod-fastcgi libfcgi-perl build-essential libtool libnet-server-perl libnet-cidr-perl libberkeleydb-perl arc zoo lzop liblzo1 libstdc++5 libgd-gd2-perl libfile-tail-perl libdigest-sha1-perl libdigest-HMAC-perl libnet-ip-perl libnet-dns-perl libhtml-tagset-perl libhtml-parser-perl libio-stringy-perl libio-multiplex-perl libio-socket-ssl-perl libio-zlib-perl libnet-ssleay-perl libunix-syslog-perl libtimedate-perl libmailtools-perl libconvert-binhex-perl libconvert-tnef-perl libconvert-uulib-perl libcompress-zlib-perl libarchive-zip-perl libarchive-tar-perl perl-suid 你会被询问以下问题: Create directories for web-based administration? <– No General type of mail configuration: <– Internet Site System mail name: <– https://www.doczj.com/doc/e31638553.html, 2.下载extmail-1.2和extman-1.1,并修改配置 下载地址:https://www.doczj.com/doc/e31638553.html,/download tar xvzf extmail-1.2.tar.gz

最全的postfix配置参数

最全的postfix配置参数 2009-03-31 22:00 最完整的信息--postfix包随附的在线说明与配置文件样本,已经在你手上了。因此,本附录只能算是 postfix参数的“速查参考”。 对于每一个参数,我们都会列出其可能值或是设定值的类型,大部分类型的设定值都没有异议,只有一些类型的值需要解释: 逐项列出 参数需要一个或多个可能值。至于某特定参数可能需要哪些值,请参阅在线说明。 查询表 当参数指向查询表时,必须指出表的类型与名称,两者之间以一个冒号隔开,例如: transport_map = hash:/etc/postfix/transport 路径名称 一个文件的完整路径。 格式样板 某些参数的设定值,是由包含宏的字符串所组成,例如: smtpd_banner = $myhostname ESMTP $mail_name 宏(此例中的$myhostname与¥mail_name)是在运行时才展开的对应的参数值。至于哪些参数的样板可接受哪些宏,请参阅在线说明文件。 计时单位 postfix有许多涉及时间的参数,例如: queue_run_delay = 1000s 为了方便描述时间,postfix拟定了一组通用的计时单位简写,如果没注明计时单位,每个时间参数都有自己默认的计时单位。至于特定时间参数的默认计时单位是什么,请参阅在线说明。 单位简写 秒 s 分 m 时 h 日 d 周 w 所有参数都有一个默认值(虽然某些默认值得空白)。只有实际设定值不同于默认值得参数时,才需要被列在main.cf中。本篇附录虽然列出了参数得默认值,但是不保证新版本得postfix一定不会改变默认值。使用postconf命令得-d 选项,可以查出特定参数得默认值。 postconf -d alias_maps postfix参数速查参考 2bounce_noice_recipient 可能值:邮件地址默认值:postmaster “2bounce”是多钟可能得错误类型之一。每一类型错误,都可由你决定是否要发出通知函。2bounce_notice_recipient指定“2bounce”错误类型得通知对

Linux下的Postfix邮件服务器

Linux下的邮件服务器Postfix(一)在Linux下1、挂载光驱建立DNS服务器的MX记录:正向: 反向: 2、创建用户和密码: 看一下邮箱邮件默认保存在这里:

3、安装Postfix包,开启Postfix服务: 4、关闭sendmail服务: 5、编辑/etc/postfix/main.cf文件 找到这几项修改其余不改: myhostname = https://www.doczj.com/doc/e31638553.html, 邮件主机的完整名称 mydomain = https://www.doczj.com/doc/e31638553.html, 邮件主机域名 myorigin = $mydomain(表示所有)设置发件人邮件地址的网域名 inet_interfaces = all (表示监听所有端口)监听端口【把下面的inet_interfaces=localhost 注释掉】 mydestination = $myhostname, $mydomain(表示所有)指定接收邮件时收件人的域名mynetworks = 192.168.1.0/24, 127.0.0.0/8(192.168.1.0/24表示这个网段,127.0.0.0/8表示本 地)设置可以为其转发邮件的网络 relay_domains = $mydestination(表示所有)设置可以为其转发邮件的域名 6、重新启动服务: 7、验证:发信: #telnet https://www.doczj.com/doc/e31638553.html, 25 telnet到邮件服务器的25号端口 helo https://www.doczj.com/doc/e31638553.html, 用helo或ehlo介绍自己(可以不写) mail from:li@https://www.doczj.com/doc/e31638553.html, 发信人地址 rcpt to:gen@https://www.doczj.com/doc/e31638553.html, 收件人地址 data 表示开始输入邮件正文 Hello! 邮件正文 .新起一行以“.”表示正文结束 quit 退出telnet

postfix邮件服务器搭建完整版

Postfix邮件服务器安装 一.安装前准备 1.关闭防火墙 vi /etc/selinux/config 图1 如图1,将其中的SELINUX=enforcing修改为SELINUX=disabled 需要注意的是此修改需要重启后才能生效,可以在将所有搭建步骤结束后在进行重启。 2.关闭ip信息包过滤系统iptables iptables –flush 图2 3. 从自启动中关掉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)配置DNS DNS有两个配置文件: ①主配置文件: /var/named/chroot/etc/named.conf 用来设置DNS全局命令的 编辑DNS主配置文件(默认是空的)如下: 命令:vi /var/named/chroot/etc/named.conf 这里以https://www.doczj.com/doc/e31638553.html,域名为例进行配置,如图: 图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/https://www.doczj.com/doc/e31638553.html,.zone 图8 编辑https://www.doczj.com/doc/e31638553.html,.zone文件:

linux-postfix服务器-电子邮件过滤和防病毒

linux-postfix服务器-电子邮件过滤和防病毒-技术笔记 电子邮件过滤和防病毒 postfix邮件服务系统可以针对SMTP会话中的地址,名称等信息进行检查,并根据main.cf 的配置参数将某一类型的数据发送到指定的策略配置文件,由该文件配置执行的动作,该文件经过hash加密导入数据库。 1. 根据客户端的主机名地/址过滤邮件,可以是单个ip,网段ip,域名,主机名。 vi /etc/postfix/main.cf smtpd_client_restrictions = check_client_access hash:/etc/postfix/access //指定策略文件和hash数据库位置 下面设置策略文件: vi /etc/postfix/access 192.168.4 REJECT //也可以使用DISCARD丢弃 192.168.4.1 OK https://www.doczj.com/doc/e31638553.html, REJECT postmap /etc/postfix/access //该命令用于将策略文件hash一下加入数据库 //客户端地址可能是邮件真实的来源地,而helo信息只是客户端告知的地址 //客户端的信息是 2根据hello信息中的主机名地址过滤 配置main.cf smtpd_helo_required = yes //要求必须使用helo命令 smtpd_helo_restrictions = reject_invalid_hostname //拒绝使用无效主机名的主机 3根据发件人地址过滤邮件 smtp_sender_login_maps = mysql:/etc/postfix/mysql_virtual_sender_maps.cf, //指定mysql类型的查询表文件和别名文件 mysql:/etc/posfix/mysql_virtual_alias_maps.cf smtpd_sender_restrictions = permit_mynetworks, reject_sender_login_mismatch, //发件人与登录用户不匹配时拒绝 reject_non_fqdn_sender, //发件人地址不属于合法FQDN时拒绝 reject_unknown_sender_domain, //发件人地址未知或不存在时拒绝 //以上可以防止通过发信认证的用户伪造mail from 信息 check_sender_access hash:/etc/postfix/sender_access //用于指向含有邮件地址域名地址的查询表,即rcpt to: 提供的信息---实际上是收件人地址 如:vi /etc/postfixsender_access REJECT marketing@ REJECT https://www.doczj.com/doc/e31638553.html, REJECT https://www.doczj.com/doc/e31638553.html, REJECT postmap /etc/postfix/sender_access 4根据收件人地址过滤 smtpd_recipient_restrictions = permit_mynetworks, //允许本邮件系统发出的邮件

postfix邮件服务器配置文档

一、一、 postfix postfix 概述概述 postfix 是Wietse Venema 在IBM 的GPL 协议之下开发的MTA(邮件传输代理)软件。下面一段话摘自postfix 的官方站点(https://www.doczj.com/doc/e31638553.html,): “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 程序可以运行在较低的权限之下,不可以通过网络访问安全性相关的本地投递程序等等。 1.2 postfix 的总体结构 postfix 由十几个具有不同功能的半驻留进程组成,并且在这些进程中并无特定的进程间父子关系。某一个特定的进程可以为其他进程提供特定的服务。 大多数的postfix 进程由一个进程统一进行管理,该进程负责在需要的时候调用其他进程,这个管理进程就是master 进程。该进程也是一个后台程序。 这些postfix 进程是可以配置的,我们可以配置每个进程运行的数目,可重用的次数,生存的时间等等。通过灵活的配置特性可以使整个系统的运行成本大大降低。 1.2.1 postfix 的邮件队列(mail queues) postfix 有四种不同的邮件队列,并且由队列管理进程统一进行管理: 1. maildrop:本地邮件放置在maildrop 中,同时也被拷贝到incoming

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(依赖于

Postfixadmin安装手册

Postfixadmin是一个常用的邮件发送服务器的管理工具,要想用他就该懂的他是如何安装的,请看下文。 1.首先下载postfixadmin.tar.gz. 在/var/www/html下解压缩: tar -zxvf postfixadmin-2.1.0.tgz 然后改名成为postfixadmin---------->因为/var/www/html/postfixadmin以后将用作存放网页的文件夹,所以要尽量节俭. 2.修改脚本: /var/www/html/postfixadmin下解压缩后解压出来的config.inc.php.sample的样本文件. 用cp config.inc.php.sample config.inc.php后,vi config.inc.php,修改该文件... 由'en'改成'zh'---->如果默认是en不想改的话也可以. 由NO改成YES. 由YES改成NO--->以上两个必须要改的.. 3.导入MYSQL数据库: /var/www/html/postfixadmin]#mysql -u root -p < DATABASE_MYSQL.TXT-->这个文件在解压缩后该目录自己存在的. 如果提示:ERROR 1062 (23000) at line 28: Duplicate entry 'localhost-postfix' for key 1

则一般为之前已经导入过文件,MYSQL里面需要清空,如果实在没什么必要数据,不如彻底用YUM REMOVE MYSQL卸掉后重新安装MYSQL来的更快些.如果有数据,则需要在MYSQL中删掉POSTFIX这个用户名即可. 4,之后可以启动HTTPD:service httpd start,然后在地址栏输入http://ip/postfixadmin 就可以正常访问postfix的主页了 图1 点击中间的setup 进行测试,如果出现: Warning: Magic Quotes: OFF (using internal function!) 则需要修改/etc/php.ini文件中的magic_quotes_gpc=off--改成On--->注意那个On,前面的O是大写的!! 如果出现:

Postfix安装与使用

Postfix安装与使用 一、下载:去官网下载最新的postfix安装包:https://www.doczj.com/doc/e31638553.html,/ftp-sites.html 二、编译与安装: 1、如果你的系统上原来有sendmail,先将其停止并将其文件改名。 用以下命令查看系统是否安装了sendmail: rpm -qa |grep sendmail sendmail-doc-8.9.3-15 sendmail-8.9.3-15 sendmail-cf-8.9.3-15 用以下命令强行卸载sendmail: rpm -e sendmail sendmail-cf sendmail-doc --nodeps 用以下命令杀死运行中的sendmail进程: killall sendmail 2、改名 /etc/init.d/sendmail stop chkconfig --level 0123456 sendmail off mv /usr/bin/newaliases /usr/bin/newaliases.orig mv /usr/bin/mailq /usr/bin/mailq.orig mv /usr/sbin/sendmail /usr/sbin/sendmail.orig 3、然后添加两个组:postfix和maildrop和一个用户:postfix groupadd -g 400 postfix groupadd -g 401 postdrop useradd -u 400 -g 400 -c postfix -M -d/no/where -s/no/shell postfix 这里的组和用户的ID是系统中未使用的ID,一般需要手动修改/etc/passwd,比如:postfix:x:12345:12345:postfix:/no/where:/no/shell 4、编译与安装: tar -xvzf postfix-2.0.16.tar.gz cd postfix-2.0.16 make -f Makefile.init makefiles make install 三、配置 ********************** cd /etc/postfix echo 'root: xxx@https://www.doczj.com/doc/e31638553.html,' >> /etc/postfix/aliases postalias /etc/postfix/aliases postmap virtual ********************** 1、给postfix用户做一个系统别名,并将超级用户的邮箱转发到一个普通用户。 2、使用/etc/postfix/aliases别名数据库: cd /etc/postfix echo 'root: ssxx@https://www.doczj.com/doc/e31638553.html,' >> /etc/postfix/aliases 3、生成/etc/postfix/aliases别名数据库: postalias /etc/postfix/aliases 4、生成/etc/postfix/virtual的DB库: postmap virtual 5、用root权限执行/usr/bin/newaliases 6、修改配置文件,修改/etc/postfix/main.cf的配置,主要如下: myhostname = https://www.doczj.com/doc/e31638553.html, mydomain = https://www.doczj.com/doc/e31638553.html, myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, $mydomain, localhost mynetworks_style = subnet mynetworks = 168.100.189.0/28, 127.0.0.0/8 relay_domains = net com cn org edu

Linux1 邮件服务器 Postfix的配置

Linux1 邮件服务器Postfix的配置 Red Hat Enterprise Linux 5.4中的Postfix与Sendmail一样,默认只监听本地127.0.0.1端口的邮件收发。但如果要对整个Internet开放的话,就需要学会对Postfix 进行配置。然而,几乎所有的设置都可以通过/etc/postfix/main.cf文件搞定。对于这个文件的内容需要注意以下几点: ●“#”符号表示注释。 ●所有设置值以类似变量的设置方式来处理。例如myhostname = https://www.doczj.com/doc/e31638553.html,,其中等号两边要有空格,且第一个字符不可以是空白,也 就是要从行首写起。 ●可以使用“$”来扩展使用变量设置,例如myorigin = $myhostname,其等 价于myorigin = https://www.doczj.com/doc/e31638553.html,。 ●如果该变量支持2个以上的数据,则需要使用空格符分隔,不过建议使用 “,”加空格来处理。例如myorigin = $myhostname, $mydomain,表示 myorigin支持2个数据内容。 ●可使用多行来表示同一个设置值,只要在第1行最后有“,”,且第2行开 头为空格,即可将数据延伸到第2行继续书写。 ●若重复设置某一项目,则以最后一次设置为准。 虽然该配置文件的内容比较多,但其中大部分内容都是注释(以“#”号开头的行),真正需要自行定义的参数并不多,而且这些参数就算不去定义,按照默认值也可以正常运行。下面我们一起来看一看这些基本的postfix参数。需要注意的是,一旦更改了main.cf文件的内容,则必须运行postfix reload命令使其生效。1.myhostname 这个参数用来设置Postfix服务器的计算机名称,且这个设置值被后面许多其它参数所引用,所以必须设置正确,应该设置成为完整的计算机名称(如https://www.doczj.com/doc/e31638553.html,),如图9-55中第71行所示。 图9-55 设置Postfix的计算机名称 除了myhostname外,还有一个mydomain参数,该项目默认会取myhostname (https://www.doczj.com/doc/e31638553.html,)中删除第一个“.”之前内容的名称(https://www.doczj.com/doc/e31638553.html,)为设置值,而设置Domain Name。当然,用户也可以自行设置它。myhostname和mydomain两个设置值只是用来引用的,只要用户设置正确就可以了。 2.inet_interfaces

postfix的配置详解

postfix的配置详解(一) (1)postfix的配置文件结构 postfix的配置文件位于/etc/postfix下,安装完postfix以后,我们可以通过ls命令查看postfix的配置文件: [root@mail postfix]# ls install.cf main.cf master.cf postfix-script 这四个文件就是postfix最基本的配置文件,它们的区别在于: mail.cf:是postfix主要的配置文件。 Install.cf:包含安装过程中安装程序产生的postfix初始化设置。 master.cf:是postfix的master进程的配置文件,该文件中的每一行都是用来配置postfix的组件进程的运行方式。 postfix-script:包装了一些postfix命令,以便我们在linux环境中安全地执行这些postfix命令。 (2)postfix的基本配置 postfix大约有100个配置参数,这些参数都可以通过main.cf 指定。配置的格式是这样的,用等号连接参数和参数的值。如: myhostname =https://www.doczj.com/doc/e31638553.html, 等号的左边是参数的名称,等号的右边是参数的值;当然,我们也可以在参数的前面加上$来引用该参数,如: myorigin = $myhostname 虽然postfix有100个左右的参数,但是postfix为大多数的参数都设置了缺省值,所以在让postfix正常为你服务之前,你只需要配置为数不多的几个参数。下面我们一起来看一看这些基本的postfix参数。需要注意的是,一旦你更改了main.cf文件的内容,则必须运行postfix reload命令使其生效。 1.myorigin myorigin参数指明发件人所在的域名。如果你的用户的邮件地址为user@https://www.doczj.com/doc/e31638553.html,,则该参数指定@后面的域名。缺省地,postfix使用本地主机名作为myorigin,但是建议你最好使用你的域名,因为这样更具有可读性。比如:安装postfix的主机为https://www.doczj.com/doc/e31638553.html,则我们可以这样指定myorigin: myorigin = https://www.doczj.com/doc/e31638553.html, 当然我们也可以引用其他参数,如: myorigin = $mydomain 2.mydestination mydestination参数指定postfix接收邮件时收件人的域名,换句话说,也就 是你的postfix系统要接收什么样的邮件。比如:你的用户的邮件地址为user@https://www.doczj.com/doc/e31638553.html,, 也就是你的域为https://www.doczj.com/doc/e31638553.html,, 则你就需要接收所有收件人为user_name@https://www.doczj.com/doc/e31638553.html,的邮件。与myorigin一样,缺省地,postfix使用本地主机名作为mydestination。如: mydestination = $mydomain mydestination = https://www.doczj.com/doc/e31638553.html, 3.notify_classes 在postfix系统中,必须指定一个postfix系统管理员的别名指向一个用户,

postfix邮件测试

RHEL5安装Postfix+CyrusSASL+dovecot 默认方式安装RHEL5,不选中任何类型服务器(如WEB服务器,开发服务器,虚拟服务器等) 一、安装postfix [root@rhel5 ~]# service sendmail stop 关闭sm-client:[确定] 关闭sendmail:[确定] [root@rhel5 ~]# chkconfig sendmail off [root@rhel5 Server]# rpm -ivh postfix-2.3.3-2.i386.rpm [root@rhel5 Server]# vi /etc/postfix/main.cf myhostname = https://www.doczj.com/doc/e31638553.html, #设置运行postfix服务的邮件主机的主机名、域名mydomain =https://www.doczj.com/doc/e31638553.html, myorigin = $mydomain #设置由本机寄出的邮件所使用的域名或主机名称 inet_interfaces = all #设置postfix服务监听的网络接口 mydestination = $myhostname, $mydomain #设置可接收邮件的主机名称或域名 mynetworks = 192.168.0.0/24 #设置可转发哪些网络的邮件 relay_domains = $mydestination #设置可转发哪些网域的邮件 保存文件。 检查postfix的配置: [root@rhel5 Server]# postconf –n [root@rhel5 ~]# chkconfig postfix on 二、添加邮件用户的帐号 [root@mail ~]# groupadd mail [root@mail ~]# useradd –g mail -s /sbin/nologin zpp001 [root@mail ~]# useradd -g mail -s /sbin/nologin zpp002 [root@mail ~]# passwd zpp001 [root@mail ~]# passwd zpp002 將postfix加入到root的组: # usermod -G root postfix 三、SMTP认证的配置安装cyrus-sasl 1、确认cyrus-sasl是否安装了 [root@rhel5 Server]# rpm -qa|grep cyrus cyrus-sasl-plain-2.1.22-4 cyrus-sasl-lib-2.1.22-4 cyrus-sasl-2.1.22-4 2、Cyrus-SASL V2的密码验证机制 [root@rhel5 ~]# saslauthd -v saslauthd 2.1.22 authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap

相关主题
文本预览
相关文档 最新文档