ファイルを暗号化するにはどうすればよいですか?


10

サーバーからラップトップにいくつかのファイルをダウンロードしたいのですが、この通信をできるだけステルスで安全にしたいのです。それで、私はVPNを使用してこれまで思い付きました、その方法で私のラップトップのインターネットトラフィック全体を私のサーバーを経由してリダイレクトします。さらに、ftpを使用してファイルを送信すると同時に、Wiresharkを観察しようとしました。通信は暗号化されているようですが、ファイル自体も暗号化したいと思います(第2段階のセキュリティなど)。

私のサーバーはRaspbianを実行しているRasPiです。私のラップトップはMacbook Airです。

最初にRas Piのファイルを暗号化し、次にダウンロードします。どうやってやるの?


1
gpg非対称的(暗号化に公開鍵と復号化に秘密鍵を使用)または対称的(暗号化と復号化に同じ鍵/パスワードを使用)でファイルを暗号化できます。dewinter.com
Martin von Wittich

HTTPS、SFTP、FTPSなどのプロトコルを使用しないのはなぜですか?通信が暗号化されている場合、暗号化の2番目の層を追加しても何も得られません。
Gilles「SO-邪悪なことをやめ

回答:


22

openssl鍵ベースの対称暗号を使用して暗号化および復号化するために使用できます。例えば:

openssl enc -in foo.bar \
    -aes-256-cbc \
    -pass stdin > foo.bar.enc

これは、CBCモードで256ビットのAES暗号を使用して暗号化foo.barfoo.bar.encます(-out上記のようにstdoutをリダイレクトする代わりに、スイッチを使用して出力ファイルを指定できます)。他にもさまざまな暗号が利用できます(を参照)。その後、コマンドはパスワードの入力を待ち、それを使用して適切なキーを生成します。でキーを確認したり、パスワードの代わりに独自のキーを使用したりできます(実際には、初期化ベクトルまたはソースが必要なため、それよりも少し複雑です。もう一度参照してください)。パスワードを使用する場合は、同じパスワードを使用して復号化できます。生成されたキーを確認したり保持したりする必要はありません。man enc-p-Kman enc

これを解読するには:

openssl enc -in foo.bar.enc \
    -d -aes-256-cbc \
    -pass stdin > foo.bar

に注意してください-d。もご覧くださいman openssl


また、出力を-out FILENAMEパイピングするのではなく、オプションを使用して結果をファイルに出力できます。
crazyGuy 2017年

4

1回限りのケースでは、zipとパスワードを使用して暗号化できます。鍵ベースの手法ほど強力ではありませんが(適切なパスワードを取得するのは難しいため)、おそらくその場限りの状況です。

コマンドラインは次のようになります。

zip -r -0 -e encrypted_file.zip /path/to/files

-r to recurse directories.
-e to encrypt
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.