教你如何设置Postfixadmin的自动回复
创始人
2024-07-20 12:20:32
0

Postfixadmin 是一个基于Web的 Postfix 邮件发送服务器的管理工具,邮箱的自动回复功能大家都用过,那如何在Postfix上实现呢,那就请Postfixadmin管理工具帮忙吧,请看下文。

  1. 创建一个本地帐户

  创建一个"vacation"的本地帐户,并且"vacation"不容许登陆。不要使用"nobody",也不能使用"root"和"postfix"等。

  #/etc/passwd

  vacation:*:65501:65501::0:0:Virtual Vacation:/nonexistent:/sbin/nologin

  #/etc/group

  vacation:*:65501:

  2. 为自动回复创建数据表

  USE postfix;

  #

  # Table structure for table vacation

  #

  CREATE TABLE vacation (

  email varchar(255) NOT NULL default '',

  subject varchar(255) NOT NULL default '',

  body text NOT NULL,

  cache text NOT NULL,

  domain varchar(255) NOT NULL default '',

  created datetime NOT NULL default '0000-00-00 00:00:00',

  active tinyint(4) NOT NULL default '1',

  PRIMARY KEY (email),

  KEY email (email)

  ) TYPE=MyISAM COMMENT='Postfix Admin - Virtual Vacation';

  3. 创建一个目录

  创建一个目录,例如/var/spool/vacation,它只容许"vacation"用户访问

  vacation.pl脚本及其日志文件等将放在这里。

  4. 复制文件

  将$postfixadmin-2.1.0/VIRTUAL_VACATION/vacation.pl文件拷贝到刚才创建的文

  件夹中

  $ cp vacation.pl ;/vacation.pl

  $ chown -R vacation:vacation ;

  然后你将会看到:

  ls -al ;/

  -rwx------ 1 vacation vacation 3356 Dec 21 00:00 vacation.pl*

#p#

  5. 修改文件

  为了让 vacation.pl 能够执行所有邮件都回复这一特性,下面修改其内容:

  将if (do_cache ($email, $orig_from)) { return; } 这句注销掉即可。

  6. 开始对系统进行设置

  在master.cf中定义transport 的类型:

  #/etc/postfix/master.cf:

  vacation unix - n n - - pipe

  flags=Rq user=vacation argv=/var/spool/vacation/vacation.pl -f ${sender} -- ${recipient}#

  在mail.cf 中设定一个 transport maps file

  下面举A/B两种方法

  A.哈希数据库

  #/etc/postfix/main.cf:

  transport_maps = hash:/etc/postfix/transport

  然后添加在/etc/postfix/transport 文件中添加一条新的解析记录

  #/etc/postfix/transport

  autoreply.yourdomain.com vacation

  注意:"autoreply.yourdomain.com"此处与$postfixadmin-2.1.0/config.inc.php文件中的$CONF['vacation_domain']的参数相同

  "vacation"要与master.cf 中的 "vacation" 相同

  执行 "postmap /etc/postfix/transport" 去创建一个哈希数据库

  执行 "postfix reload" 完成配置

  B.mysql数据库

  #/etc/postfix/main.cf:

  transport_maps = mysql:/etc/postfix/mysql/mysql_virtual_transport_maps.cf

  其中mysql_virtual_transport_maps.cf的内容如下

  user = postfix

  password = postfix

  hosts = 127.0.0.1

  dbname = postfix

  table = domain

  select_field = transport

  where_field = domain

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

  然后添加使用postfix admin 创建新域"autoreply.com",在Transport段中添加"vacation"

  执行 "postmap /etc/postfix/transport" 去创建一个哈希数据库

  执行 "postfix reload" 完成配置

看完全文大家有什么感想,有什么不懂的就给我留言,其实挺简单的!

【编辑推荐】

  1. PostfixAdmin 配置过程讲解
  2. 如何安装PostfixAdmin
  3. Postfixadmin 2.1.0安装笔记
  4. Postfixadmin安装手册
  5. 为中小企业用户配置Postfix
  6. 图文并茂 Postfix后台如何工作
  7. Postfix对邮件的处理流程

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
规避非法攻击 用好路由器远程管... 单位在市区不同位置设立了科技服务点,每一个服务点的员工都通过宽带路由器进行共享上网,和单位网络保持联...
范例解读VB.NET获取环境变... VB.NET编程语言的使用范围非常广泛,可以帮助开发人员处理各种程序中的需求,而且还能对移动设备进行...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...