opensslコマンドでデータを暗号化してバックアップする
Mar 17, 2024 13:45 · 943 words · 2 minute read
ちょっとしたデータを共有したい時や会社のオンラインストレージにバックアップしたい時に、opensslコマンドで暗号化すると便利です。 職場で同僚に伝えたら反応が良かったので、ブログにも残しておきます。 自分もブログに書いておくとコマンドサンプルを流用できて便利ですし。
目次
1つのファイルを暗号化したいとき
暗号化
コマンドサンプルです。暗号は必要に応じて強弱を調整してください。
openssl enc -aes-256-cbc -pbkdf2 -in inputfile.txt -out encryptedfile.txt
passwordもコマンドに含めて記録したい場合はこちら。
openssl enc -aes-256-cbc -pbkdf2 -in test.txt -out encryptedfile.txt -pass pass:aaaaa
復号
openssl enc -aes-256-cbc -pbkdf2 -d -in encryptedfile.txt -out decryptedfile.txt
or
openssl enc -aes-256-cbc -pbkdf2 -d -in encryptedfile.txt -out decryptedfile.txt -pass pass:aaaaa
複数のファイルをディレクトリごと暗号化してバックアップしたいとき
例えばLogseqで作った大量のmdファイルを暗号化してバックアップしたいときは、一度zipにしてから暗号化します。 暗号化して会社のオンラインストレージにバックアップしておけば、パソコンが壊れた時もLogseqのノートを復旧できるので安心です。
関連記事:ObsidianからLogseqに乗り換えてみた · kapieciiのブログ
暗号化
コマンドサンプルです。暗号は必要に応じて強弱を調整してください。 「 -x “.DS_Store” “__MACOSX*"」でmacの作成するファイルを除外しています。
zip -r Logseq-bak.zip Logseq-files -x "*.DS_Store" "*__MACOSX*"
openssl enc -aes-256-cbc -pbkdf2 -in Logseq-bak.zip -out Logseq-bak-enc -pass pass:12345
復号
openssl enc -aes-256-cbc -pbkdf2 -d -in Logseq-bak-enc -out Logseq-bak.zip -pass pass:12345
unzip Logseq-bak.zip
どの暗号技術を使えばいいのか迷った時の参照情報
どの暗号を使えばいいか迷った場合は、下記のドキュメントを参照してください。 「この暗号で本当に大丈夫なの?」と聞かれた場合の根拠情報としても使えます。
- CRYPTREC | CRYPTREC暗号リスト(電子政府推奨暗号リスト)
- TLS暗号設定ガイドライン 安全なウェブサイトのために(暗号設定対策編) | 情報セキュリティ | IPA 独立行政法人 情報処理推進機構
関連記事: サーバのTLSセキュリティ設定でIPAの資料がとても親切だった · kapieciiのブログ
最後に
opensslコマンドを使える環境は多いので、これらのコマンドは汎用性が高く便利です。 よければお役立てください。