Telnet経由で暗号化メールを送信する

Telnet経由で暗号化メールを送信する

公開 OpenPGP キーを持っており、telnet を使用して暗号化されたメールを送信する必要があります。ただし、このトピックに関連するものは何も見つかりません。

Telnet 経由で電子メールを送信することに問題はありませんが、メールを暗号化する方法がわかりません。

答え1

送信する前にメッセージテキストを暗号化する必要があります。

旧方式: インライン PGP

以前は、PGP で暗号化されたメッセージはメッセージ本文に直接含まれていました。これはシンプルで、PGP サポートが組み込まれていないプログラムも使用できますが、独自の問題があります。

  1. メッセージ本文(ヘッダーなし)を に配置しますbody.txt

  2. gpg --armor --recipient [email protected] --encrypt < body.txt > body.gpg

    (またはgpg -a -r .... -e

  3. SMTPセッションを開き、通常のエンベロープとヘッダーを送信し、の内容をbody.gpgメッセージ本文として含めるだけです。

    例:

    データ
    354 メッセージを送信
    件名: 暗号化されたメッセージ
    コンテンツタイプ: text/plain; 文字セット=utf-8
    
    -----PGP メッセージ開始-----
    バージョン: GnuPG v1.4.11 (GNU/Linux)
    
    owE7bZ3E4C/NHB6SkVmsUJ5YnKdeolCUmpiTU6mQmpdcVFlQkpqio5BUWqJQmV+q
    kJ5aolCSkapQkJ+ZV6LHBQA=
    =JTcg
    -----PGPメッセージ終了-----
    250 キュー
    

新しい方法: PGP/MIME

現在、ほとんどのメール クライアントは次のようなマルチパート MIME メッセージを作成します。

Subject: Encrypted message
Content-Type: multipart/encrypted;
    protocol="application/pgp-encrypted";
    boundary="5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp"

--5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp
Content-Type: application/pgp-encrypted

Version: 1

--5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp
Content-Type: application/octet-stream

-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.11 (GNU/Linux)

owE7bZ3E4C/NHB6SkVmsUJ5YnKdeolCUmpiTU6mQmpdcVFlQkpqio5BUWqJQmV+q
kJ5aolCSkapQkJ+ZV6LHBQA=
=JTcg
-----END PGP MESSAGE-----

--5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp--

これに煩わされることなく、MUA に任せましょう。

答え2

言うことはtelnet2つのことを示唆している

  • Unix サーバー上でシェル セッションを開くために telnet を使用し、などのコマンド ライン ツールを使用していますmail

  • Telnet を使用して SMTP サーバーへの SMTP セッションを開き、SMTP コマンドを手動で入力しています。

私は前者だと仮定します。

最も単純なレベルでは、メッセージの本文を暗号化し、必要に応じて、メール コマンドを呼び出す前に base64 などの適切なエンコードに変換することができます。

echo "Send reinforcements" \
| gpg -e -a -r 12345 \
| mail -s "C company" [email protected] 

更新: SMTP コマンドを手動で SMTP サーバーに入力しているようです。

添付ファイルがどのようにシリアル化されるかを学びます。MIME 添付ファイルの RFC を読んでください。Thunderbird を使用して、小さな添付ファイル ( Ctrl+ uIIRC) を持つ短いメッセージのソースを表示します。バイナリ添付ファイルが 7 ビット ASCII または 8 ビット チャネルを通過できるようにエンコードされるさまざまな方法を調べます。

添付ファイルを外部ファイルとして作成できます。rot13 でもプロセスを適切に説明できます。その後は、MIME などの見出しを入力して、Telnet セッション中に適切なエンコードされた暗号化添付ファイルを貼り付ける方法を考え出すだけです。

答え3

Microsoft Outlook などの多くの電子メール クライアントは暗号化をサポートしています。暗号化と復号化は電子メール クライアントの役割であり、トランスポート メカニズムの役割ではありません。

明確に言えば、Telnetはネットワークプロトコル(http://en.wikipedia.org/wiki/テルネット) は、TCP と同じように、TCP/IP プロトコルです。このプロトコルは暗号化とは関係ありません。ほとんどのメール クライアントは、インターネット経由でメールを送受信するために TCP/IP を使用します。メール クライアントがサーバーにメールを送信するためによく使用されるプロトコルの 1 つは、Simple Mail Transport Protocol (SMTP) です。暗号化されたメールを送信する場合、メッセージをプロトコルに渡す前に暗号化を行う必要があります。

どのメール クライアントを使用していますか? 暗号化をサポートしていますか? サポートしていない場合は、暗号化をサポートする別のメール クライアントを使用してみてください。多くのメール クライアントが暗号化をサポートしています。

これをサポートする多くの無料クライアントの 1 つが Eudora です。これをセットアップする方法については、次の説明を参照してください。http://www.ncsa.illinois.edu/people/hkhurana/mithril/Help-SecureEmail.htm

Mozilla Thunderbird もこれをサポートするオープンソースの無料クライアントです。

関連情報