Saya memerlukan skrip bash untuk sumber file yang dienkripsi, karena file yang bersumber berisi informasi sensitif.
Saya ingin script untuk meminta frasa sandi GPG dan kemudian jalankan, sumber file yang dienkripsi. Saya tidak tahu bagaimana melakukan ini. Harus ada input pengguna untuk frasa sandi, karena saya tidak ingin menyimpan kunci di server dengan file yang dienkripsi.
Melihat ke beberapa metode yang berbeda, saya tidak ingin mendekripsi file, sumber file non-terenkripsi, kemudian hapus setelah. Saya ingin mengurangi kemungkinan meninggalkan file yang tidak dienkripsi, jika ada kesalahan dalam skrip.
Apakah ada cara untuk mendapatkan output GPG dari file untuk sumber dengan cara ini? Mungkin mengumpulkan STDOUT dan menguraikannya (jika GPG bahkan dapat menampilkan konten dengan cara ini).
Juga, jika ada cara lain untuk mengenkripsi file yang dapat digunakan skrip shell, saya tidak menyadarinya, tetapi terbuka untuk kemungkinan lain.
sumber
<(command)
.. <(aescrypt -d -o - file.aes)
Jika Anda telah
gpg-agent
memasang dengan benar, menggunakanpinentry-tty
atau versi lain yang tidak mencemari stdin / stdout, maka Anda harus dapat melakukan sesuatu seperti:Ini menggunakan proses substitusi untuk memberi makan hasilnya
source
seolah-olah itu file. Data file tertentu akan hilang segera setelah shell selesai dengan itu, meskipun Anda masih perlu berhati-hati tentang data sensitif dalam memori shell setelah itu.sumber
Karena jawaban yang paling waras telah diberikan, inilah jawaban yang gila - gunakan sistem file ini:
https://github.com/jseppanen/gpgfs
Dengan cara ini, program Anda tidak akan menyadari bahwa ia sedang berbicara ke sebuah pipa.
sumber