Proyek saat ini mengharuskan DB dibuang, dienkripsi, dan didorong ke s3. Saya bertanya-tanya apa yang mungkin menjadi "praktik terbaik" untuk tugas seperti itu. Sampai sekarang saya menggunakan metode yang cukup lurus ke depan tetapi ingin memiliki beberapa ide yang lebih baik dalam hal keamanan. Inilah awal skrip saya:
mysqldump -u root --password="lepass" --all-databases --single-transaction > db.backup.sql
tar -c db.backup.sql | openssl des3 -salt --passphrase foopass > db.backup.tarfile
s3put backup/db.backup.tarfile db.backup.tarfile
# Let's pull it down again and untar it for kicks
s3get surgeryflow-backup/db/db.backup.tarfile db.backup.tarfile
cat db.backup.tarfile | openssl des3 -d -salt --passphrase foopass |tar -xvj
Jelas masalahnya adalah bahwa skrip ini semua yang dibutuhkan penyerang untuk membangkitkan neraka.
Setiap pemikiran, kritik dan saran untuk tugas ini akan dihargai.
sumber
Menggunakan kata sandi di dalam skrip adalah ide yang sangat buruk karena ini dapat dilihat
ps aux
dan dibaca oleh setiap pengguna sistem.Saya akan menyarankan Anda untuk melihat mysqldump-secure . Ini adalah skrip shell yang melakukan
openssl
enkripsi berdasarkan enkripsi kunci publik-swasta dan jauh lebih berkinerja daripada gpg.sumber
Anda juga dapat menggunakan RDS yang melakukan semua ini untuk Anda.
sumber