GDPRプライバシー問題の証拠として使用されるいくつかのログがあります。アプリケーションは個人データを処理し、誰がどの目的に使用するのかを記録します。乱用調査が行われない限り、誰もこのログを読んではいけません。
毎日循環するログを安全に暗号化された方法(ローカル)で保存するにはどうすればよいですか? root crontab操作を検討していますが、パスワードはプレーンテキストではありません。すべての提案に感謝します。
$ ls -ltrh
-rw-r----- 1 appuser appuser 83K May 27 23:55 gdpr.log.2018-05-27
-rw-r----- 1 appuser appuser 905K May 28 23:55 gdpr.log.2018-05-28
-rw-r----- 1 appuser appuser 3.0M May 29 23:40 gdpr.log.2018-05-29
-rw-r----- 1 appuser appuser 462K May 30 09:49 gdpr.log
ベストアンサー1
サーバーにない秘密鍵でのみ復号化できるサーバーの公開鍵を使用してファイルを暗号化できます。これにより、サーバーが破損しても暗号化されたログはまだ安全です。
例:
作業ディレクトリを作成し、新しい公開鍵と秘密鍵のペアを作成します。
$ mkdir /tmp/1
$ cd /tmp/1
$ ssh-keygen -f key
$ ls
key
key.pub
公開鍵を次のpem
形式に変換します。
$ openssl rsa -in key -pubout > key.pub.pem
file
次の内容で名前付きテストファイルを作成しますhello
。
$ echo hello > file
公開鍵形式を使用してファイルを暗号化pem
し、次の名前のファイルに出力を書き込みますencrypted
。
$ cat file | openssl rsautl -encrypt -pubin -inkey key.pub.pem > encrypted_file
秘密鍵を使用してファイルを復号化します。
$ cat encrypted_file | openssl rsautl -decrypt -inkey key
hello
明らかに、秘密鍵をサーバーの外部に移動し、暗号化コマンドをcronjobに入れることができます。それは次のとおりです。
for file in /var/log/dir/*;do
cat "${file}" | openssl rsautl -encrypt -pubin -inkey /path/to/key.pub.pem > "${file}.encrypted" && rm "${file}"
done