サーバーからラップトップにいくつかのファイルをダウンロードしたいのですが、この通信をできるだけステルスで安全にしたいのです。そこで、VPNを使用して、ラップトップのインターネットトラフィック全体をサーバー経由でリダイレクトしました。さらに、ftpを使用してファイルを送信すると同時に、Wiresharkを観察しようとしました。通信は暗号化されているようですが、ファイル自体も暗号化したいと思います(第2段階のセキュリティなど)。
私のサーバーはRaspbianを実行しているRasPiです。私のラップトップはMacbook Airです。
最初にRas Pi内のファイルを暗号化し、次にダウンロードします。どうやってやるの?
openssl
を使用すると、鍵ベースの対称暗号を使用して暗号化および復号化できます。例えば:
openssl enc -in foo.bar \
-aes-256-cbc \
-pass stdin > foo.bar.enc
これは、256ビットを使用してfoo.bar
をfoo.bar.enc
に暗号化します(上記のようにstdoutをリダイレクトする代わりに、-out
スイッチを使用して出力ファイルを指定できます) [〜#〜] aes [〜#〜][〜#〜] cbc [〜#〜] モードの暗号。他にもさまざまな暗号が利用できます(man enc
を参照)。その後、コマンドはパスワードの入力を待ち、それを使用して適切なキーを生成します。 -p
でキーを確認するか、-K
でパスワードの代わりに独自のキーを使用できます(実際には 初期化ベクトル またはソースが必要であるため、それよりも少し複雑です) 、もう一度man enc
をご覧ください)。パスワードを使用する場合は、同じパスワードを使用して復号化できます。生成されたキーを確認したり保持したりする必要はありません。
これを解読するには:
openssl enc -in foo.bar.enc \
-d -aes-256-cbc \
-pass stdin > foo.bar
-d
に注目してください。 man openssl
もご覧ください。
1回限りのケースでは、Zipとパスワードを使用して暗号化できます。キーベースの手法ほど強力ではありませんが(適切なパスワードを取得するのは難しいため)、おそらくその場限りの状況です。
コマンドラインは次のようになります。
Zip -r -0 -e encrypted_file.Zip /path/to/files
-r to recurse directories.
-e to encrypt