当前位置: 首页 > 图文教程 > 服务器 > Web服务器 > 基于Sendmail和Perl的邮件附件过滤系统(4)

Web服务器
测试Web应用程序是否存在跨站点脚本漏洞
让Apache支持ASP.NET
构建SCO UNIX下的Web服务器
评价网站服务器软件的几个方面
FreeBSD下构建安全的Web服务器(1)
Apache服务器二级域名的完美实现
技巧:实现IIS与Apache共用80端口
服务器不能启动的几种解决方案
Windows 2003的Web服务器配置方法
IIS无法启动:发生意外错误0x8ffe2740的原因
架设某大型网站服务器之全部过程网站
FreeBSD下构建安全的Web服务器(2)
令网站提速的7大秘方网站
WindowsIIS6安全保护贴—URL授权全攻略(1)
WindowsIIS6安全保护贴—URL授权全攻略(2)
WindowsIIS6安全保护贴—URL授权全攻略(3)
用IE的Web服务建立ASP.NET应用程序(一)
用IE的Web服务建立ASP.NET应用程序(二)
用IE的Web服务建立ASP.NET应用程序(三)
用IE的Web服务建立ASP.NET应用程序(四)

Web服务器 中的 基于Sendmail和Perl的邮件附件过滤系统(4)


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

我拷贝了suggested-minimum-filter-for-windows-clients到/etc/mail下且改成下面的:

  $Administrator = '[email protected]';
  $DaemonAddress = '[email protected]';
  $Stupidity{"flatten"} = 0;
  $Stupidity{"NoMultipleInlines"} = 0;
  sub filter_begin {
  }
  sub filter {
  my($entity, $fname, $ext, $type) = @_;
  if (re_match_ext($entity, '^\.(exe|com|bat|vbs|scr|shs|dll|vxd|pif|reg|ocx)$')) {
action_discard();
  action_notify_sender("Your message with attachment '$fname' had been deleted by our mail server because of security issue\n");

  return action_quarantine($entity, "The message with attchment '$fname' was deleted by mail server.");
  }
  return action_accept();
  }
  1;

  上面的过滤规则表示删除带上面所列出的扩展名的邮件且通知发送者邮件被删除,接收其它所有的邮件。我也更改/usr/local/bin/mimedefang.pl文件以致不要保留邮件附件在/var/spool/MIMEDefang目录中,该文件有详细的自我解释,请编辑该文件去掉保留一份被删除邮件附件在硬盘上的部分。

  f. 启动系统并测试

  简单地拷贝example目录下的为redhat而写的redhat-sendmail-init-script到 /etc/rc.d/init.d/sendmail并且更改Sendmail启动部分为

  /usr/sbin/sendmail -L sm-mta -bd -q30m
  /usr/sbin/sendmail -L sm-msp-queue -Ac -q30m

  如果你的邮件服务器每天需要处理成千上万的邮件,则考虑拷贝另一个脚本redhat-sendmail-init-script-with-multiplexor到/etc/rc.d/init.d/sendmail,加快处理速度。

  最后用/etc/rc.d/init.d/sendmail start启动sendmail,发送带.exe的附件进行测试。