如何删除活动/传入队列中的邮件 – postfix

DoS postfix攻击后,我们有进来和活跃的队列充满邮件:

drwx------. 2 postfix root 1007616 nov 5 17:01 active drwx------. 2 postfix root 4096 nov 5 11:31 bounce drwx------. 2 postfix root 4096 feb 20 2014 corrupt drwx------. 18 postfix root 4096 jun 30 2014 defer drwx------. 18 postfix root 4096 jun 30 2014 deferred drwx------. 2 postfix root 4096 sep 8 10:41 flush drwx------. 2 postfix root 4096 feb 20 2014 hold drwx------. 2 postfix root 1093632 nov 5 17:01 incoming drwx-wx---. 2 postfix postdrop 4096 nov 5 17:01 maildrop drwxr-xr-x. 2 root root 4096 nov 5 16:49 pid drwx------. 2 postfix root 4096 nov 5 16:49 private drwx--x---. 2 postfix postdrop 4096 nov 5 16:49 public drwx------. 2 postfix root 4096 feb 20 2014 saved drwx------. 2 postfix root 4096 feb 20 2014 trace 

主动队列:

 [root@revres]# ls -la /var/spool/postfix/active/ total 992 drwx------. 2 postfix root 1007616 nov 5 17:01 . drwxr-xr-x. 16 root root 4096 nov 5 09:06 .. 

传入队列:

 [root@revres]# ls -la /var/spool/postfix/incoming/ total 1076 drwx------. 2 postfix root 1093632 nov 5 17:01 . drwxr-xr-x. 16 root root 4096 nov 5 09:06 .. 

运行postsuper -d ALL命令不会删除任何内容,也不会提供任何输出。

有没有其他的方法来清空这些盒子?

如果ls -la只显示两个“文件” . 然后它空的

如果你这样说:“空为什么这么大”? 那么答案是:在ext3或ext4文件系统中通常是这样的。 他们为目录中的inode保留空间。 即使所有文件被删除(inode不见了),pipe理inode的保留空间仍然存在。 所以没有什么可担心的。 (即使:只有一兆字节的“大”)

我很确定,在这之后你的postfix会失去一致性。 队列实际上是内存数据结构,所以消息可能在磁盘上,但后缀可能不知道他们。 我build议你停止postfix服务,运行postsuper -s (修复和检查文件结构)并重新启动它。

同样的问题。

sudo ls -ln / var / spool / postfix / incoming显示1472个文件。

 #sudo ls /var/spool/postfix/incoming/ -ln total 1472 -rw------- 1 89 89 8192 Feb 14 15:38 0007B120A83 -rw------- 1 89 89 0 Feb 14 16:38 0030E120A9B -rw------- 1 89 89 4096 Feb 14 18:04 04548120AE7 -rw------- 1 89 89 102400 Feb 14 16:34 069CA120A94 -rw------- 1 89 89 0 Feb 14 17:56 06E53120ADF -rw------- 1 89 89 0 Feb 14 17:10 08ADF120AB6 -rw------- 1 89 89 0 Feb 14 18:36 09A56120B24 -rw------- 1 89 89 0 Feb 14 18:32 0B0D0120B11 -rw------- 1 89 89 36864 Feb 14 16:43 0BC4D120A9A -rw------- 1 89 89 0 Feb 14 19:01 0C150120B3E -rw------- 1 89 89 0 Feb 14 18:30 0CED5120B16 

重新启动MailScanner和后缀服务。 还从我过滤并充当网关的Exchange 2010服务器中收到一堆错误。

  Out: 250 2.1.5 Ok In: DATA Out: 354 End data with <CR><LF>.<CR><LF> Out: 451 4.3.0 Error: queue file write error In: RSET Out: 421 4.3.0 Mail system error 

mailqpostqueue -p显示一个空队列…

 #mailq Mail queue is empty 

在这里输入图像说明

当它碰到墙壁时,你可以看到一分钟。 不幸的是,我正在CentOS 6.8上运行全民教育项目 ,虽然:

 #yum info postfix Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * EFA: dl4.efa-project.org * base: mirror.fusioncloud.co * epel: archive.linux.duke.edu * extras: mirrors.lga7.us.voxel.net * updates: mirrors.evowise.com Installed Packages Name : postfix Arch : x86_64 Epoch : 2 Version : 3.1.3 Release : 1.efa.el6 Size : 14 M Repo : installed From repo : EFA Summary : Postfix Mail Transport Agent URL : http://www.postfix.org License : IBM Description : Postfix is a Mail Transport Agent (MTA), supporting LDAP, SMTP AUTH (SASL), : TLS built for Email Filter Appliance (EFA) 

我找不到为这个操作系统打包的postfix-perl脚本。 我试图去欺骗Fedora软件包,但是我的rpm-foo很脆弱。

… EDITED …

从文件名中获取ID并尝试使用postcat yield来查看它。

 #postcat -vq 0007B120A83 postcat: name_mask: ipv4 postcat: inet_addr_local: configured 2 IPv4 addresses postcat: fatal: open queue file 0007B120A83: Permission denied [ssmith@foster-spam ~]$ sudo postcat -vq 0007B120A83 postcat: name_mask: ipv4 postcat: inet_addr_local: configured 2 IPv4 addresses *** ENVELOPE RECORDS incoming/0007B120A83 *** message_size: 0 0 0 0 0 0 postcat: fatal: invalid size record: 0 0 0 0 0 0 

searchmaillog:

 #sudo grep -i '0007B120A83' /var/log/maillog Feb 14 15:36:36 foster-spam postfix/smtpd[16368]: 0007B120A83: client=foster-mail.foster2007.local[10.0.2.28]:63650 Feb 14 15:36:36 foster-spam postfix/cleanup[16371]: 0007B120A83: hold: header Received: from mail.fosterfuels.com (foster-mail.foster2007.local [10.0.2.28])??(using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits))??(No client certificate requested)??by mx.fosterfuels.com from foster-mail.foster2007.local[10.0.2.28]:63650; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<mail.fosterfuels.com> Feb 14 15:36:36 foster-spam postfix/cleanup[16371]: 0007B120A83: message-id=<6B24BD0263D83043837040657FCAC53414F05903@foster-mail.FOSTER2007.local> Feb 14 19:41:51 foster-spam postfix/postsuper[20067]: queue: 0007B120A83 Feb 14 19:41:51 foster-spam postfix/postsuper[20067]: fatal: invalid directory name: 0007B120A83 

我想在这一点上,我可能会认为所有这些文件都只是垃圾,希望像疯了一样,DOS /病毒大stream行期间没有邮件被吃掉,踢了这个…