0

署名の添付ファイルを名前で削除するという 1 つのことを行う最小限のサーバーサイド メール フィルタリング システムを実装するにはどうすればよいでしょうか。

一部の同僚のすべての電子メールには、インラインで埋め込まれた「signature.gif」または「signature-nn.gif」が含まれています (電子メール クライアントを再起動するまで nn が増加するように見えます)。(意味のある) 添付ファイルを含むメールを識別する必要があるのは、すべてのメールに (意味のない) 添付ファイルがあるという事実によって妨げられています。

理想的には、新しいファイル名をブラックリストに追加できるようにしたいと考えています。これにより、新しい埋め込まれたグラフィックがメールの受信時に簡単に消去できるようになります。

メールサーバーは Debian Linux の Exim であるため、procmail などのサーバー側のメール フィルターが適しています。クライアント側にはさまざまなメール アプリがあるため、クライアント側のソリューションは適していません。

Exim + Procmail (または同等のもの) を使用してこれを行うにはどうすればよいですか?

4

1 に答える 1

1

サンプル メッセージにアクセスできない場合、これは少し推測になりますが、おそらく次のようになります。

blacklist='signature|logo'  # maintaining in an external file left as an exercise

:0B
* $ ^Content-disposition: attachment; filename="$blacklist(-[0-9][0-9])?\.gif"
idiotbox

主なことは、これらのメッセージのみに一意に一致する正規表現条件が必要なことです。うまくいけば、これはあなたが始めるのに十分なはずです. これは、メッセージの本文にある MIME ヘッダー行を調べようとします。これが存在しない場合、または (記憶から) ここにあるものと少し異なるように見える場合は、正規表現を調整する必要があります。

IIRC の procmailex(5) マニュアル ページには、外部ファイルにデータを保持する方法の例があります。

于 2011-08-06T22:39:20.720 に答える