UJP - 技術情報1

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

postfixで不要なメールキューを削除する

postfixで不要なメールキューを削除する


0.改訂履歴

  • 2009.06.12 新規作成

1.はじめに

 このドキュメントでは,postfixに溜まっている不要なメールキューを削除する手順を説明する. 不要なメールとは,ほとんどの場合SPAM メールで,今回の場合はどこかで当サイトのドメインを騙ってSPAMメールをだした人が居て,そのエラーメールが当サイトに戻ってくるという仕組みであ る.

 特定の差し出し先からのDoS的なSPAMメールであればファイヤーウォール等で遮断する事で対処できるが,多数のメールサーバからのエラーメールなので,遮断できない.よって,不要なものはさっさと消す事で対応する.

2.mailqコマンドを使ってメールキューを確認する

  • CD-ROMの中身を確認する.
mercury:~ ujpadmin$ mailq | head              
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
023A5778BD7 26750 Wed Jun 10 01:56:26 MAILER-DAEMON
(connect to NewYorkers.org[64.99.64.32]: Operation timed out)
soumitra6834toufic@NewYorkers.org


0D4E4770BCE 8330 Mon Jun 8 07:26:30 MAILER-DAEMON
(connect to mail.deleteddomains.com[169.20.37.64]: Operation timed out)
tanjus@deleteddomains.com

0DB3C773D04 5943 Mon Jun 8 23:17:10 MAILER-DAEMON
mercury:~ ujpadmin$
  • だいたい1つのキューが3行くらいで表されている.
  • キューの数が今何個あるか調べる. 今回は,MALER-DAEMONユーザ宛に来ているものをしぼる.
mercury:~ ujpadmin$ mailq | grep MAILER-DAEMON |wc -l
72
mercury:~ ujpadmin$
  • 72通もMAILER-DAEMONにメールが来ている事がわかる.

3.メールの中身が何かを確認する(postcat)

  • メールの中身を確認するには,postcatコマンドにキューIDを与えれば良いので,mailqコマンドでキューIDを取り出してみる.
mercury:~ ujpadmin$ mailq |grep MAILER-DAEMON|head
023A5778BD7 26750 Wed Jun 10 01:56:26 MAILER-DAEMON
0D4E4770BCE 8330 Mon Jun 8 07:26:30 MAILER-DAEMON
0DB3C773D04 5943 Mon Jun 8 23:17:10 MAILER-DAEMON
15DEE772D40 15794 Mon Jun 8 17:36:24 MAILER-DAEMON
19483778AFD 4485 Wed Jun 10 01:34:44 MAILER-DAEMON
19D8B77397A 4448 Mon Jun 8 21:12:01 MAILER-DAEMON
1AE217803A5 8422 Thu Jun 11 23:43:17 MAILER-DAEMON
1B8AD784649 4706 Fri Jun 12 20:28:42 MAILER-DAEMON
20EC0772F7B 4544 Mon Jun 8 18:09:25 MAILER-DAEMON
22BF977F214 4721 Thu Jun 11 18:58:49 MAILER-DAEMON
mercury:~ ujpadmin$
  • この先頭の11桁くらいの文字が,キューIDである.
  • キューIDを指定して,中身を確認してみる.
mercury:~ ujpadmin$ postcat -q 22BF977F214
postcat: fatal: open queue file 22BF977F214: Permission denied
mercury:~ ujpadmin$
  • ルート権限が必要なので,suして再実行してみる.
mercury:/Users/ujpadmin root# postcat -q 22BF977F214
*** ENVELOPE RECORDS deferred/2/22BF977F214 ***
message_size: 4721 162 1 0
message_arrival_time: Thu Jun 11 18:58:49 2009
named_attribute: message_origin=local
named_attribute: trace_flags=0
sender:
original_recipient: trieuj@attcanada.net
recipient: trieuj@attcanada.net
*** MESSAGE CONTENTS deferred/2/22BF977F214 ***
Received: by ujp.jp (Postfix)
id 22BF977F214; Thu, 11 Jun 2009 18:58:49 +0900 (JST)
Date: Thu, 11 Jun 2009 18:58:49 +0900 (JST)
From: MAILER-DAEMON@ujp.jp (Mail Delivery System)
Subject: Undelivered Mail Returned to Sender
To: trieuj@attcanada.net
MIME-Version: 1.0
Content-Type: multipart/report; report-type=delivery-status;
boundary="CDCD677F211.1244714329/ujp.jp"
Message-Id: <20090611095849.22BF977F214@ujp.jp>

This is a MIME-encapsulated message.


〜略〜

Content-Transfer-Encoding: quoted-printable

Replica Rolex models of the latest Baselworld 2009 designs have just be=
en launched on our replica sites. These are the first run of the 2009 mo=
dels with inner Rolex inscriptions and better bands and cases.
Only limited to 1000 pieces worldwide, they are expected to sell out wi=
thin a month. Browse our shop

http://lamproad.com/



  • レプリカのロレックスって書いてあるので,SPAMだと確認できる.

4.postsuperコマンドでキューにある不要なメールを消す

  • -dオプションを付けて,キューIDを指定する事で,キューにあるメールを消す事ができる.
mercury:/Users/ujpadmin root# postsuper -d 22BF977F214
postsuper: 22BF977F214: removed
postsuper: Deleted: 1 message

mercury:/Users/ujpadmin root#
  • キューの一覧を取り出し,指定したメッセージが消えてる事を確認する.
mercury:/Users/ujpadmin root# mailq |grep 22BF977F214       
mercury:/Users/ujpadmin root#
  • エラーメール以外でメールが即時おくれない環境というのはそうそうないので,いっその事全部消す.
  • 全部消したい時はALLオプションを指定する.
mercury:/Users/ujpadmin root# postsuper -d ALL
postsuper: Deleted: 71 messages
mercury:/Users/ujpadmin root# mailq
Mail queue is empty
mercury:/Users/ujpadmin root#
  • ALLが大文字なのは,安全策だそうです.


広告スペース
Google