メールの送信者アドレスを再作成して再送信するにはどうすればよいですか?

メールの送信者アドレスを再作成して再送信するにはどうすればよいですか?

cPanel Webホスティングアカウントがあります。このアカウントを使用すると、顧客のためのPHPベースのサポート/問題チケットシステムがあります。お客様やチケットシステムにメールを送信したいのですが、チケットシステムに送信したメールが送信されないようです。~から顧客が作成したサポートチケットを自分のアカウントに表示できるようにします。

だから私がしたいのは、[email protected]Unixコマンドやシェルスクリプトに接続するEメー​​ルアドレスを作成することです。これは、私がからCCに電子メールを送信するときにシェルスクリプトが次のことを実行できることを[email protected]意味[email protected]します[email protected]再送信受信者[email protected] ただし、電子メールの「受信者:」アドレスから電子メールを再送信してください。

標準入力からEメールを受け取り、送信者:アドレスを再作成してから、新しいアドレスにEメールを再送信するシェルスクリプトを作成する方法はありますか? Procmailはそのようなことをすることができますか?それとも直接手動でコーディングする必要がありますか?

答え1

プロメールが付属しています。formailメッセージヘッダを操作するコマンドです。これprocmailex使用例が含まれています.procmailrc。これにより、必要に応じて動作します(テストされていません)。

formail -R To: From: -U From: -I Cc: -I 'To: [email protected]'

答え2

Gilesの答えはほとんど終わりましたが、何らかの理由でパイプを打つ必要がありました。formail 二重。また、ヘッダーを書き換えてから実際に電子メールを送信する必要があります。すべての作業を円滑に行うために、以下を行いました。

  1. 以下を含む新しいファイルを作成しました~/bin/resend-support

    #!/bin/bash
    
    /usr/bin/formail -R To: From: | \
      /usr/bin/formail -U From: -I Cc: -I 'To: [email protected]' | \
      /usr/sbin/sendmail -oi -t
    
  2. ファイルを実行可能にしました(chmod +x ~/bin/resend-support

  3. [email protected]cPanelでパイプで接続した電子メールアドレスフォワーダーを作成しました~/bin/resend-support(「Advanced」の下の「Pipe to Program」を使用)。

[email protected]電子メールを参照として送信すると、パイプを介して電子メールが再送信されます[email protected]~/bin/resend-support[email protected] ~から [email protected]

関連情報