Telnet経由で電子メールを送信するスクリプトをどのように生成しますか?

Telnet経由で電子メールを送信するスクリプトをどのように生成しますか?

sh電子メールで送信するファイルを作成したいですtelnet。このような:

read -p "from: " from
read -p "from (friendly name): " fromf
read -p "dest: " dest
read -p "dest (friendly name): " destf
read -p "subjct: " subjct
read -p "text: " text
telnet server port (the user put this values on sh file directly)
helo
mail from: $from
rcpt to: $dest
data
from: $fromf <$from>
to: $destf <$dest>
subject: $subjct
$text
.

どうすればいいですか?

答え1

これを行う理由は無視され、これらの考慮事項を既に知っていると仮定します。そうでない場合は、多くのISPがポート25をブロックする可能性があり、一部のSMTPサーバーは動的IPアドレスからの要求をブロックすることに注意してください。

Bashのよく知られていない機能は、出力をサーバーに直接送信して/dev/tcp/hostname/portサーバーに接続することです。したがって、bashを使用すると、次のことができます。

cat > /dev/tcp/server/port <<EOF
HELO
MAIL FROM: $from
[...]
EOF

関連情報