eCryptFS: Şifrelenmiş bir ev dizini yedeği nasıl takılır?


10

Dizüstü bilgisayarımın giriş dizinini şifrelemek için eCryptFS kullanıyorum. Yedek komut dosyam şifrelenmiş dosyaları bir sunucuya kopyalar (diğer her şeyle birlikte (home/.ecryptfs).

Yedeklemenin şifrelenmiş dosyalarını nasıl bağlayabilirim? Bunu yapabileceğimi ve her şeyin yerinde olduğunu doğrulamak istiyorum.

Benim saf denemek ile

mount -t ecryptfs /backup/home/.ecryptfs/boldewyn /mnt/test

işe yaramadı, eCryptFS yeni bir bölüm oluşturmak istedi.


Yanıtlar:


15

Ubuntu standart şifreleme şemasını kullandığınızı varsayarsak, ekstra ayar yapmadan.

$ HOME / .ecryptfs "klasörü" aslında sadece bir bağlantıdır.

Dosyalarınızın bulunduğu gerçek yer /home/.ecryptfs/$USER

Orada iki klasör vardır: .Private (dosyalarınız şifrelenmiş olarak) ve .ecryptfs, auto mount, auto-umount, Private.mnt, Private.sig, wrapped-passphrase.

Umarım hedef dosyalar ana bilgisayar yedeklemenize kopyalanır.

Bu sunucuda tamamlanmış parolalarınızın yedeği yoksa kaybolursunuz. Bir yedekleme varsa, yedeklemeyi yaptığınız ana bilgisayarı denetlemediğiniz sürece, şifrelenmiş programınız sarılmış parolanızı web üzerinde depolayarak zayıflar.

Bu komut dosyasını montaj için buldum :

KÖK = / home / .ecryptfs / $ KULLANICI
HEDEF = / mnt / $ KULLANICI

# ROOT, .ecryptfs ve .Private klasörlerinin üstü olmalıdır

sudo mkdir -p $ HEDEF
cd $ KÖK

echo Şifrenizi girin:
PASS = $ (ecryptfs-unwrap-passphrase .ecryptfs / wrapped-passphrase | sed s / Parola: \ //)
SIG1 = $ (head -n1 .ecryptfs / Private.sig)
SIG2 = $ (kuyruk -n1 .ecryptfs / Private.sig)

echo Parolası:
echo $ PASS
echo İmzalar:
echo $ SIG1
echo $ SIG2

echo Boş olmalı:
sudo keyctl açık @u
sudo keyctl list @u

echo Hiçbir şey yazmayın:
echo $ PASS | sudo ecryptfs-add-passphrase --fnek

echo İmzalar olmalı:
sudo keyctl list @u

echo $ TARGET üzerinde $ ROOT bağlanıyor ...
sudo mount -t ecryptfs -o anahtar = parola, ecryptfs_cipher = aes, ecryptfs_key_bytes = 16, ecryptfs_passthrough = hayır, ecryptfs_enable_filename_crypto = evet, ecryptfs_sig = $ SIG1, ecryptfs_enable_filename_crypto = evet, ecryptfs_sig = $ SIG1, ecryptfs_enable_filename_crypto = evet, ecryptfs_sig = $ SIG1, ecryptfs_enable_filename_crypto = evet;

ls $ HEDEF

unset -v PASS

Ah, parolayı çözme hileydi! Teşekkür ederim!
Boldewyn

1
İyi çalışıyor. Her neyse, parolanızı sunucuda tutmak şifreleme güvenliğinizi zayıflatacak ve bazen yok edecektir.
user39559

3
Bağlantı özgün senaryo (için tam iplik ).
kenorb

Teşekkür ederim! Bu tür bir şey yapmak için standart bir komut olmadığına şaşırdım. Yalnızca bağlama noktanızı şifrelemek için EncryptedPrivateDirectory kullanıyorsanız , komut dosyasında $HOME/Privatekullanın ROOT=$HOME. Komut dosyasını olarak değiştirdim, ROOT=${ROOT:-/home/.ecryptfs/$USER}böylece bu değeri ortam üzerinden iletebiliyorum.
nealmcb

Ahh - Görüyorum ki @ kenorb'un yaptığı açıklamada, kendisini bağlamanın normal yolunun parola sormasını istemenin nedenlerinin ayrıntılarını içeren bir hata raporuna bağlantıların Ubuntu'da çalışmadığını görüyorum sudo mount -t ecryptfs .Private /mnt/private. Hmm - 6 yaşındaki böcek ....
nealmcb
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.