web-dev-qa-db-ja.com

Mailscannerによってブロックされたメールを解放するためのexim4メッセージIDを編集します

システム管理者チームは、exim4ヘッダーファイル(-Hで終わる)のフィールドMessage-IDを編集し、「<」の後の最初の文字を置き換えます。

例えば:

077IメッセージID:<[email protected]>

->

077IメッセージID:<[email protected]>

メールをリリースするためのスクリプトを書きたいのですが。 Message-IDフィールドの "<"と "@"の間の部分を変更し、ハッシュ値を置き換えて、Message-IDが次のようになるようにしました。

077IメッセージID:<[email protected]>

現在、eximはログに「フォーマットエラー」と表示し、メールは解放されません。この1つのフィールドを除いて変更はありませんでした。

なぜそのようにIDを置き換えることができないのですか?まったく同じ長さである必要がありますか? exim4バージョン4.69-2ubuntu0.3です。

1
F12

行頭の「077I」をご覧ください。 「I」はヘッダーフラグです。変更しないでください。ただし、「077」はそのヘッダーのバイト数です。カウントを変更せずに文字数を変更しているため、Eximはそれをフォーマットエラーと見なします。

から http://exim.org/exim-html-current/doc/html/spec_html/ch55.html

ヘッダーはファイルの数行を占める場合があり、それを読み込む際の労力を節約するために、各ヘッダーの前には数字と識別文字が付いています。数値は、埋め込まれた改行と終了改行を含む、ヘッダー内の文字数です。

新しい文字数を反映するように数を更新すると、問題がないはずです。

0
jj33

あなたのシステム管理者チームがメッセージIDを操作しているとしたら、私は驚きます。

凍結された電子メールを解放するには、-Mオプションを指定してeximを実行するだけです。これは、eximコマンドで示されるように、mailqメッセージIDのリストを取得します。ヘッダーファイル名から-Hを削除して、メッセージIDを取得することもできます。

0
BillThor