私のメールアドレス宛に届くスパムメールの数は、1日あたり約4000通のレベルになってきた。
最近の傾向としては、エラー返信メールが多いことである。
でたらめの名前の後に、@マークと私のドメイン名をつけたスパムメールが大量に送信されているらしく、それのエラーメールがまともに返ってくるのである。
ウィルスによるものがほとんどだと思う。
さて、spamcop.net のメールボックスのおかげで、それらのスパムメールのうちの大半は自動的に振り分けてもらっているが、それでも1日あたり約200通程度は受信してしまう。
条件をきびしくすればもっと減るのだが、そうするとまともなメールまでスパム扱いになってしまうので、かえって使いづらくなる。
私が使っているメールソフト Eudora Pro でもスパムメールを振り分けてくれるけど、誤認識があまりにも多く、あまり役に立っていない。
メールの文面を見てスパムを判定する方式のものは、誤認識を覚悟しなければならない。htmlメールで来るメルマガの類はたいてい、スパムとして認識されることが多い。
スパムメール対策で一番大切なことは、正常なメールがスパムとして認識されてしまった場合に、いかに迅速にリカバリーできるか、ということである。
メールソフト等のように自分のPC上で自動的に振り分けられた場合は復旧が容易だけど、メールボックス着信時に自動的に振り分けられた場合は、気づくのが難しい。
spamcop.net の場合は、スパムとして振り分けたメールは保存されているので、手動復旧が可能である。とりあえずは、日本語のメールだけを抽出して、必要なものだけを復元すればよい。
ところが最近は、それでは済まなくなってきた。日本語のスパムメールが急増したことと、スパムメールの数が増えて spamcop.net サーバーの処理許容量を超えてきたことである。検索を実行しても、タイムアウトになってしまうので、使い物にならない。そうなると、正常なメールがスパムに振り分けられてしまった場合でも、復元することができなくなってしまう。スパムの保存データを削除せずに5日間くらい溜めてしまうと、もう検索も復元も機能しなくなってしまう。
そこで、spamcop.net のサーバーから1日に1回送信されてくる「Held Mail Report」というメールを自動的に分析して、日本語のメールだけをチェックするようにしてみることにした。
Eudora Pro のフィルタ機能を利用して、「Held Mail Report」が届いたら自動的に「Held Mail」というメールボックスに移動するとともに、次のスクリプトを実行させる。
Subject に「iso-2022-jp」の文字が含まれていれば日本語メールだろうと判断して抽出し、一覧を見て目視チェックするのである。大切なメールが含まれていれば、直ちに復元手続きに入ることができる。これでしばらく様子を見てみよう。
————————————————————————–
Set fs = CreateObject(“Scripting.FileSystemObject”)
Set WSHShell = WScript.CreateObject(“Wscript.Shell”)
EudoraFolder = “D:\eudora\”
HeldLogFile1 = “Held Mail.mbx”
HeldLogFile2 = “Held Mail.txt”
Set fso1 = fs.OpenTextFile(EudoraFolder & HeldLogFile1, 1, 0)
Do While not fso1.AtEndOfStream
TempLine1 = TempLine0
TempLine0 = fso1.ReadLine
If Instr(TempLine0, “Subject”) and Instr(TempLine0, “-2022-“) Then
Msg = Msg & TempLine1 & vbCrLf
End If
Loop
Set fso2 = fs.CreateTextFile(EudoraFolder & HeldLogFile2)
fso2.write Msg
fso1.close
fso2.close
Set WSHShell = WScript.CreateObject(“WScript.Shell”)
WSHShell.Run “C:\Windows\notepad.exe ” & EudoraFolder & HeldLogFile2
————————————————————————–