当前位置: 首页 > 图文教程 > 服务器 > Mail服务器 > 构建反病毒反垃圾邮件系统(二)

Mail服务器
如何防止垃圾邮件用你的邮件服务器转发
五招轻松应对邮件服务器攻击
建立大容量Web界面的Email系统
Win 2003中为SMTP服务配置本地域
三分钟打造反垃圾邮件服务器
使用QMailadmin实现QMail邮件账户的Web管理
配置你的第一台e-mail服务器(上)
Linux下的邮件系统概述
Sendmail 554 错误的解决
反垃圾邮件技术解析
以Procmail-Gateway过滤寄出信件病毒(1)
以Procmail-Gateway过滤寄出信件病毒(2)
以Procmail-Gateway过滤寄出信件病毒(3)
利用twig架设WebMail系统(1)
利用twig架设WebMail系统(2)
利用twig架设WebMail系统(3)
在Fedora上建立自己的邮件服务器(1)
在Fedora上建立自己的邮件服务器(2)
在Fedora上建立自己的邮件服务器(3)
在Fedora上建立自己的邮件服务器(4)

Mail服务器 中的 构建反病毒反垃圾邮件系统(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 32 ::
收藏到网摘: n/a

3、与MySQL结合的配置及数据表结构

注意:配置mysql相关部分要写127.0.0.1而不要写localhost,如果使用localhost,postfix会尝试socket连接。debian的postfix使用socket连接好像有问题。mysql不能使用skip-networking选项,要使用--bind-address=127.0.0.1让它监听在127.0.0.1。(非常感谢MartinList-Petersen指点)

还有要注意的是如果是自己编译的mysql,建议在启动的时候加上--socket=/var/run/mysqld/mysqld.sock参数,因为pam-mysql又需要使用这个socket。如果你的apache+php是自己编译的话,php又需要重新编译,配置的时候需要加上--with-mysql-sock=/var/run/mysqld/mysqld.sock参数。

是不是比较烦?这不过是个开始。

MySQL的数据表:
  

以下为引用的内容:
  CREATETABLEalias(
  idint(11)unsignedNOTNULLauto_increment,
  aliasvarchar(128)NOTNULLdefault'',
  destinationvarchar(128)NOTNULLdefault'',
  PRIMARYKEY(id)
  )TYPE=MyISAM;
  
  CREATETABLErelocated(
  idint(11)unsignedNOTNULLauto_increment,
  emailvarchar(128)NOTNULLdefault'',
  destinationvarchar(128)NOTNULLdefault'',
  PRIMARYKEY(id)
  )TYPE=MyISAM;
  
  CREATETABLEtransport(
  idint(11)unsignedNOTNULLauto_increment,
  domainvarchar(128)NOTNULLdefault'',
  destinationvarchar(128)NOTNULLdefault'',
  PRIMARYKEY(id),
  UNIQUEKEYdomain(domain)
  )TYPE=MyISAM;
  
  CREATETABLEusers(
  idint(11)unsignedNOTNULLauto_increment,
  emailvarchar(128)NOTNULLdefault'',
  clearvarchar(128)NOTNULLdefault'',
  nametinytextNOTNULL,
  uidint(11)unsignedNOTNULLdefault'1011',
  gidint(11)unsignedNOTNULLdefault'1011',
  homedirtinytextNOTNULL,
  maildirtinytextNOTNULL,
  quotatinytextNOTNULL,
  postfixenum('Y','N')NOTNULLdefault'Y',
  PRIMARYKEY(id),
  UNIQUEKEYemail(email)
  )TYPE=MyISAM;
  
  CREATETABLEvirtual(
  idint(11)unsignedNOTNULLauto_increment,
  emailvarchar(128)NOTNULLdefault'',
  destinationvarchar(128)NOTNULLdefault'',
  PRIMARYKEY(id)
  )TYPE=MyISAM;
  
  /etc/postfix目录下各mysql配置文件:
  
  mysql-aliases.cf
  
  user=mysql-postfix-user
  password=mysql-postfix-pass
  dbname=postfix
  table=alias
  select_field=destination
  where_field=alias
  hosts=127.0.0.1
  
  mysql-relocated.cf
  
  user=mysql-postfix-user
  password=mysql-postfix-pass
  dbname=postfix
  table=relocated
  select_field=destination
  where_field=email
  hosts=127.0.0.1
  
  mysql-transport.cf
  
  user=mysql-postfix-user
  password=mysql-postfix-pass
  dbname=postfix
  table=transport
  select_field=destination
  where_field=domain
  hosts=127.0.0.1